Piszki Lab

Analiza przypadku w języku przodków…

vSphere App HA: Monitorowanie stanu serwera vPostgres

| 0 comments

Jedną z opcji bezpieczeństwa jakie są dostępne w vSphere 5.5, jest możliwość skonfigurowania “High Availability” na poziomie pojedynczej maszyny i… pojedynczej aplikacji! vSphere App HA jest niczym więcej, jak kolejnym integratorem usług dostarczanym pod postacią wtyczki dla vSphere Web Clienta. Jest też jedynym znanym mi rozwiązaniem w portfolio VMware, pozwalającym połączyć monitorowanie pojedynczej aplikacji z wykonaniem specyficznej akcji. Tą specyficzną akcją jest wymuszenie restartu całej wirtualnej maszyny w reakcji na awarię aplikacji znajdującej się wewnątrz tej maszyny! To jest ta nowa jakość o której istnieniu wielu Administratorów nie wie, lub nie wie do końca jak ją wykorzystać. W tym wpisie, na działającym przykładzie, pokażę jak użyć funkcjonalności jaką dostarcza vSphere App HA (Appliance w wersji 1.1).

ha19

 

Zanim wykorzystamy App HA musimy spełnić kilka warunków. Przede wszystkim musimy mieć w naszym klastrze skonfigurowane i włączone vSphere HA z włączoną opcją “VM and Application Monitoring”. Jeśli jest to możliwe, to włączmy też “Admission Control”.

ha0

Dodatkowo, aby otrzymywać powiadomienia poprzez email (obsługa alarmów jest realizowana przez vCenter) konfigurujemy w globalnych ustawieniach vCenter serwer pocztowy i nadawcę (jeśli wcześniej tego nigdy nie zrobiliśmy).

ha2

Musimy mieć też w środowisku zainstalowanego i skonfigurowanego vCenter Hyperic 5.8. W przypadku gdy Agenci Hyperica byli instalowani ręcznie, muszą akceptować nie zweryfikowane połączenia SSL (opcja agent.setup.acceptUnverifiedCertificate=yes), jeśli byli instalowani wcześniej z poziomu vSphere Web Clienta to nic nie trzeb robić. W kolejnym kroku instalujemy vSphere App HA Appliance, jest to bardzo prosty i standardowy proces. Po zainstalowaniu App HA logujemy się do vSphere Web Client i przeprowadzamy integrację z serwerem vCenter Hyperic (sekcja Administration –> vSphere App HA –> Settings), włącznie z akceptacją certyfikatu Hyperica.

ha1

Naszą przykładową aplikacją, którą będziemy monitorować, jest vPostgres zainstalowany jako Appliance, na potrzeby testowej instalacji Horizon Workspace Portal 2.0. Jeśli przeprowadziliśmy integrację vCenter z Hypericem (za pomocą Infrastructure Navigator), to przechodzimy do vApp Horizon Workspace i sekcji Manage instalujemy agenta Hyperic wewnątrz naszego Appliance.

ha3

Następnie logujemy się do serwera vCenter Hyperic i konfigurujemy nowo dodane zasoby. Hyperic Agent wykrywa różne zasoby i usługi na maszynie, w przypadku gdy interesuje nas monitorowane konkretnej usługi, najlepiej jest usunąć (w tym wypadku wykryty Sendmail i Apache Tomcat) to co jest niepotrzebne. Zostawiamy monitorowanie kondycji systemu, agenta i vPostgresa.ha5

Problemem w przypadku vPostgresa jest to, że jego skrypty startowe nie obsługują funkcji restart (aurora_mon dla wersji 9.2 i vpostgres_mon dla wersji 9.3). App HA obsługuje tylko funkcję restart. Dlatego musimy sami stworzyć skrypt o nazwie /etc/init.d/postgres zawierający jedną linijkę: service aurora_mon start (lub service vpostgres_mon start).

ha21

Pamiętajmy też, że domyślnie vPostgres nie ma włączonych statystyk. Prawidłowe zbieranie danych o wydajności serwera vPostgres przez vCenter Hyperic będzie miało miejsce tylko wtedy gdy włączymy opcję track_counts=on w pliku /var/vmware/vpostgres/current/pgdata/postgresql.conf:

ha22

vSphere App HA domyślnie wspiera tylko część serwerów i aplikacji obsługiwanych przez vCenter Hyperic. Mimo, że na starcie wspiera PostgreSQL to niestety nie wspiera vPostgresa, można jednak zaimportować taki serwis bezpośrednio z Hyperica do App HA. Aby to zrobić, musimy się zalogować jako root bezpośrednio do maszyny i wydać następujące polecenie:

ha8

Usługa zostaje zrestartowana i już po kilku minutach w vSphere Web Client w sekcji “Monitor –> Applications Availability” naszego vApp widzimy właściwy serwis.

ha9

W tym momencie, możemy stworzyć naszą pierwszą politykę dotyczącą obsługi stanu aplikacji. W przypadku serwisów importowanych z serwera vCenter Hyperic, nie jest możliwe ustawienie szczegółowych parametrów dostępu i kontroli aplikacji na poziomie polityki. Obowiązują ustawienia zdefiniowane dla Agenta.

ha10

Na tym etapie próba przypisania polityki do serwisu skończy się komunikatem “No VMware vCenter AppHA plug-in named VC is defined on the vCenter Hyperic Server”.

ha11

Oznacza to, że musimy zainstalować Agenta Hyperica na serwerze gdzie jest zainstalowane nasze vCenter, a dodatkowo skonfigurować w samym Hypericu usługę “VMware vCenter AppHA”.

ha12

Logujemy się do serwera vCenter Hyperic i sprawdzamy czy Agent nawiązał połączenie z serwerem.

ha13

Po dodaniu Agenta do Inventory, musimy skonfigurować nowy “Server”, serwerem tym jest wtyczka “VMware vCenter AppHA”.

ha14

ha15

W tym momencie mamy skonfigurowane poprawnie wszystkie usługi potrzebne do monitorowania aplikacji z poziomu vSphere Web Clienta. Możemy ponownie przypisać stworzoną wcześniej politykę do naszej aplikacji.

ha16

Pamiętajmy, że polityka zawsze czuwa, gdy planujemy wykonywać jakieś operacje na danej aplikacji lub maszynie wirtualnej, włączmy tryb serwisowy polityki, tak byśmy nie byli nigdy zaskoczeni nagłym restartem aplikacji lub całej maszyny. Aby wprowadzić zmiany w polityce która jest przypisana do działających usług, także musimy postawić wszystkie te usługi w tryb serwisowy.

ha17

A tak wygląda reakcja systemu na polecenie “service aurora_mon stop” przy wyłączonym trybie serwisowym (pierwszy pojawia się alert w vCenter umieszony w tym wpisie jako pierwszy obrazek):

ha23

Na koniec małe podsumowanie. Czy warto instalować i używać App HA? Jeśli nasze środowiska składa się z najnowszych komponentów, vSphere 5.5, vCenter Hyperic i Infrastructure Navigator w wersji 5.8 to jak najbardziej warto. vSphere App HA jest taką kropką nad i gdy mówimy o produktach VMware służących do monitorowania całego środowiska vSphere. Czy jest to rozwiązanie idealne? oczywiście nie jest, ale ma w sobie duży potencjał rozwojowy. No i dodatkowo zwalnia nas z konieczności przedzierania się przez zagmatwany interfejs Hyperica.

Oceń ten artykuł:
[Total: 0 Average: 0]

Dodaj komentarz

Required fields are marked *.