Kako uvesti Atlassian Jira + Confluence v korporacijah. Tehnična vprašanja

Načrtujete implementacijo programske opreme Atlassian (Jira, Confluence)? Ne želite narediti usodnih napak pri načrtovanju, ki jih boste nato morali rešiti v zadnjem trenutku?

Kako uvesti Atlassian Jira + Confluence v korporacijah. Tehnična vprašanja
Potem ste tukaj — razpravljamo o implementaciji Atlassian Jira + Confluence v korporaciji, ob upoštevanju različnih tehničnih vidikov.
Pozdravljeni, sem lastnik produkta v RSHB in odgovaram za razvoj Sistema upravljanja življenjskega cikla (SULC), ki je zgrajen na programskih izdelkih podjetja Atlassian Jira in Confluence.

V tem članku bom opisal tehnične vidike gradnje SULC. Članek bo koristen vsem, ki načrtujejo implementacijo ali se ukvarjajo z razvojem Atlassian Jira in Confluence v korporativnem okolju. Članek ne zahteva posebnega znanja in je namenjen začetnikom, ki se srečuje s produkti podjetja Atlassian. Koristil bo administratorjem, lastnikom produktov, vodjem projektov, arhitektom in vsem, ki načrtujejo implementacijo sistemov na osnovi programske opreme Atlassian.

Uvod

V članku bomo obravnavali tehnične vidike implementacije Sistema upravljanja življenjskega cikla (SULC) v korporativnem okolju. Najprej opredelimo, kaj to pomeni.

Kaj pa pomeni korporativna rešitev?

To pomeni rešitev:

  1. Skalabilno. V primeru povečanja obremenitve obstaja tehnična možnost povečati zmogljivost sistema. Ločimo med horizontalnim in vertikalnim skaliranjem — pri vertikalnem skaliranju povečujemo zmogljivost strežnikov, pri horizontalnem skaliranju pa povečuje število strežnikov za delovanje sistema.
  2. Zanesljivo. Sistem bo ostal dostopen tudi ob napaki enega elementa. Na splošno za korporativne sisteme zanesljivost ni obvezna, vendar bomo obravnavali prav takšno rešitev. V našem sistemu načrtujemo več sto konkurenčnih uporabnikov in bodo prenehanja delovanja zelo kritična.
  3. Podprto. Rešitev mora biti podprta s strani dobavitelja. Programska oprema brez podpore mora biti zamenjana z lastnimi razvoji ali drugo programsko opremo s podporo.
  4. Namestitev Samostojno upravljano (Na lokaciji). Samostojno upravljano pomeni, da lahko namestite programsko opremo ne v oblaku, temveč na lastnih strežnikih. Natančneje, to so vse možnosti namestitve, ki niso SaaS. V tem članku bomo obravnavali le možnosti namestitve za Samostojno upravljanje.
  5. Možnost neodvisnega razvoja in testiranja. Za organizacijo predvidljivih sprememb v sistemu so potrebni ločeni sistemi za razvoj (spremembe samega sistema), sistem testiranja (Staging) in produktivni sistem za delo uporabnikov.
  6. Drugo. Podpira različne scenarije avtorizacije, podpira revizijske loge, ima prilagodljiv model vlog itd.

To so osnovni elementi korporativnih rešitev in, žal, se pogosto pozabijo pri načrtovanju sistema.

Kaj je sistem upravljanja življenjskega cikla (SULC)?

Na kratko, v našem primeru je to Atlassian Jira in Atlassian Confluence — sistem, ki nudi orodja za organizacijo skupinskega dela. Sistem ne 'vsiljuje' pravil organizacije dela, temveč ponuja raznolika orodja za delo, to so Scrum, Kanban table, vodopadni model, skalabilni Scrum itd.
Ime SULC ni industrijski termin ali splošno razumljen pojem, to je preprosto ime sistema v naši banki. SULC za nas ni sistem za sledenje napakam, ni sistem za upravljanje incidentov in ni sistem za upravljanje sprememb.

Kaj vključuje uvedba?

Uvedba rešitve obsega številna tehnična in organizacijska vprašanja:

  • Dodelitev tehničnih zmogljivosti.
  • Nakup programske opreme.
  • Ustvarjanje ekipe za uvedbo rešitve.
  • Namestitev in konfiguracija rešitve.
  • Razvoj arhitekture rešitve. Modela vlog.
  • Razvoj operativne dokumentacije, vključno z navodili, pravilniki, tehničnim projektom, akti itd.
  • Sprememba procesov podjetja.
  • Ustvarjanje podporne ekipe. Razvoj SLA.
  • Usposabljanje uporabnikov.
  • Drugo.

V tem članku bomo obravnavali tehnične vidike uvedbe, brez podrobnosti o organizacijski komponenti.

Lastnosti Atlassian

Podjetje Atlassian je vodilno na mnogih segmentih:

Izdelki podjetja Atlassian imajo vse potrebne korporativne funkcije. Izpostavil bi naslednje značilnosti:

  1. Rešitve Atlassian temeljijo na spletnem strežniku Java Tomcat. Programska oprema Apache Tomcat je vključena v programsko opremo Atlassian kot del namestitve, različice Apache Tomcat, ki je vključena v programsko opremo Atlassian, ni mogoče spremeniti, tudi če je različica zastarela in vsebuje ranljivosti. Edina možnost je čakati na posodobitev od Atlassian z novejšo različico Apache Tomcat. Trenutno, na primer, v aktualnih različicah Jira poteka Apache Tomcat 8.5.42, v Confluence pa Apache Tomcat 9.0.33.
  2. Uporabniku prijazen vmesnik, ki vključuje najboljše prakse dostopne na trgu za to kategorijo programske opreme.
  3. Popolnoma prilagodljiva rešitev. S prilagoditvami je mogoče izvesti kakršne koli spremembe osnovne funkcionalnosti za uporabnika.
  4. Napreden ekosistem. Ima več sto partnerjev: https://partnerdirectory.atlassian.com, vključno s 16 partnerji v Rusiji. Preko partnerjev v Rusiji je mogoče kupiti programsko opremo Atlassian, vtičnike in opraviti usposabljanje. Partnerji razvijajo in podpirajo večino vtičnikov.
  5. Trgovina z aplikacijami (vtičniki): https://marketplace.atlassian.com. Vtičniki znatno razširjajo funkcionalnost programske opreme Atlassian. Osnovna funkcionalnost programske opreme Atlassian je precej skromna, skoraj za vse naloge se pojavi potreba po namestitvi dodatnih vtičnikov, bodisi brezplačno bodisi za dodatno plačilo. Zato so lahko stroški programske opreme bistveno višji, kot je bilo prvotno ocenjeno.
    Trenutno je v trgovini objavljenih več tisoč vtičnikov, skoraj tisoč jih je bilo testiranih in validiranih v okviru programa Data Center approved apps. Takšni vtičniki jih je mogoče obravnavati kot stabilne in primerne za uporabo v obremenjenih sistemih.
    Priporočam, da skrbno pristopite k vprašanju načrtovanja vtičnikov, to pomembno vpliva na stroške rešitve, mnogi vtičniki lahko povzročijo nestabilnost sistema, poleg tega proizvajalec vtičnika morda ne bo zagotavljal podpore za reševanje težav.
  6. Usposabljanje in certifikacije: https://www.atlassian.com/university
  7. Podpirajo se mehanizmi SSO, SAML 2.0.
  8. Podpora za skalabilnost in odpornost na okvare je na voljo le v različicah Data Center. Ta različica se je prvič pojavila leta 2014 (Jira 6.3). Funkcionalnost različic Data Center se nenehno širi in dopolnjuje (na primer, možnost namestitve enega vozlišča se je pojavila šele leta 2020). Pristop k vtičnikom za različice Data Center se je močno spremenil leta 2018 z uvedbo Data Center approved apps.
  9. Cena podpore. Cena podpore od ponudnika je praktično enaka polni ceni licenc programske opreme. Spodaj je prikazan primer izračuna cene licenc.
  10. Pomanjkanje dolgoročnih izdaj. Obstajajo tako imenovane Enterprise različice, vendar so te, prav tako kot vse druge različice, podprte 2 leti. Razlika je v tem, da za Enterprise različice izdajajo le popravke, brez dodajanja nove funkcionalnosti.
  11. Razširjene možnosti podpore (za dodatno plačilo). https://www.atlassian.com/enterprise/support-services
  12. Podprte so različne vrste DBMS. Programska oprema Atlassian se dobavlja z brezplačno DBMS H2, vendar ta DBMS ni priporočljiv za produktivno uporabo. Za produktivno uporabo so podprte naslednje DBMS: Amazon Aurora (samo Data Center) PostgreSQL, Azure SQL, MySQL, Oracle DB, PostgreSQL, MS SQL Server. Obstajajo omejitve glede podprtih različic, pogosto so podprte samo starejše različice, vendar za vsako DBMS obstaja različica, ki jo podpira ponudnik:
    Podprte platforme Jira,
    Podprte platforme Confluence.

Tehnična arhitektura

Kako uvesti Atlassian Jira + Confluence v korporacijah. Tehnična vprašanja

Pojasnila k shemi:

  • Na shemi je prikazana implementacija v naši banki, ta konfiguracija je zgolj primer in ni priporočena.
  • nginx nudi funkcionalnost reverse-proxy tako za Jira kot za Confluence.
  • Odpornost DBMS je zagotovljena s sredstvi DBMS.
  • Prenos sprememb med okolji poteka z uporabo vtičnika Configuration Manager for Jira.
  • AppSrv na shemi je lasten strežnik aplikacij za poročanje, ne uporablja programske opreme Atlassian.
  • DB EasyBI je zasnovan za gradnjo kock in poročanje z uporabo vtičnika eazyBI Reports and Charts for Jira.
  • Storitev Confluence Synchrony (komponenta, ki omogoča hkratno urejanje dokumentov) ni ločeno nameščena in se zažene skupaj s Confluence, na istem strežniku.

Licenciranje

Vprašanja licenciranja Atlassian si zaslužijo posebno obravnavo, tukaj pa bom omenil le splošna načela.
Glavna vprašanja, s katerimi smo se srečali, so vprašanja licenciranja izdaj Data Center. Značilnosti licenciranja za izdaj Server in Data Center:

  1. Licenca za izdajo Server je brezčasna in kupec lahko uporablja programsko opremo tudi po izteku licence. Vendar pa po izteku licence kupec izgubi pravico do podpore za izdelek in posodabljanja programske opreme na aktualne različice.
  2. Licenciranje se vrši po broju korisnika u sistemu ‘JIRA Users’ global permission. Pri tome nije važno koriste li oni sistem ili ne — čak i ako korisnici nikada nisu ušli u sistem, svi korisnici će biti računati za licencu. U slučaju prekoračenja broja licenciranih korisnika, rešenje će biti uklanjanje ovlaštenja ‘JIRA Users’ kod dela korisnika.
  3. Licenca za Data Center zapravo predstavlja pretplatu. Potrebno je godišnje plaćanje licence. Po isteku roka, rad sa sistemom će biti blokiran.
  4. Cena licenci može se menjati tokom vremena. Kako praksa pokazuje, na veću stranu i, možda, značajno. Stoga, ako su vam ove godine licence koštale određenu sumu, sledeće godine cena licenci može porasti.
  5. Licenciranje se vrši po korisnicima po tier (na primer, nivo 1001-2000 korisnika). Postoji mogućnost prelaska na viši tier, uz doplatu.
  6. U slučaju prekoračenja broja licenciranih korisnika, novi korisnici će biti kreirani bez prava pristupa sistemu (‘JIRA Users’ global permission).
  7. Pluginovi se mogu licencirati samo za onoliko korisnika koliko i osnovni softver.
  8. Licencirati je potrebno samo produkcijske instalacije, za ostale se može dobiti Developer license: https://confluence.atlassian.com/jirakb/get-a-developer-license-for-jira-server-744526918.html.
  9. Za kupovinu održavanja, potrebno je kupiti Renew Software maintenance — cena je približno 50% od cene prvobitnog softvera. Ova opcija nije dostupna za Data Center i ne odnosi se na pluginove — za njihovu podršku moraće se plaćati puna cena godišnje.
    Dakle, godišnja podrška softvera košta više od 50% ukupne cene softvera u slučaju Server izdanja i 100% u slučaju Data Center izdanja — to je značajno više nego kod većine drugih dobavljača. Po mom mišljenju, to je značajan nedostatak poslovnog modela Atlassiana.

Karakteristike prelaska sa Server edicije na Data Center:

  1. Prelazak sa Server edicije na Data Center je plaćen. Cenu možete pronaći ovde. https://www.atlassian.com/licensing/data-center.
  2. Prilikom prelaska sa Server edicije na Data Center ne zahteva se plaćanje za promenu edicije kod pluginova — pluginovi za Server ediciju će funkcionisati. Ali će obnavljanje licenci za pluginove već morati biti obavezno za Data Center ediciju.
  3. Lahko uporabljate vtičnike, za katere ni različice za uporabo z izdajo Data Center. Seveda pa takšni vtičniki morda ne bodo delovali pravilno, zato je bolje vnaprej predvideti alternativo za take vtičnike.
  4. Prehod na izdajo Data Center poteka z namestitvijo nove licence. Licenca za izdajo Server ostaja še vedno na voljo.
  5. Med različicami Data Center in Server ni funkcionalnih razlik za uporabnike, vse razlike so le v funkcijah za upravljanje in tehničnih možnostih namestitve.
  6. Cena programske opreme in vtičnikov se razlikuje med različicami Server in Data Center. Razlika v ceni pogosto znaša manj kot 5% (ni bistvena). Spodaj je prikazan primer izračuna cene.

Funkcionalni obseg uvedbe

Osnovni paket programske opreme Atlassian vključuje številne možnosti, vendar pogosto sistemu močno primanjkuje funkcionalnosti. Včasih celo najpreprostejše funkcije niso na voljo v osnovnem paketu, zato brez vtičnikov praktično ni mogoče uvesti kateregakoli sistema. Za sistem Jira uporabljamo naslednje vtičnike (slika je klikabilna):
Kako uvesti Atlassian Jira + Confluence v korporacijah. Tehnična vprašanja

Za sistem Confluence uporabljamo naslednje vtičnike (slika je klikabilna):
Kako uvesti Atlassian Jira + Confluence v korporacijah. Tehnična vprašanja

Komentarji k tabelam z vtičniki:

  • Vse cene so navedene na podlagi 2000 uporabnikov;
  • Cene so navedene na podlagi cen, ki so bile navedene https://marketplace.atlassian.com, dejanska cena (s popusti) se izkaže za nižjo;
  • Kot vidimo, končna vsota praktično ne razlikuje med različicama Data Center in Server;
  • Za uporabo so bili izbrani vtičniki samo s podporo za izdajo Data Center. Ostale vtičnike smo izključili iz načrtov za stabilnost sistema.

Funkcionalnosti so kratko opisane v stolpcu Komentar. Dodatni vtičniki so razširili funkcionalnosti sistema:

  • Dodano je bilo več vizualnih orodij;
  • Izboljšani so bili integracijski mehanizmi;
  • Dodano je bilo orodje za projekte po vodopadnem modelu;
  • Dodano je bilo orodje za razširljiv Scrum, za organizacijo dela velikih projektnih ekip;
  • Dodana je funkcionalnost za sledenje času;
  • Dodano je bilo orodje za avtomatizacijo operacij in konfiguracijo rešitve;
  • Dodana je bila funkcionalnost za enostavno in avtomatizirano upravljanje rešitve.

Dodatno uporabljamo Aplikacijo Atlassian Companion. Ta aplikacija omogoča urejanje datotek v zunanjih aplikacijah (MS Office) in njihovo vračilo nazaj v Confluence (check-in).
Aplikacija za delovna mesta uporabnikov (debeli odjemalec) ALM Works Jira Client https://marketplace.atlassian.com/apps/7070 smo se odločili, da je ne bomo uporabili zaradi slabe podpore s strani ponudnika in negativnih mnenj.
Za integracije z MS Project imamo lastno razvito aplikacijo, ki omogoča posodabljanje statusov Issue v MS Project iz Jire in obratno. V prihodnosti nameravamo za iste cilje uporabiti plačljiv vtičnik Ceptah Bridge — JIRA MS Project Plugin, ki se namesti kot razširitev v MS Project.
Integracija z zunanjimi aplikacijami se izvaja preko Application Links. Pri tem so za aplikacije Atlassian integracije prednastavljene in delujejo takoj po nastavitvi, na primer lahko prikažemo na strani v Confluence informacije o Issues v Jiri.
Za dostop do strežnikov Jire in Confluence se uporablja REST API: https://developer.atlassian.com/server/jira/platform/rest-apis.
SOAP in XML-RPC API sta zastarela in nista dostopna v novih različicah za uporabo.

Zaključek

Torej, pregledali smo tehnične značilnosti uvedbe sistema na podlagi izdelkov Atlassian. Predlagana rešitev je ena od možnih rešitev in dobro ustreza korporativnemu okolju

Predlagana rešitev je razširljiva, odporna na napake, vsebuje tri okolja za organizacijo razvoja in testiranja, vsebuje vse potrebne elemente za sodelovanje v sistemu in ponuja širok spekter orodij za upravljanje projektov.

Z veseljem bom odgovoril na vprašanja v komentarjih.

Izvor: habr.com

Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki 🔥 Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki | ProHoster