Kako implementirati Atlassian Jira + Confluence u korporaciji. Tehnička pitanja

Planirate li implementirati Atlassian softver (Jira, Confluence)? Ne želite napraviti okrutne pogreške u dizajnu koje ćete onda morati riješiti u posljednjem trenutku?

Kako implementirati Atlassian Jira + Confluence u korporaciji. Tehnička pitanja
Onda je ovo mjesto za vas - razmatramo implementaciju Atlassian Jira + Confluence u korporacijama, uzimajući u obzir različite tehničke aspekte.
Pozdrav, ja sam vlasnik proizvoda u RSHB-u i odgovoran sam za razvoj sustava upravljanja životnim ciklusom (LCMS) izgrađenog na Atlassian softverskim proizvodima Jira i Confluence.

U ovom ću članku opisati tehničke aspekte izgradnje sustava za upravljanje životom. Članak će biti koristan svima koji planiraju implementirati ili razvijaju Atlassian Jira i Confluence u korporativnom okruženju. Članak ne zahtijeva posebna znanja i namijenjen je početnoj razini upoznavanja s Atlassian proizvodima. Članak će biti koristan administratorima, vlasnicima proizvoda, voditeljima projekata, arhitektima i svima koji planiraju implementirati sustave temeljene na Atlassian softveru.

Uvod

U članku će se raspravljati o tehničkim pitanjima implementacije sustava upravljanja životnim ciklusom (LCMS) u korporativnom okruženju. Najprije definirajmo što to znači.

Što znači korporativno rješenje?

To znači rješenje:

  1. Skalabilan. Ako se opterećenje poveća, tehnički je moguće povećati kapacitet sustava. Odvajaju horizontalno i vertikalno skaliranje - kod vertikalnog skaliranja se povećava snaga poslužitelja, kod horizontalnog skaliranja povećava se broj servera za sustav.
  2. Otporan na greške. Sustav će ostati dostupan ako jedan element zakaže. Općenito, korporativni sustavi ne zahtijevaju toleranciju na greške, ali mi ćemo razmotriti upravo takvo rješenje. Planiramo imati nekoliko stotina konkurentnih korisnika u našem sustavu i zastoji će biti vrlo kritični.
  3. Podržano. Rješenje mora biti podržano od strane dobavljača. Nepodržani softver treba zamijeniti vlasničkim softverom ili drugim podržanim softverom.
  4. Instalacija Samoupravno (On-premise). Samoupravljanje je mogućnost instaliranja softvera ne u oblaku, već na vlastitim poslužiteljima. Da budemo precizniji, sve su to opcije instalacije koje nisu SaaS. U ovom ćemo članku razmotriti mogućnosti instalacije samo za samoupravljanje.
  5. Mogućnost samostalnog razvoja i testiranja. Za organizaciju predvidljivih promjena u sustavu potreban je poseban sustav za razvoj (promjene u samom sustavu), sustav za testiranje (Staging) i produktivan sustav za korisnike.
  6. Više. Podržava različite scenarije provjere autentičnosti, podržava revizijske zapisnike, ima prilagodljiv uzor itd.

To su glavni elementi rješenja za poduzeća i, nažalost, često se zaboravljaju pri projektiranju sustava.

Što je sustav upravljanja životnim ciklusom (LCMS)?

Ukratko, u našem slučaju to su Atlassian Jira i Atlassian Confluence – sustav koji pruža alate za organizaciju timskog rada. Sustav ne “nameće” pravila za organizaciju rada, već nudi razne alate za rad, uključujući Scrum, Kanban ploče, model vodopada, skalabilni Scrum itd.
Naziv LMS nije industrijski termin ili uobičajeno korišten koncept, to je jednostavno naziv sustava u našoj Banci. Za nas LMS nije sustav za praćenje bugova, niti je sustav za upravljanje incidentima ili sustav za upravljanje promjenama.

Što uključuje implementacija?

Implementacija rješenja sastoji se od mnogih tehničkih i organizacijskih pitanja:

  • Dodjela tehničkog kapaciteta.
  • Kupnja softvera.
  • Stvaranje tima za implementaciju rješenja.
  • Instalacija i konfiguracija rješenja.
  • Razvoj arhitekture rješenja. Uzor.
  • Izrada pogonske dokumentacije, uključujući upute, propise, tehnički projekt, propise i sl.
  • Promjena procesa tvrtke.
  • Stvaranje tima za podršku. SLA razvoj.
  • Obuka korisnika.
  • Više.

U ovom članku ćemo se osvrnuti na tehničke aspekte implementacije, bez detalja o organizacijskoj komponenti.

Atlassian značajke

Atlassian je lider u mnogim segmentima:

Atlassian proizvodi pružaju sve poslovne značajke koje su vam potrebne. Navest ću sljedeće karakteristike:

  1. Atlassian rješenja temelje se na Java Tomcat web poslužitelju. Softver Apache Tomcat uključen je u softver Atlassian kao dio instalacije; ne možete promijeniti verziju Apache Tomcat instaliranog kao dio softvera Atlassian, čak i ako je verzija zastarjela i sadrži ranjivosti. Jedina opcija je čekati ažuriranje od Atlassiana, s novijom verzijom Apache Tomcat-a. Sada, na primjer, trenutne verzije Jire imaju Apache Tomcat 8.5.42, a Confluence ima Apache Tomcat 9.0.33.
  2. Implementirano je korisničko sučelje, najbolje prakse dostupne na tržištu za ovu klasu softvera.
  3. Potpuno prilagodljivo rješenje. S izmjenama možete implementirati bilo koju promjenu u osnovnoj funkcionalnosti za korisnika.
  4. Razvijen ekosustav. Postoji nekoliko stotina partnera: https://partnerdirectory.atlassian.com, uključujući 16 partnera u Rusiji. Preko partnera u Rusiji možete kupiti Atlassian softver, dodatke i proći obuku. Partneri su ti koji razvijaju i podržavaju većinu dodataka.
  5. Trgovina aplikacija (dodaci): https://marketplace.atlassian.com. Dodaci značajno proširuju funkcionalnost Atlassian softvera. Osnovna funkcionalnost softvera Atlassian prilično je skromna; za gotovo svaki zadatak postaje potrebno instalirati dodatne dodatke besplatno ili za dodatni novac. Stoga se troškovi softvera mogu pokazati znatno višima od prvotno procijenjenih.
    Trenutačno je nekoliko tisuća dodataka objavljeno u trgovini, gotovo tisuću njih je testirano i potvrđeno u okviru programa odobrenih aplikacija Data Centera. Takvi se dodaci mogu smatrati stabilnima i prikladnima za korištenje na prometnim sustavima.
    Savjetujem vam da pažljivo pristupite pitanju planiranja dodataka, to uvelike utječe na cijenu rješenja, mnogi dodaci mogu dovesti do nestabilnosti sustava, a proizvođač dodataka ne pruža podršku za rješavanje problema.
  6. Obuka i certifikati: https://www.atlassian.com/university
  7. Podržani su SSO i SAML 2.0 mehanizmi.
  8. Podrška za skalabilnost i toleranciju na pogreške dostupna je samo u izdanjima Data Centera. Ovo se izdanje prvi put pojavilo 2014. (Jira 6.3). Funkcionalnost izdanja Data Centera stalno se proširuje i poboljšava (na primjer, mogućnost instalacije jednog čvora pojavila se tek 2020. godine). Pristup dodacima za izdanja Data Centera uvelike se promijenio 2018. uvođenjem aplikacija odobrenih za Data Center.
  9. Trošak podrške. Trošak podrške od dobavljača gotovo je jednak punom trošku softverskih licenci. U nastavku je dan primjer izračuna troškova licenci.
  10. Nedostatak dugoročnih izdanja. Postoje tzv Enterprise verzije, ali su one, kao i sve druge verzije, podržane 2 godine. S tom razlikom što se za Enterprise verzije objavljuju samo popravci, bez dodavanja novih funkcionalnosti.
  11. Mogućnosti proširene podrške (uz nadoplatu). https://www.atlassian.com/enterprise/support-services
  12. Podržano je nekoliko DBMS opcija. Softver Atlassian dolazi s besplatnim H2 DBMS-om; ovaj DBMS se ne preporučuje za produktivnu upotrebu. Sljedeći DBMS-ovi podržani su za produktivnu upotrebu: Amazon Aurora (samo Data Center) PostgreSQL, Azure SQL, MySQL, Oracle DB, PostgreSQL, MS SQL Server. Postoje ograničenja za podržane verzije i često su podržane samo starije verzije, ali za svaki DBMS postoji verzija s podrškom dobavljača:
    Platforme koje podržava Jira,
    Platforme koje podržava Confluence.

Tehnička arhitektura

Kako implementirati Atlassian Jira + Confluence u korporaciji. Tehnička pitanja

Objašnjenja za dijagram:

  • Dijagram prikazuje implementaciju u našoj banci, ova konfiguracija je navedena kao primjer i nije preporučljiva.
  • nginx pruža funkciju obrnutog proxyja za Jira i Confluence.
  • Tolerancija grešaka DBMS-a implementirana je pomoću DBMS-a.
  • Promjene se prenose između okruženja pomoću dodatka Configuration Manager for Jira.
  • AppSrv na dijagramu je vlasnički aplikacijski poslužitelj za izvješćivanje i ne koristi Atlassian softver.
  • Baza podataka EasyBI stvorena je za izradu kocki i izvješćivanje pomoću dodatka eazyBI Reports and Charts for Jira.
  • Usluga Confluence Synchrony (komponenta koja omogućuje istovremeno uređivanje dokumenata) nije izdvojena u zasebnu instalaciju i pokreće se zajedno s Confluenceom, na istom poslužitelju.

licenciranje

Pitanja licenciranja Atlassiana zaslužuju poseban članak; ovdje ću spomenuti samo opća načela.
Glavni problemi s kojima smo se susreli bili su problemi s licenciranjem za izdanja Data Centera. Značajke licenciranja za izdanja poslužitelja i podatkovnog centra:

  1. Licenca za Server izdanje je trajna i kupac može koristiti softver i nakon isteka licence. Ali nakon isteka licence, kupac je lišen prava na podršku za proizvod i ažuriranje softvera na najnovije verzije.
  2. Licenciranje se temelji na broju korisnika u 'JIRA Users' globalnom sustavu dopuštenja. Nije važno koriste li sustav ili ne - čak i ako se korisnici nikada nisu prijavili na sustav, svi će korisnici biti uzeti u obzir za licencu. Ako je broj licenciranih korisnika premašen, rješenje bi bilo uklanjanje dopuštenja 'JIRA korisnici' za neke korisnike.
  3. Licenca podatkovnog centra zapravo je pretplata. Potrebna je godišnja naknada za licencu. Ako rok istekne, rad sa sustavom bit će blokiran.
  4. Cijene licenci mogu se mijenjati tijekom vremena. Kao što praksa pokazuje, u većoj mjeri i, možda, značajno. Stoga, ako ove godine vaše licence koštaju isti iznos, onda bi sljedeće godine cijena licenci mogla porasti.
  5. Licenciranje se provodi prema korisniku prema razini (na primjer, razina 1001-2000 korisnika). Moguća je nadogradnja na višu razinu, uz nadoplatu.
  6. Ako je broj licenciranih korisnika premašen, kreirat će se novi korisnici bez prava prijave (globalna dozvola 'JIRA korisnici').
  7. Dodaci se mogu licencirati samo za isti broj korisnika kao i glavni softver.
  8. Samo produktivne instalacije moraju biti licencirane; za ostale možete dobiti licencu za razvojne programere: https://confluence.atlassian.com/jirakb/get-a-developer-license-for-jira-server-744526918.html.
  9. Da biste kupili održavanje, morate kupiti Renew Software održavanje - cijena je približno 50% cijene originalnog softvera. Ova značajka nije dostupna za Data Center i ne odnosi se na dodatke; da biste ih podržali, morat ćete plaćati punu cijenu godišnje.
    Stoga godišnja softverska podrška košta više od 50% ukupne cijene softvera u slučaju izdanja Servera i 100% u slučaju izdanja Data Center - to je znatno više od većine drugih dobavljača. Po mom mišljenju, to je značajan nedostatak Atlassianova poslovnog modela.

Značajke prijelaza s izdanja poslužitelja na podatkovni centar:

  1. Postoji naknada za nadogradnju s izdanja poslužitelja na podatkovni centar. Trošak možete pronaći ovdje https://www.atlassian.com/licensing/data-center.
  2. Prilikom prelaska s izdanja poslužitelja na izdanje podatkovnog centra ne morate platiti promjenu izdanja dodataka - dodaci za izdanje poslužitelja će nastaviti funkcionirati. Ali bit će potrebno obnoviti licence za dodatke za izdanje Data Center.
  3. Možda ćete moći koristiti dodatke koji nemaju verziju za upotrebu s izdanjima Data Centera. Međutim, naravno, takvi dodaci možda neće raditi ispravno i bolje je unaprijed osigurati alternativu takvim dodacima.
  4. Prijelaz na izdanje Data Centera provodi se instaliranjem nove licence. Međutim, licenca za izdanje poslužitelja i dalje ostaje dostupna.
  5. Nema funkcionalnih razlika između izdanja Data Center i Server za korisnike, sve su razlike samo u administrativnim funkcijama i mogućnostima tehničke instalacije.
  6. Cijena softvera i dodataka razlikuje se za izdanja poslužitelja i podatkovnog centra. Razlika u cijeni često je manja od 5% (nije značajna). U nastavku je dan primjer izračuna troškova.

Funkcionalni opseg implementacije

Osnovni programski paket Atlassian uključuje ogromnu količinu mogućnosti, ali često mogućnosti koje pruža sustav ozbiljno nedostaju. Ponekad čak ni najjednostavnije funkcije nisu dostupne u osnovnom paketu, tako da su dodaci neophodni za gotovo svaku implementaciju. Za sustav Jira koristimo sljedeće dodatke (slika se može kliknuti):
Kako implementirati Atlassian Jira + Confluence u korporaciji. Tehnička pitanja

Za sustav Confluence koristimo sljedeće dodatke (slika se može kliknuti):
Kako implementirati Atlassian Jira + Confluence u korporaciji. Tehnička pitanja

Komentari o tablicama s dodacima:

  • Sve cijene temelje se na 2000 korisnika;
  • Prikazane cijene temelje se na navedenim cijenama https://marketplace.atlassian.com, stvarni trošak (s popustima) je niži;
  • Kao što vidite, ukupni iznos je praktički isti za izdanja Data Center i Server;
  • Za upotrebu su odabrani samo dodaci koji podržavaju izdanje Data Centera. Isključili smo preostale dodatke iz planova za stabilnost sustava.

Funkcionalnost je ukratko opisana u stupcu Komentar. Dodatni dodaci proširili su funkcionalnost sustava:

  • Dodano nekoliko vizualnih alata;
  • Poboljšani su mehanizmi integracije;
  • Dodani alati za projekte modela vodopada;
  • Dodani alati za skalabilni Scrum, za organiziranje rada velikih projektnih timova;
  • Dodana funkcionalnost za praćenje vremena;
  • Dodani alati za automatizaciju operacija i konfiguraciju rješenja;
  • Dodana funkcionalnost za pojednostavljenje i automatizaciju administracije rješenja.

Dodatno koristimo Aplikacija Atlassian Companion. Ova aplikacija vam omogućuje uređivanje datoteka u vanjskim aplikacijama (MS Office) i njihovo vraćanje natrag u Confluence (check-in).
Aplikacija za korisničke radne stanice (debeli klijent) ALM Works Jira klijent https://marketplace.atlassian.com/apps/7070 odlučio je ne koristiti ga zbog slabe podrške dobavljača i negativnih recenzija.
za integracija s MS Projectom Koristimo aplikaciju koju smo sami napisali koja vam omogućuje ažuriranje statusa problema u MS Projectu iz Jire i obrnuto. U budućnosti, za iste svrhe, planiramo koristiti plaćeni dodatak Septah Bridge - JIRA MS Project Plugin, koji se instalira kao dodatak MS Projectu.
Integracija s vanjskim aplikacijama implementiran putem Linkova aplikacije. U isto vrijeme, za Atlassian aplikacije, integracije su unaprijed konfigurirane i rade odmah nakon konfiguracije, na primjer, možete prikazati informacije o problemima u Jiri na stranici u Confluenceu.
Za pristup Jira i Confluence poslužiteljima koristi se REST API: https://developer.atlassian.com/server/jira/platform/rest-apis.
SOAP i XML-RPC API su zastarjeli i nisu dostupni za korištenje u novijim verzijama.

Zaključak

Dakle, pogledali smo tehničke značajke implementacije sustava temeljenog na Atlassian proizvodima. Predloženo rješenje predstavlja jedno moguće rješenje i dobro je prilagođeno poslovnom okruženju

Predloženo rješenje je skalabilno, otporno na pogreške, sadrži tri okruženja za organiziranje razvoja i testiranja, sadrži sve potrebne elemente za suradnju u sustavu te nudi širok raspon alata za upravljanje projektima.

Rado ću odgovoriti na pitanja u komentarima.

Izvor: www.habr.com