Prometheus: Automatyzacja z CLI
Uruchom Prometheus, pobierz jego dane dostępowe i zmień konfigurację programowo za pomocą Stackhero CLI
👋 Witamy w dokumentacji Stackhero!
Stackhero oferuje w pełni zarządzaną platformę Prometheus cloud, zaprojektowaną z myślą o niezawodności i prostocie:
Alert Managerjest wbudowany, dzięki czemu można przekierowywać alerty bezpośrednio doSlack,Mattermost,PagerDutyoraz innych popularnych narzędzi.- Dedykowany serwer e-mail umożliwia wysyłanie nieograniczonej liczby powiadomień e-mail bez dodatkowej konfiguracji.
Blackboxjest dostępny, co pozwala na sondowanie protokołów takich jakHTTP,ICMP,TCPi innych, zapewniając kompleksowy monitoring.- Szybka konfiguracja instancji dzięki edytorowi plików konfiguracyjnych online – nie trzeba ręcznie zarządzać plikami YAML.
- Aktualizacje można zastosować jednym kliknięciem. Stackhero zajmuje się całym procesem aktualizacji, minimalizując przestoje i konieczność ręcznej interwencji.
- Wysoka wydajność i silne zabezpieczenia są zapewnione dzięki prywatnej, dedykowanej infrastrukturze.
Uruchom usługę w około 5 minut. Stackhero zajmuje się konfiguracją, abyś mógł skupić się na monitorowaniu, a nie na utrzymaniu. Wypróbuj Prometheus cloud hosting na Stackhero i usprawnij swoje procesy monitorowania oraz powiadamiania.
Ten przewodnik pokazuje, jak utworzyć usługę Prometheus, odczytać jej dane dostępowe oraz zaktualizować konfigurację całkowicie z poziomu wiersza poleceń, bez konieczności klikania w panelu zarządzania. To idealne rozwiązanie dla skryptów, pipeline’ów CI oraz agentów AI.
Do wszystkich zadań będziemy używać Stackhero CLI. Jeśli jeszcze nie masz zainstalowanego narzędzia, możesz to zrobić poleceniem:
curl -fsSL https://www.stackhero.io/install.sh | sh
1. Uwierzytelnianie
Najprostszym sposobem rozpoczęcia pracy jest zalogowanie się przez przeglądarkę. Po uruchomieniu polecenia logowania CLI otworzy stronę internetową, na której możesz zatwierdzić dostęp. Żadne hasła ani kody 2FA nie są wprowadzane bezpośrednio w CLI.
stackhero login
Po zalogowaniu Twoje dane dostępowe zostaną zapisane lokalnie i będą automatycznie wykorzystywane przez kolejne polecenia CLI.
W środowiskach w pełni zautomatyzowanych, takich jak skrypty czy pipeline’y CI, możesz preferować nieinteraktywny token dostępu. Możesz go utworzyć w panelu (Konto > Access tokens), a następnie wyeksportować jako zmienną środowiskową. CLI oraz każdy uruchamiany skrypt automatycznie go wykryje.
export STACKHERO_TOKEN="usr-xxxxxx:your-token"
2. Znajdź sklep usług Prometheus
Następnie warto wyświetlić listę sklepów usług Prometheus dostępnych na Twoim koncie. CLI akceptuje bezpośrednio nazwę sklepu (prometheus), więc nie musisz wyszukiwać ani kopiować żadnych identyfikatorów.
# Wyświetl sklepy usług Prometheus (dodaj --organization, jeśli zarządzasz więcej niż jedną)
stackhero services-store-list --name="prometheus"
Nazwy sklepów prometheus możesz używać w kolejnych poleceniach lub, jeśli wolisz, wybrać konkretny identyfikator svs-xxxxxx z listy.
3. Wybierz rozmiar instancji i region
# Wyświetl dostępne rozmiary instancji dla wybranego sklepu usług (użyj kolumny NAME dla --instance)
stackhero instances-store-list --service-store=prometheus
# Wyświetl dostępne regiony (nazwy takie jak "europe")
stackhero regions-list
4. Utwórz usługę
Poniżej znajduje się przykładowy skrypt, który tworzy stack, dodaje do niego usługę Prometheus, czeka na jej uruchomienie, pobiera konfigurację (wraz z wygenerowanymi danymi dostępowymi), a następnie stosuje nową konfigurację.
#!/bin/bash
set -e
export STACKHERO_TOKEN="usr-xxxxxx:your-token"
serviceStore="prometheus" # Nazwa sklepu usług Prometheus (patrz krok 2)
instance="..." # Rozmiar instancji z kroku 3
region="europe" # Nazwa regionu z kroku 3
# Utwórz stack dla swojej usługi (domyślnie używa Twojej organizacji; dodaj --organization, jeśli potrzeba)
stackId=$(stackhero --format=script stack-create \
--name="My Prometheus stack")
echo "Stack utworzony: ${stackId}"
# Dodaj Prometheus do stacka (nazwy są rozpoznawane automatycznie)
serviceId=$(stackhero --format=script service-add \
--stack="My Prometheus stack" \
--service-store="${serviceStore}" \
--instance="${instance}" \
--region="${region}")
echo "Usługa dodana: prometheus"
# Poczekaj, aż usługa będzie w pełni uruchomiona (może to potrwać kilka minut)
stackhero service-wait-for --service="prometheus"
# Pobierz konfigurację usługi, w tym wygenerowane dane dostępowe
stackhero service-configuration-get --service="prometheus" --format=json
5. Pobierz dane dostępowe
Polecenie service-configuration-get zwraca pełną konfigurację Twojej usługi, w tym automatycznie wygenerowane hasła i szczegóły połączenia. Wynik jest w formacie JSON, co ułatwia wykorzystanie w skryptach i automatyzacji.
stackhero service-configuration-get --service=svc-xxxxxx --format=json
6. Zmień konfigurację
Możesz przejrzeć przykładowy schemat konfiguracji, a następnie zastosować własne ustawienia. Po aktualizacji konfiguracji usługa może zostać zrestartowana, aby zastosować zmiany.
# Wyświetl schemat konfiguracji i przykład dla swojej usługi
stackhero service-configuration-example --service=svc-xxxxxx
# Zastosuj własną konfigurację (usługa zostanie zrestartowana, jeśli to konieczne)
stackhero service-configuration-set \
--service=svc-xxxxxx \
--configuration='{ "...": "..." }'
# Poczekaj na zastosowanie nowej konfiguracji
stackhero service-wait-for --service=svc-xxxxxx
To wszystko. Poznałeś pełny cykl życia: uruchomienie usługi, pobranie jej danych dostępowych oraz rekonfigurację – wszystko w sposób skryptowalny i zautomatyzowany. Aby dowiedzieć się więcej, zapoznaj się z pełną dokumentacją CLI, która obejmuje również nieinteraktywną autoryzację STACKHERO_TOKEN pokazaną w tym przewodniku.