Jak wiadomo, vROps jest świetnym narzędziem do monitorowanie środowiska wirtualnego, ale również może monitorować stan naszego hardware’u. vRealize Operation tworzy alerty i wyświetla je wraz z detalami, ale żeby je zobaczyć, musimy się to vROpsa zalogować. A co, jeżeli możnaby dostawać takie alerty na komórkę?
Dziś pokaże Wam jak zintegrować vROps z Telegramem, aby właśnie umożliwić otrzymywanie alertów na komórkę, za pomocą aplikacji Telegram.
Co będziemy potrzebować?
- Aplikacja Telegram
 - Bot
 - REST API call dla Telegram’u
 - vRealize Operation
 
Tworzymy Bota w Telegramie:
Aby utworzyć Bot’a w programie Telegram, musimy porozmawiać z BotFather. Jeśli nigdy wcześniej nie rozmawiałeś z @BotFather, po prostu otwórz swoje kontakty i go wyszukaj.

Rozpocznij rozmowę od komendy:
/start
Komenda ta wyświetli wszystkie dostępne opcje. Nas interesuje opcja utworzenia nowego bota. Wydaj następującą komendę:
/newbot

Aby użyć nowego bota do wysyłania wiadomości, musisz dodać swojego bota jako członka grupy do stworzonej grupy/czatu Telegrama dla Twoich alertów. Ja utworzyłem grupę o nazwie vROps_Alerts i dodałem do niej mojego bota. Następnie trzeba pobrać identyfikator grupy z adresu URL (łącznie ze znakiem minus „-”) i zanotować go gdzieś. W tym przykładzie mój identyfikator grupy to -717272464
https://api.telegram.org/bot$token/sendMessage?chat_id=$chat&text=Hello+World
Aby wysyłać wiadomości do wskazanej grupy, musisz zmodyfikować API. Musisz użyć tokena bota po /bot i identyfikator czatu po chat_id=, na przykład:
https://api.telegram.org/bot655790190:AAEtNozH7-am3rOINAIhzmWq8VJjSKhjQK4/sendMessage?chat_id=-717272464
Wiadomość POST wyglada tak:
{
  "text": "my message"
}
Dodajemy Outbound Instance w vROpsie
Zaloguj się do vROpsa, Configure -> Alerts -> Outbound Settings:
- Kliknij ADD
 - Wybierz Webhook Notification Plugin z pola Plugin Type
 - W polu Url: wklej zmodyfikowany API Telegrama, zawierający token bota i chat ID.
 

UWAGA: Nie ma nazwy użytkownika ani hasła, ponieważ adress API zawiera wszystkie niezbędne dane uwierzytelniające do wysłania wiadomości.
UWAGA: Po przetestowaniu połączenia otrzymasz komunikat o błędzie, jednak możesz go zignorować.

Aby upewnić się, że połączenie działa, dodaj &text=Hello+World na końcu adresu URL API i przetestuj ponownie:

Wiadomość Hello World zobaczysz również na kanale Telegram. Teraz usuń &text=Hello+World i kliknij ZAPISZ. Ponownie zignoruj komunikat o błędzie i kontynuuj.
Tworzymy vROps Payload Template
W Payload Template możemy zdefiniować, co chcemy wysłać. Istnieją trzy sekcje, które możemy modyfikować:
- Details:
- Zawiera nazwę, opis i metodę wysyłania, której chcielibyśmy użyć dla naszego ‘payload’. W tym przykładzie wybierzemy wtyczkę Webhook Notification Plugin
 
 - Object Content:
- To bardzo ważna sekcja, w której możesz zdecydować, jakie metryki i właściwości chcesz przesłać w ‘payload’.
 
 - Payload Details:
- Określa rzeczywiste wywołanie REST, takie jak metoda lub typ zawartości, i opisuje treść wywołania. Istnieją również predefiniowane metryki i właściwości, których możemy użyć.
 
 
Stwórzmy payload:
- Otwórz Alerts -> Payload Templates.
 - Kliknij ADD.
 - Wpisz nazwę dla payload templates.
 - Wpisz opis
 - Wybierz jako Outbound method -> Webhook Notification Plugin.
 

- Kliknij NEXT na dole strony
 - W zakładce Object Content wybierz metryki i właściwości, które chcesz użyc.
- W tym przykładzie zdecydowałem się na monitorowanie Datastore.
 
 

- Kliknij NEXT na dole strony
 - W sekcji Pauload Details ustaw:
- Content type -> application/json
 - HTTP Method -> POST
 - Payload of the request -> JSON format:
 
 
{
    "text": "${ALERT_DEFINITION}: ${RESOURCE_NAME}: Available GB: ${VMWARE|Datastore|capacity|available_space}: Used in %: ${VMWARE|Datastore|capacity|usedSpacePct}: Snapshots Space used: ${VMWARE|Datastore|diskspace|snapshot}"
}
UWAGA: Możesz ustawić różne szczegóły ładunku dla nowych, zaktualizowanych i anulowanych alertów.

Ustawiamy vROps Notification
Nadszedł czas na skonfigurowanie ‘notification’. Przejdź do Alerty -> Notifications. Są tu cztery sekcje:
- Notification:
- Nadaj powiadomieniu nazwę i włącz je.
 
 - Define Criteria:
- Ta sekcja jest ogromna. Możesz określić, kiedy powiadomienie ma być wysłane.
 
 - Set Outbound Method:
- Możesz wybrać ‘payload template’ do użycia.
 
 

W zakładce Define Criteria, wybrałem Object Type -> datastore:

I jako ostatni krok wybrałem nasz szablon:

Gdy alert w datastore zostanie uruchomiony, otrzymamy wiadomość.

Informacje o nowych artykułach, świecie wirtualizacji i "cloud computingu" prosto na Twojego maila:
Dodam Cię do listy mailowej, z której możesz wypisać się w dowolnym momencie (jeden klik.) | Polityka Prywatności
















