W dzisiejszym artykule pokażemy dwa proste sposoby na zaaplikowanie patcha do naszego produktu middleware – serwera aplikacji EuroAP (oraz tożsamego JBoss® EAP). Przyjrzymy się metodzie wykorzystującej GUI oraz CLI.
Wytwarzanie oprogramowania nie kończy się na etapie oddania go do użytku. Podczas korzystania z każdej aplikacji mogą zostać wykryte błędy, które nie zostały znalezione na etapie developmentu lub mogą się pojawić pewne dodatkowe potrzeby ze strony użytkowników. Programiści często wychodzą naprzeciw użytkownikom, poprawiając istniejące błędy oraz wprowadzając nowe funkcjonalności, a co za tym idzie – wydając kolejne wersje oprogramowania. Należy pamiętać, że zawsze warto mieć najnowszą wersję danego produktu ze względu na nowe funkcjonalności, poprawki błędów oraz bezpieczeństwo.
Sposobem na zaktualizowanie EuroAP bez ingerencji w konfigurację, którą wcześniej stworzyliśmy, jest zaaplikowanie patcha. Patch pozwoli dostarczyć do naszego serwera aplikacji poprawki oraz zaktualizować jego wersję.
W dzisiejszym przykładzie skupimy się na zaktualizowaniu wersji 7.3.0 do 7.3.8. Należy jednak pamiętać, że patch 7.3.8 działa z dowolną wersją 7.3.*.
Base version | Target version | |
---|---|---|
7.3.0 | -> | 7.3.8 |
7.3.1 | -> | 7.3.8 |
7.3.2 | -> | 7.3.8 |
7.3.3 | -> | 7.3.8 |
7.3.4 | -> | 7.3.8 |
7.3.5 | -> | 7.3.8 |
7.3.6 | -> | 7.3.8 |
7.3.7 | -> | 7.3.8 |
Patch z użyciem GUI
Nasz patch to jeden plik w formacie *.zip. W naszym konkretnym przypadku jest to EuroAP-7.3.8.patch.zip
. Aby zaaplikować patch przez GUI, musimy mieć uruchomiony nasz serwer aplikacji (jeżeli na tym etapie są jakieś wątpliwości, to zachęcamy zapoznania się z tym artykułem. Po uruchomieniu przechodzimy do konsoli webowej (domyślnie dostępnej pod adresem: localhost:9990
). Przed przystąpieniem do aplikowania patcha upewnijmy się, że korzystamy z EuroAP w wersji 7.3.0. Możemy to zrobić, klikając w prawym dolnym rogu wersję 3.2.8.Final
(jest to wersja konsoli HAL). Naszym oczom ukaże się następujący obraz:
Widzimy, że wersja to 7.3.0.GA
, dlatego możemy przystąpić do patchowania.
1. Przechodzimy do zakładki Patching:
2. Następnie klikamy Add Patch:
3. Kolejny krok to upload naszego pliku:
4. Ostatnim etapem jest konfiguracja. Po kliknięciu przycisku Help ukaże nam się opis dostępnych opcji. Uzupełniamy/zaznaczamy według własnych potrzeb.
5. Po kliknięciu Finish powinniśmy otrzymać informację o pozytywnym zaaplikowaniu patcha. Teraz wystarczy zrestartować serwer.
Jeszcze raz sprawdzamy wersję serwera, w taki sam sposób jak przed aktualizacją i widzimy, że proces przebiegł pomyślnie.
Uwaga! Jeżeli po restarcie oraz odświeżeniu strony z konsolą webową nadal widnieje stara wersja, należy wyczyścić cache przeglądarki lub odświeżyć stronę z wymuszeniem takiego czyszczenia – w przypadku Google Chrome jest to skrót
Ctrl+Shift+R
.
W zakładce Patching możemy podejrzeć naszego patcha oraz nim zarządzać:
Patch z użyciem CLI
Alternatywnym rozwiązaniem jest zaaplikowanie patcha z użyciem terminala i CLI. Przejdźmy proces krok po kroku.
1. W momencie, gdy nasz serwer aplikacji jest już uruchomiony, łączymy się z nim używając CLI za pomocą komendy:
$EURO_AP_HOME/bin/jboss-cli.sh -c
UWAGA! Jeżeli nasza konsola webowa znajduje się pod innym adresem i portem niż
localhost:9990
, do uruchomienia musimy dodać parametr--controller
np.
$EURO_AP_HOME/bin/jboss-cli.sh -c --controller=172.25.250.254:10101
2. Następnie będąc w CLI aplikujemy patch komendą:
[st[email protected]:9990 /] patch apply <location-of-patch>
Na przykład:
[s[email protected]:9990 /] patch apply ./EuroAP-7.3.8.patch.zip
Powyższa komenda zaaplikuje patch, używając ustawień domyślnych. Oczywiście mamy możliwość zmiany pewnych parametrów, tak jak to było w przypadku GUI. W momencie, gdy w CLI wciśniemy TAB na klawiaturze podczas wpisywania, CLI automatycznie zaproponuje nam parametry, których możemy użyć:
[[email protected]:9990 /] patch apply ./EuroAP-7.3.8.patch.zip --
--bundle-path= --override-modules --preserve=
--override-all --override=
Po wykonaniu komendy powinniśmy otrzymać informację o pomyślnym jej przebiegu oraz wymaganym restarcie:
{
"outcome" : "success",
"response-headers" : {
"operation-requires-restart" : true,
"process-state" : "restart-required"
}
}
Możemy zweryfikować wersję poleceniem:
[[email protected]:9990 /] version
...
Release: 10.1.21.Final-redhat-00001
Product: EuroAP 7.3.8.GA
...
Gotowe :)
Podsumowanie
Jak można zauważyć na powyższym przykładzie, aktualizacja EuroAP do nowszej wersji, używając zarówno GUI, jak i CLI, jest bardzo prosta. Dodatkowo bez żadnych problemów możemy dostosować patch do naszych potrzeb, a następnie zarządzać nim m.in. przez GUI w zakładce Patching. Mamy nadzieję, że ten krótki poradnik pomyślnie przeprowadził was przez proces aktualizacji.