Upgrade Jira po mojemu

By in
Upgrade Jira po mojemu

Upgrade Jira to przyjemna czynność ale potrafi również zaskoczyć. Podstawą jest tu spisana i przetestowana procedura. Ponadto z czasem łatwo wpaść w rutynę i popełnić błąd. W niniejszym poście chcę podzielić się z Wami swoim sposobem na podniesienie wersji Jira.

Z oficjalną dokumentacją można zapoznać się tu, warto również przejść przez upgrade checklist. Ja przedstawię listę, którą wypracowałem sobie na podstawie własnych doświadczeń związanych z upgrade aplikacji na systemach Linux oraz Windows. Zmienia się ona w zależności od release i upgrade notes dodatków oraz samej aplikacji. Zachęcam też do podzielenia się spostrzeżeniami w komentarzu lub na contact [at] jiraforthepeople.com.

Przygotowanie

  • zawieszenie bannera (https://your-jira-instance/secure/admin/EditAnnouncementBanner!default.jspa) oraz poinformowanie pracowników za pomocą firmowego komunikatora
    • banner warto umieścić z odpowiednim wyprzedzeniem
  • zapoznanie się z release notes oraz upgrade notes dla docelowej wersji Jira
  • wykonanie backupu
    • xml: https://your-jira-instance/secure/admin/XmlBackup!default.jspa
    • backup bazy danych
  • wyłączenie cronów działających na serwerze
  • wyciszenie monitoringu
    • Jira będzie chwilowo niedostępna, jeśli w Twojej firmie monitorowane jest jej działanie, wycisz je na ten czas
  • pobranie JIRA w wersji x.x.x:
  • wykonanie pre upgrade checks za pomocą natywnego narzędzia w Jira: https://your-jira-instance/plugins/servlet/troubleshooting/pre-upgrade/
    • narzędzie sprawdza m.in. czy licencje aplikacji pozwalają na podniesienie do konkretnej wersji
  • wykonanie Jira update check https://your-jira-instance/plugins/servlet/upm?source=side_nav_manage_addons
    • tu sprawdzamy czy dodatki będą kompatybilne z docelową wersją Jira
    • niektóre z nich będzie można podnieść od razu, inne dopiero po upgrade Jira
  • upewnienie się, że licencje pozwalają na podniesienie dodatków do wymaganych wersji
  • zapoznanie się z release i upgrade notes dla dodatków
    • należy zwrócić uwagę czy nowa wersja dodatku nie staje się płatna lub nie zawiera breaking changes
  • wyłączenie niekompatybilnych dodatków
  • zrobienie upgrade dodatków
    • w zależności od potrzeb można zrobić upgrade do najnowszej wersji dodatku lub innej, której potrzebujemy
    • przy każdym upgrade zawsze mam w drugim oknie włączone śledzenie logów na serwerze:
      tail -f /opt/jira-home/log/atlassian-jira.log

Instalacja

  • nadanie uprawnień do uruchomienia instalatora
    • chmod +x ./atlassian-jira-software-8.12.3-x64.bin
  • instalacja w aplikacji screen, co zabezpieczy nas przed konsekwencjami nagłego rozłączenia nas z serwerem
    • screen -S upgrade_jira
  • dodatkowo zawsze otwieram dwa dodatkowe okna, których śledzę logi
    • tail -f /opt/jira-home/log/atlassian-jira.log
    • tail -f /opt/jira-home/log/atlassian-jira.log | grep ERROR
  • uruchomienie instalatora
  • skopiowanie na bok customowych zmian
    • instalator poda nam listę plików, które zostały zmodyfikowane względem oryginalnej konfiguracji Jira, powinniśmy skopiować je sobie na bok

Po instalacji

  • przeniesienie customowych zmian
    • do porownania plków używam narzędzia vimdiff, np.
      • vimdiff stary_server.xml nowy_server.xml
    • w przypadku potrzeby przeniesienia zaufanych certyfikatów jira polecam mój autorski skrypt, którego działanie opisałem w osobnym poście
    • wyłączenie automatycznego reindexu
      • w pliku jira-config.properties należy ustawić: upgrade.reindex.allowed=false
    • usunięcie zawartości /opt/jira-home/plugins/.osgi-plugins/
      • może zawierać nieaktualne dane po upgrade dodatków, zostanie ona odtworzona zgodnie z najnowszymi wersjami
  • włączenie JIRA
  • upgrade Jira Service Desk do odpowiedniej wersji
    • https://your-jira-instance/plugins/servlet/applications/versions-licenses
  • upgrade i włączenie pozostałych dodatków dodatków
  • weryfikacja Jira health checks
    • https://your-jira-instance/plugins/servlet/troubleshooting/view/
  • weryfikacja działania Application Links
    • https://your-jira-instance/plugins/servlet/applinks/listApplicationLinks
  • weryfikacja działania synchronizacji słowników uzytkowników
    • https://your-jira-instance/plugins/servlet/embedded-crowd/directories/list
  • wykonanie podstawowych operacji w Jira (create issue, delete issue, comment, worklog)
  • wykonanie pełnego reindexu Jira: https://your-jira-instance/secure/admin/IndexAdmin.jspa
    • uwaga, podczas pełnego reindexu Jira będzie niedostępna
  • włączenie cronów na serwerze
  • włączenie monitoringu
  • ściągnięcie Annoucement Banner
  • poinformowanie o zakończeniu upgrade, podanie Release Notes
Leave a reply

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *