Ako implementovať Atlassian Jira + Confluence v korporácii. Technické otázky

Plánujete implementáciu softvéru Atlassian (Jira, Confluence)? Nechcete robiť kruté chyby v dizajne, ktoré sa potom budú musieť vyriešiť na poslednú chvíľu?

Ako implementovať Atlassian Jira + Confluence v korporácii. Technické otázky
Potom je toto miesto pre vás - uvažujeme o implementácii Atlassian Jira + Confluence v korporáciách, berúc do úvahy rôzne technické aspekty.
Dobrý deň, som Product Owner v RSHB a som zodpovedný za vývoj systému riadenia životného cyklu (LCMS) postaveného na softvérových produktoch Atlassian Jira a Confluence.

V tomto článku popíšem technické aspekty budovania systému životosprávy. Článok bude užitočný pre každého, kto plánuje implementovať alebo vyvíja Atlassian Jira a Confluence v podnikovom prostredí. Článok nevyžaduje špeciálne znalosti a je určený pre počiatočnú úroveň oboznámenia sa s produktmi Atlassian. Článok bude užitočný pre administrátorov, vlastníkov produktov, projektových manažérov, architektov a všetkých, ktorí plánujú implementovať systémy založené na softvéri Atlassian.

Úvod

Článok sa bude zaoberať technickými otázkami implementácie systému riadenia životného cyklu (LCMS) v podnikovom prostredí. Najprv si definujme, čo to znamená.

Čo znamená podnikové riešenie?

To znamená riešenie:

  1. Škálovateľné. Ak sa zaťaženie zvýši, je technicky možné zvýšiť kapacitu systému. Oddeľujú horizontálne a vertikálne škálovanie - pri vertikálnom škálovaní sa zvyšuje výkon serverov, pri horizontálnom škálovaní sa zvyšuje počet serverov pre systém.
  2. Odolné proti chybám. Systém zostane dostupný, ak jeden prvok zlyhá. Vo všeobecnosti korporátne systémy nevyžadujú odolnosť voči chybám, ale budeme uvažovať práve o takomto riešení. Plánujeme mať v našom systéme niekoľko stoviek konkurencieschopných používateľov a prestoje budú veľmi kritické.
  3. Podporované. Riešenie musí byť podporované predajcom. Nepodporovaný softvér by mal byť nahradený proprietárnym softvérom alebo iným podporovaným softvérom.
  4. Inštalácia Samostatne riadený (Na predpoklade). Samostatne spravovaná je možnosť inštalovať softvér nie do cloudu, ale na vaše vlastné servery. Presnejšie povedané, toto sú všetky možnosti inštalácie mimo SaaS. V tomto článku zvážime možnosti inštalácie iba pre Samoobslužné.
  5. Možnosť samostatného vývoja a testovania. Na organizovanie predvídateľných zmien v systéme je potrebný samostatný systém pre vývoj (zmeny v samotnom systéme), testovací systém (Staging) a produktívny systém pre používateľov.
  6. Viac. Podporuje rôzne scenáre autentifikácie, podporuje protokoly auditu, má prispôsobiteľný model rolí atď.

Toto sú hlavné prvky podnikových riešení a pri návrhu systému sa na ne, žiaľ, často zabúda.

Čo je to systém riadenia životného cyklu (LCMS)?

V našom prípade ide v skratke o Atlassian Jira a Atlassian Confluence – systém, ktorý poskytuje nástroje na organizáciu tímovej práce. Systém „neukladá“ pravidlá pre organizáciu práce, ale poskytuje rôzne nástroje pre prácu, vrátane Scrumu, Kanban dosiek, vodopádového modelu, škálovateľného Scrumu atď.
Názov LMS nie je odvetvový pojem ani bežne používaný pojem, je to jednoducho názov systému v našej banke. LMS pre nás nie je systémom na sledovanie chýb, ani systémom riadenia incidentov alebo systémom riadenia zmien.

Čo zahŕňa implementácia?

Implementácia riešenia pozostáva z mnohých technických a organizačných problémov:

  • Pridelenie technickej kapacity.
  • Nákup softvéru.
  • Vytvorenie tímu na implementáciu riešenia.
  • Inštalácia a konfigurácia riešenia.
  • Vývoj architektúry riešení. Vzor.
  • Vypracovanie prevádzkovej dokumentácie vrátane návodov, predpisov, technického návrhu, predpisov a pod.
  • Zmena firemných procesov.
  • Vytvorenie podporného tímu. vývoj SLA.
  • Školenie používateľov.
  • Viac.

V tomto článku sa pozrieme na technické aspekty implementácie, bez podrobností o organizačnej zložke.

Atlasské vlastnosti

Atlassian je lídrom v mnohých segmentoch:

Produkty Atlassian poskytujú všetky podnikové funkcie, ktoré potrebujete. Zaznamenám nasledujúce vlastnosti:

  1. Riešenia Atlassian sú založené na webovom serveri Java Tomcat. Softvér Apache Tomcat je súčasťou softvéru Atlassian ako súčasť inštalácie; nemôžete zmeniť verziu softvéru Apache Tomcat nainštalovanú ako súčasť softvéru Atlassian, aj keď je verzia zastaraná a obsahuje chyby zabezpečenia. Jedinou možnosťou je počkať na aktualizáciu od Atlassianu, s novšou verziou Apache Tomcat. Teraz napríklad aktuálne verzie Jira majú Apache Tomcat 8.5.42 a Confluence má Apache Tomcat 9.0.33.
  2. Užívateľsky prívetivé rozhranie, sú implementované osvedčené postupy dostupné na trhu pre túto triedu softvéru.
  3. Plne prispôsobiteľné riešenie. Úpravami môžete implementovať akúkoľvek zmenu základnej funkcionality pre používateľa.
  4. Rozvinutý ekosystém. Existuje niekoľko stoviek partnerov: https://partnerdirectory.atlassian.comvrátane 16 partnerov v Rusku. Prostredníctvom partnerov v Rusku si môžete kúpiť Atlassian softvér, doplnky a absolvovať školenia. Sú to partneri, ktorí vyvíjajú a podporujú väčšinu doplnkov.
  5. Obchod s aplikáciami (pluginy): https://marketplace.atlassian.com. Pluginy výrazne rozširujú funkčnosť softvéru Atlassian. Základná funkčnosť softvéru Atlassian je pomerne skromná, pre takmer akúkoľvek úlohu je potrebné nainštalovať ďalšie doplnky zadarmo alebo za ďalšie peniaze. Preto sa náklady na softvér môžu ukázať ako výrazne vyššie, ako sa pôvodne odhadovalo.
    V súčasnosti je v obchode zverejnených niekoľko tisíc pluginov, takmer tisíc z nich bolo testovaných a overených v rámci programu Apps schváleného dátovým centrom. Takéto pluginy možno považovať za stabilné a vhodné na použitie na vyťažených systémoch.
    Odporúčam vám starostlivo pristupovať k otázke plánovania doplnkov, čo výrazne ovplyvňuje náklady na riešenie, mnohé z doplnkov môžu viesť k nestabilite systému a výrobca doplnkov neposkytuje podporu na vyriešenie problému.
  6. Školenia a certifikácie: https://www.atlassian.com/university
  7. Podporované sú mechanizmy SSO a SAML 2.0.
  8. Podpora škálovateľnosti a odolnosti voči chybám je dostupná len vo vydaniach Data Center. Toto vydanie sa prvýkrát objavilo v roku 2014 (Jira 6.3). Funkčnosť edícií Data Center sa neustále rozširuje a vylepšuje (napríklad možnosť inštalácie jedného uzla sa objavila až v roku 2020). Prístup k zásuvným modulom pre vydania dátového centra sa v roku 2018 veľmi zmenil so zavedením aplikácií schválených dátovým centrom.
  9. Náklady na podporu. Náklady na podporu od predajcu sa takmer rovnajú úplným nákladom na softvérové ​​licencie. Príklad výpočtu nákladov na licencie je uvedený nižšie.
  10. Nedostatok dlhodobých vydaní. Existujú tzv Podnikové verzie, ale rovnako ako všetky ostatné verzie sú podporované 2 roky. S tým rozdielom, že pre Enterprise verzie sú vydávané len opravy, bez pridávania novej funkcionality.
  11. Rozšírené možnosti podpory (za príplatok). https://www.atlassian.com/enterprise/support-services
  12. Podporovaných je niekoľko možností DBMS. Softvér Atlassian sa dodáva s bezplatným H2 DBMS; tento DBMS sa neodporúča na produktívne použitie. Nasledujúce DBMS sú podporované na produktívne použitie: Amazon Aurora (iba dátové centrum) PostgreSQL, Azure SQL, MySQL, Oracle DB, PostgreSQL, MS SQL Server. Existujú obmedzenia na podporované verzie a často sú podporované iba staršie verzie, ale pre každý DBMS existuje verzia s podporou dodávateľa:
    Platformy podporované Jira,
    Platformy podporované Confluence.

Technická architektúra

Ako implementovať Atlassian Jira + Confluence v korporácii. Technické otázky

Vysvetlivky k diagramu:

  • Diagram znázorňuje implementáciu v našej banke, táto konfigurácia je uvedená ako príklad a neodporúča sa.
  • nginx poskytuje funkciu reverzného proxy pre Jira aj Confluence.
  • Odolnosť voči chybám DBMS je implementovaná pomocou DBMS.
  • Zmeny sa prenášajú medzi prostrediami pomocou doplnku Configuration Manager for Jira.
  • AppSrv v diagrame je proprietárny aplikačný server na podávanie správ a nepoužíva softvér Atlassian.
  • Databáza EasyBI bola vytvorená na skladanie kociek a reportovanie pomocou pluginu eazyBI Reports and Charts for Jira.
  • Služba Confluence Synchrony (komponent, ktorý umožňuje súčasnú úpravu dokumentov) nie je rozdelená do samostatnej inštalácie a spúšťa sa spolu s Confluence na rovnakom serveri.

licencií

Licenčná problematika Atlassian si zaslúži samostatný článok, tu spomeniem len všeobecné princípy.
Hlavné problémy, s ktorými sme sa stretli, boli problémy s licenciami pre vydania dátového centra. Licenčné funkcie pre vydania Server a Data Center:

  1. Licencia na Serverovú edíciu je trvalá a kupujúci môže softvér používať aj po uplynutí platnosti licencie. Po uplynutí platnosti licencie je však kupujúci zbavený práva na získanie podpory pre produkt a aktualizáciu softvéru na najnovšie verzie.
  2. Licencovanie je založené na počte používateľov v globálnom systéme povolení 'JIRA Users'. Nezáleží na tom, či systém používajú alebo nie – aj keď sa používatelia do systému nikdy neprihlásili, licencia sa bude brať do úvahy pre všetkých používateľov. Ak dôjde k prekročeniu počtu licencovaných používateľov, riešením by bolo odstránenie povolenia 'JIRA Users' niektorým používateľom.
  3. Licencia dátového centra je v skutočnosti predplatné. Vyžaduje sa ročný licenčný poplatok. Ak lehota uplynie, práca so systémom bude zablokovaná.
  4. Ceny licencií sa môžu časom meniť. Ako ukazuje prax, vo väčšej miere a možno aj výrazne. Ak teda budú vaše licencie stáť tento rok rovnakú sumu, budúci rok sa môžu náklady na licencie zvýšiť.
  5. Licenciu vykonáva používateľ podľa úrovne (napríklad používatelia úrovne 1001-2000). Je možné upgradovať na vyššiu úroveň za príplatok.
  6. Ak sa prekročí počet licencovaných používateľov, vytvoria sa noví používatelia bez práva na prihlásenie (globálne povolenie 'JIRA Users').
  7. Doplnky môžu byť licencované len pre rovnaký počet používateľov ako hlavný softvér.
  8. Licencované musia byť iba produktívne inštalácie, na zvyšok môžete získať licenciu pre vývojárov: https://confluence.atlassian.com/jirakb/get-a-developer-license-for-jira-server-744526918.html.
  9. Ak si chcete zakúpiť údržbu, musíte si zakúpiť údržbu Renew Software – cena je približne 50 % ceny pôvodného softvéru. Táto funkcia nie je k dispozícii pre dátové centrum a nevzťahuje sa na doplnky; na ich podporu budete musieť ročne platiť plnú cenu.
    Ročná softvérová podpora tak stojí viac ako 50 % celkových nákladov na softvér v prípade Serverovej edície a 100 % v prípade Dátového centra – to je výrazne viac ako u väčšiny ostatných predajcov. Podľa mňa je to značná nevýhoda obchodného modelu Atlassianu.

Vlastnosti prechodu zo serverovej edície na dátové centrum:

  1. Upgrade z edície Server na Data Center je spoplatnený. Cenu nájdete tu https://www.atlassian.com/licensing/data-center.
  2. Pri prechode z edície Server na Data Center nemusíte platiť za zmenu edície zásuvných modulov – zásuvné moduly pre edíciu Server budú naďalej fungovať. Ale bude potrebné obnoviť licencie pre pluginy pre edíciu Data Center.
  3. Možno budete môcť použiť doplnky, ktoré nemajú verziu na použitie s vydaniami Data Center. Takéto pluginy však samozrejme nemusia fungovať správne a je lepšie poskytnúť alternatívu k takýmto pluginom vopred.
  4. Prechod na edíciu Data Center sa uskutoční inštaláciou novej licencie. Licencia pre serverovú edíciu je však stále dostupná.
  5. Medzi verziami Data Center a Server pre používateľov nie sú žiadne funkčné rozdiely, všetky rozdiely sú len v administratívnych funkciách a technických možnostiach inštalácie.
  6. Náklady na softvér a doplnky sa líšia pre vydania Server a Data Center. Rozdiel v nákladoch je často menší ako 5 % (nevýznamný). Príklad výpočtu nákladov je uvedený nižšie.

Funkčný rozsah realizácie

Základný softvérový balík Atlassian obsahuje obrovské množstvo funkcií, ale často možnosti, ktoré poskytuje systém, výrazne chýbajú. Niekedy ani tie najjednoduchšie funkcie nie sú dostupné v základnom balíku, takže pluginy sú nevyhnutné pre takmer akúkoľvek implementáciu. Pre systém Jira používame nasledujúce pluginy (obrázok, na ktorý sa dá kliknúť):
Ako implementovať Atlassian Jira + Confluence v korporácii. Technické otázky

Pre systém Confluence používame nasledujúce pluginy (obrázok, na ktorý sa dá kliknúť):
Ako implementovať Atlassian Jira + Confluence v korporácii. Technické otázky

Komentáre k tabuľkám s doplnkami:

  • Všetky ceny sú založené na 2000 používateľoch;
  • Uvedené ceny sú založené na uvedených cenách https://marketplace.atlassian.com, skutočné náklady (so zľavami) sú nižšie;
  • Ako vidíte, celková suma je prakticky rovnaká pre edície Data Center a Server;
  • Na použitie sú vybrané iba doplnky, ktoré podporujú edíciu Data Center. Zvyšné pluginy sme vylúčili z plánov na stabilitu systému.

Funkcionalita je stručne popísaná v stĺpci Komentár. Ďalšie pluginy rozšírili funkčnosť systému:

  • Pridaných niekoľko vizuálnych nástrojov;
  • Zlepšili sa integračné mechanizmy;
  • Pridané nástroje pre projekty vodopádových modelov;
  • Pridané nástroje pre škálovateľný Scrum, na organizovanie práce veľkých projektových tímov;
  • Pridaná funkcia na sledovanie času;
  • Pridané nástroje na automatizáciu operácií a konfiguráciu riešenia;
  • Pridaná funkcia na zjednodušenie a automatizáciu správy riešenia.

Okrem toho používame Aplikácia Atlassian Companion. Táto aplikácia vám umožňuje upravovať súbory v externých aplikáciách (MS Office) a vrátiť ich späť do Confluence (check-in).
Aplikácia pre užívateľské pracovné stanice (hrubý klient) Klient ALM Works Jira https://marketplace.atlassian.com/apps/7070 sa rozhodol nepoužívať kvôli zlej podpore dodávateľa a negatívnym recenziám.
pre integrácia s MS Project Používame samostatne napísanú aplikáciu, ktorá vám umožňuje aktualizovať stavy problémov v MS Project od Jira a naopak. V budúcnosti na rovnaké účely plánujeme využívať aj platený plugin Septah Bridge - JIRA MS Project Plugin, ktorý sa inštaluje ako doplnok k MS Project.
Integrácia s externými aplikáciami implementované prostredníctvom odkazov na aplikácie. Zároveň sú pre aplikácie Atlassian integrácie predkonfigurované a fungujú ihneď po konfigurácii, napríklad informácie o Issues v Jira môžete zobraziť na stránke v Confluence.
Na prístup k serverom Jira a Confluence sa používa REST API: https://developer.atlassian.com/server/jira/platform/rest-apis.
SOAP a XML-RPC API sú zastarané a nie sú dostupné na použitie v novších verziách.

Záver

Pozreli sme sa teda na technické vlastnosti implementácie systému založeného na produktoch Atlassian. Navrhované riešenie predstavuje jedno z možných riešení a je vhodné pre podnikové prostredie

Navrhované riešenie je škálovateľné, odolné voči chybám, obsahuje tri prostredia pre organizáciu vývoja a testovania, obsahuje všetky potrebné prvky pre spoluprácu v systéme a poskytuje širokú škálu nástrojov na riadenie projektov.

Na otázky rád odpoviem v komentároch.

Zdroj: hab.com