ProHoster > Blog > Adminisztráció > Az Atlassian Jira + Confluence bevezetése egy vállalatnál. Technikai kérdések
Az Atlassian Jira + Confluence bevezetése egy vállalatnál. Technikai kérdések
Tervezi az Atlassian szoftver bevezetését (Jira, Confluence)? Nem akar kegyetlen tervezési hibákat elkövetni, amelyeket aztán az utolsó pillanatban kell megoldani?
Akkor itt van – fontolgatjuk az Atlassian Jira + Confluence bevezetését egy vállalaton belül, különféle technikai szempontok figyelembevételével.
Üdvözöljük! Terméktulajdonos vagyok az RSHB-nél, és az Atlassian Jira és Confluence szoftvertermékekre épülő Lifecycle Management System (LCMS) fejlesztéséért vagyok felelős.
Ebben a cikkben leírom az LCMS felépítésének technikai szempontjait. A cikk hasznos lesz mindenkinek, aki vállalati környezetben tervezi az Atlassian Jira és a Confluence bevezetését vagy fejlesztését. A cikk nem igényel speciális ismereteket, és az Atlassian termékek kezdeti szintű ismeretére készült. A cikk hasznos lesz adminisztrátoroknak, terméktulajdonosoknak, projektmenedzsereknek, építészeknek és mindenkinek, aki Atlassian szoftveren alapuló rendszereket tervez bevezetni.
Bevezetés
A cikk az életciklus-menedzsment rendszer (LCMS) vállalati környezetben történő bevezetésének technikai kérdéseit tárgyalja. Először is határozzuk meg, mit jelent ez.
Mi az a vállalati megoldás?
Ez a megoldást jelenti:
Méretezhető. Terhelésnövekedés esetén van műszaki lehetőség a rendszer kapacitásának növelésére. Külön vízszintes és vertikális skálázás - függőleges skálázással a szerverek kapacitása, vízszintes skálázással pedig a rendszer működéséhez szükséges szerverek száma nő.
Üzembiztos. A rendszer elérhető marad, ha valamelyik elem meghibásodik. Általában a vállalati rendszerek nem igényelnek hibatűrést, de mi csak egy ilyen megoldást fogunk fontolóra venni. Terveink szerint több száz versenyképes felhasználó lesz a rendszerben, és az állásidő nagyon kritikus lesz.
Támogatott. A megoldást a szállítónak támogatnia kell. A nem támogatott szoftvereket házon belüli fejlesztésre vagy más támogatott szoftverre kell cserélni.
Telepítés Öngazdálkodó (a helyszíni). Az önmenedzselés a szoftverek telepítésének lehetősége nem a felhőbe, hanem a saját szervereire. Pontosabban, ezek mind nem SaaS telepítési lehetőségek. Ebben a cikkben csak az önállóan felügyelt telepítési lehetőségeket vizsgáljuk meg.
Önálló fejlesztési, tesztelési lehetőség. A rendszer előrelátható változásainak megszervezéséhez külön rendszer szükséges a fejlesztéshez (maga a rendszer változásai), egy tesztelő rendszer (Staging) és egy produktív rendszer a felhasználók munkájához.
Другое. Támogatja a különböző hitelesítési forgatókönyveket, támogatja az auditnaplókat, egyéni példaképet, stb.
Ezek a fő elemei a vállalati megoldásoknak, és sajnos gyakran elfelejtik a rendszer tervezése során.
Mi az életciklus-menedzsment rendszer (LCMS)?
Röviden, esetünkben ezek az Atlassian Jira és az Atlassian Confluence - egy olyan rendszer, amely eszközöket biztosít a csapatmunka megszervezéséhez. A rendszer nem „szab meg” szabályokat a munkaszervezésre, hanem különféle eszközöket biztosít a munkához, mint például Scrum, Kanban táblák, vízesés modell, méretezhető Scrum stb.
Az LCMS elnevezés nem iparági vagy általános kifejezés, egyszerűen csak a rendszer neve bankunkban. Az LCMS számunkra nem egy hibakövető rendszer, nem egy incidenskezelő rendszer és egy változáskezelő rendszer.
Mit tartalmaz a megvalósítás?
A megoldás megvalósítása számos technikai és szervezési kérdésből áll:
Műszaki kapacitások elosztása.
Szoftver vásárlás.
Csapat létrehozása a megoldás megvalósítására.
A megoldás telepítése és konfigurálása.
Megoldás architektúra fejlesztése. példakép.
Üzemeltetési dokumentáció kidolgozása, beleértve az utasításokat, előírásokat, műszaki tervet, előírásokat stb.
Változó vállalati folyamatok.
Támogató csapat létrehozása. SLA fejlesztés.
Felhasználói képzés.
Другое.
Ebben a cikkben a megvalósítás technikai szempontjait fogjuk megvizsgálni, a szervezeti komponens részletei nélkül.
Atlassian jellemzi
Az Atlassian számos szegmensben vezető szerepet tölt be:
Az Atlassian termékei az összes szükséges vállalati funkcióval rendelkeznek. Megjegyzem a következő jellemzőket:
Az Atlassian megoldások a Java Tomcat webszerveren alapulnak. Az Apache Tomcat szoftver az Atlassian szoftver részét képezi, a telepítés részeként nem módosíthatja az Atlassian szoftverrel telepített Apache Tomcat verzióját, még akkor sem, ha a verzió elavult és sebezhetőséget tartalmaz. Az egyetlen lehetőség, hogy megvárja az Atlassian frissítését az Apache Tomcat újabb verziójával. Most például a Jira jelenlegi verzióiban az Apache Tomcat 8.5.42, a Confluence-ben pedig az Apache Tomcat 9.0.33.
Kényelmes interfész, az ehhez a szoftverosztályhoz a piacon elérhető legjobb gyakorlatok valósulnak meg.
Teljesen testreszabható megoldás. A fejlesztésekkel a felhasználó számára bármilyen változtatást végrehajthat az alapvető funkciókban.
Fejlett ökoszisztéma. Több száz partnerünk van: https://partnerdirectory.atlassian.com, köztük 16 oroszországi partnerrel. Az oroszországi partnereken keresztül vásárolhat Atlassian szoftvereket, bővítményeket, és vehet részt képzésben. A legtöbb beépülő modult a partnerek fejlesztik és tartják karban.
App Store (bővítmények): https://marketplace.atlassian.com. A beépülő modulok nagyban javítják az Atlassian szoftver funkcionalitását. Az Atlassian szoftverek alapvető funkcionalitása meglehetősen szerény, szinte minden feladathoz szükségessé válik további beépülő modulok telepítése ingyen vagy extra pénzért. Ezért a szoftverköltségek jelentősen magasabbak lehetnek az eredetileg becsültnél.
A mai napig több ezer plugin jelent meg az áruházban, ezek közül csaknem ezret teszteltek és validáltak a Data Center által jóváhagyott alkalmazások programjában. Az ilyen bővítmények stabilnak tekinthetők és alkalmasak a forgalmas rendszerekben való használatra.
Azt tanácsolom, hogy óvatosan közelítse meg a bővítmények tervezésének kérdését, ez nagyban befolyásolja a megoldás költségeit, sok plugin a rendszer instabilitásához vezethet, és a bővítmény gyártója nem nyújt támogatást a probléma megoldásához.
A méretezhetőség és a hibatűrés támogatása csak az Adatközpont-kiadásokban érhető el. Ez a kiadás először 2014-ben jelent meg (Jira 6.3). Az Adatközpont-kiadások funkcionalitása folyamatosan bővül és fejleszthető (az egyetlen csomópontos telepítés lehetősége például csak 2020-ban jelent meg). A Data Center-kiadások beépülő moduljaival kapcsolatos megközelítés sokat változott 2018-ban az adatközpont által jóváhagyott alkalmazások bevezetésével.
Támogatási költség. A gyártó által nyújtott támogatás költsége majdnem megegyezik a szoftverlicencek teljes költségével. Az alábbiakban egy példa látható a licencek költségének kiszámítására.
A hosszú távú kiadások hiánya. Vannak ún Vállalati verziók, de az összes többi verzióhoz hasonlóan 2 évig támogatottak. Azzal a különbséggel, hogy az Enterprise verziókhoz csak javításokat adnak ki, új funkciók hozzáadása nélkül.
A DBMS számos változata támogatott. Az Atlassian ingyenes H2 adatbázissal érkezik, amely nem ajánlott produktív használatra. A következő DBMS-ek támogatottak a produktív használathoz: Amazon Aurora (csak Data Center) PostgreSQL, Azure SQL, MySQL, Oracle DB, PostgreSQL, MS SQL Server. Korlátozások vannak a támogatott verziókra vonatkozóan, és gyakran csak a régebbi verziók támogatottak, de minden DBMS-hez van egy verzió gyártói támogatással: Jira által támogatott platformok, Confluence által támogatott platformok.
Műszaki architektúra
Magyarázatok a sémához:
A diagram a Bankunkban történő megvalósítást mutatja, ez a konfiguráció példaként szerepel, és nem ajánlott.
Az nginx fordított proxy funkciót biztosít mind a Jira, mind a Confluence számára.
A DBMS hibatűrése a DBMS segítségével valósul meg.
A módosítások átvitele a környezetek között a Configuration Manager for Jira beépülő modul segítségével történik.
A diagramon szereplő AppSrv egy natív jelentéskészítő alkalmazáskiszolgáló, nem használ Atlassian szoftvert.
Az EasyBI adatbázist kockák építésére és jelentéskészítésre hozták létre az eazyBI Reports and Charts for Jira beépülő modul használatával.
A Confluence Synchrony szolgáltatás (egy komponens, amely lehetővé teszi a dokumentumok egyidejű szerkesztését) nem különül el külön telepítésre, és a Confluence-szal együtt fut ugyanazon a szerveren.
engedélyezés
Az Atlassian licencelési kérdései külön cikket érdemelnek, itt csak az általános elveket említem.
A fő problémák, amelyekkel találkoztunk, az Adatközpont-kiadások licencelésével kapcsolatos kérdések. Licencfunkciók szerver és adatközpont kiadásokhoz:
A Szerver kiadás licence örökérvényű, és az ügyfél a licenc lejárta után is használhatja a szoftvert. A licenc lejárta után azonban a vevő elveszíti a jogot, hogy terméktámogatást kapjon, és frissítse a szoftvert a legújabb verziókra.
A licencelés a „JIRA Users” globális engedélyrendszerben lévő felhasználók számán alapul. Nem számít, hogy használják-e a rendszert vagy sem – még ha a felhasználók soha nem is jelentkeztek be a rendszerbe, minden felhasználót figyelembe kell venni a licenchez. Ha túllépi a licencelt felhasználók számát, a megoldás az, hogy egyes felhasználóktól el kell távolítani a „JIRA felhasználók” engedélyt.
Az Adatközpont-licenc valójában egy előfizetés. Éves licencdíjat kell fizetni. A futamidő lejártakor a rendszerrel való munka le lesz tiltva.
A licencek költsége idővel változhat. Ahogy a gyakorlat azt mutatja, nagy mértékben és talán jelentősen. Ezért ha idén egy összegbe kerülnek a licencei, akkor jövőre emelkedhet a licencek költsége.
A licencelést a felhasználók szint szerint végzik (például 1001-2000 szintű felhasználók). Felár ellenében lehetőség van magasabb szintre frissíteni.
A licencelt felhasználók számának túllépése esetén új felhasználók jönnek létre bejelentkezési jog nélkül („JIRA Users” globális engedély).
A beépülő modulok csak annyi felhasználó számára licencelhetők, mint a fő szoftver.
A karbantartás megvásárlásához meg kell vásárolni a Renew Software karbantartást – a költség az eredeti szoftver költségének körülbelül 50%-a. Ez a funkció nem érhető el az Adatközpontban, és nem vonatkozik a beépülő modulokra – a támogatásuk teljes költségét évente ki kell fizetnie.
Így az éves szoftvertámogatás a szoftver összköltségének több mint 50%-ába kerül a Server kiadás esetén, és 100%-a a Data Center kiadás esetében – ez lényegesen több, mint a legtöbb más gyártónál. Véleményem szerint ez az Atlassian üzleti modell jelentős hátránya.
A szerver kiadásról az adatközpontra való átállás jellemzői:
Ha a Szerver kiadásról az Adatközpontra vált, nem kell fizetnie a bővítmények kiadásának megváltoztatásáért - a szerver kiadáshoz tartozó bővítmények működnek. A Data Center kiadáshoz azonban meg kell újítani a beépülő modulok licenceit.
Használhat olyan beépülő modulokat, amelyeknek nincs verziója az Adatközpont-kiadásokhoz. Ugyanakkor természetesen előfordulhat, hogy az ilyen beépülő modulok nem működnek megfelelően, és jobb, ha előre alternatívát kínálunk az ilyen bővítményekhez.
A Data Center kiadásra való frissítés egy új licenc telepítésével történik. Ugyanakkor a szerver kiadás licence továbbra is elérhető.
A felhasználóknak szánt Data Center és Server kiadások között nincs funkcionális különbség, minden eltérés csak az adminisztrációs funkciókban és a telepítés technikai lehetőségeiben van.
A szoftverek és a beépülő modulok költsége a szerver és az adatközpont kiadása esetén eltérő. A költségkülönbség gyakran kevesebb, mint 5% (nem lényeges). Az alábbiakban látható egy példa a költségszámításra.
A megvalósítás funkcionális köre
Az alap Atlassian szoftvercsomag rengeteg funkciót tartalmaz, de a rendszer által biztosított szolgáltatások gyakran súlyosan hiányoznak. Előfordul, hogy a legegyszerűbb funkciók sem érhetők el az alapcsomagban, így a beépülő modulok szinte minden megvalósításhoz nélkülözhetetlenek. A Jira rendszerhez a következő bővítményeket használjuk (a kép kattintható):
A Confluence rendszerhez a következő bővítményeket használjuk (a kép kattintható):
Megjegyzések a bővítményeket tartalmazó táblázatokhoz:
Mint látható, a teljes összeg gyakorlatilag megegyezik a Data Center és a Server kiadásoknál;
Csak a Data Center kiadást támogató beépülő modulok kerültek kiválasztásra. A többi beépülő modult a rendszer stabilitása érdekében kizártuk a tervekből.
A funkció rövid leírása a Megjegyzés oszlopban található. További bővítmények bővítették a rendszer funkcionalitását:
Számos vizuális eszköz hozzáadva;
Továbbfejlesztett integrációs mechanizmusok;
Hozzáadott eszközök a vízesés modell projektekhez;
Hozzáadott eszközök a méretezhető Scrum számára a nagy projektcsapatok munkájának megszervezéséhez;
Hozzáadott funkcionalitás az időkövetéshez;
Hozzáadott eszközök a műveletek automatizálásához és a megoldás konfigurálásához;
Hozzáadott funkciók a megoldás adminisztrációjának egyszerűsítése és automatizálása érdekében.
Ezen kívül használjuk Atlassian Companion alkalmazás. Ez az alkalmazás lehetővé teszi a fájlok szerkesztését külső alkalmazásokban (MS Office) és visszaküldését a Confluence-be (bejelentkezés).
Alkalmazás felhasználói munkaállomásokhoz (vastag kliens) ALM Works Jira Clienthttps://marketplace.atlassian.com/apps/7070 úgy döntött, hogy nem használja a gyenge szállítói támogatás és a negatív vélemények miatt.
mert integráció az MS Projecttel saját írású alkalmazást használunk, amely lehetővé teszi a probléma állapotok frissítését az MS Projectben a Jira-ból és fordítva. A jövőben ugyanezen célokra fizetős bővítmény használatát tervezzük Ceptah Bridge – JIRA MS Project Plugin, amely az MS Project kiegészítőjeként van telepítve. Integráció külső alkalmazásokkal Alkalmazáslinkeken keresztül valósul meg. Ugyanakkor az Atlassian alkalmazások integrációi előre konfigurálva vannak, és közvetlenül a telepítés után működnek, például megjelenítheti a Jira problémáival kapcsolatos információkat a Confluence egyik oldalán.
A REST API a Jira és a Confluence szerverek elérésére szolgál: https://developer.atlassian.com/server/jira/platform/rest-apis.
A SOAP és XML-RPC API-k elavultak, és az új verziókban nem használhatók.
Következtetés
Tehát figyelembe vettük az Atlassian termékeken alapuló rendszer megvalósításának műszaki jellemzőit. A javasolt megoldás a lehetséges megoldások egyike, és kiválóan alkalmas vállalati környezetbe.
A javasolt megoldás skálázható, hibatűrő, három környezetet tartalmaz a fejlesztés és a tesztelés megszervezésére, tartalmazza a rendszerben való együttműködéshez szükséges összes elemet, valamint projektmenedzsment eszközök széles skáláját biztosítja.
Szívesen válaszolok a kérdésekre a megjegyzésekben.