ProHoster > Օրագիր > Վարչակազմը > Ինչպես իրականացնել Atlassian Jira + Confluence կորպորացիայի մեջ: Տեխնիկական հարցեր
Ինչպես իրականացնել Atlassian Jira + Confluence կորպորացիայի մեջ: Տեխնիկական հարցեր
Նախատեսու՞մ եք ներդնել Atlassian ծրագրաշարը (Jira, Confluence): Չե՞ք ուզում դաժան դիզայներական սխալներ թույլ տալ, որոնք այնուհետև պետք է լուծվեն վերջին պահին:
Ուրեմն սա ձեզ համար է. մենք դիտարկում ենք Atlassian Jira + Confluence-ի ներդրումը կորպորացիաներում՝ հաշվի առնելով տարբեր տեխնիկական ասպեկտները:
Ողջույն, ես RSHB-ում Ապրանքի սեփականատեր եմ և պատասխանատու եմ Կյանքի ցիկլի կառավարման համակարգի (LCMS) մշակման համար, որը կառուցված է Atlassian ծրագրային ապահովման արտադրանքների Jira-ի և Confluence-ի վրա:
Այս հոդվածում ես նկարագրելու եմ կյանքի կառավարման համակարգի կառուցման տեխնիկական ասպեկտները: Հոդվածը օգտակար կլինի բոլորի համար, ովքեր ծրագրում են իրականացնել կամ զարգացնել Atlassian Jira-ն և Confluence-ը կորպորատիվ միջավայրում: Հոդվածը հատուկ գիտելիքներ չի պահանջում և նախատեսված է Atlassian ապրանքների հետ նախնական ծանոթության համար: Հոդվածը օգտակար կլինի ադմինիստրատորների, արտադրանքի սեփականատերերի, նախագծերի մենեջերների, ճարտարապետների և բոլոր նրանց, ովքեր նախատեսում են ներդնել Atlassian ծրագրաշարի վրա հիմնված համակարգեր:
Ներածություն
Հոդվածում կքննարկվեն կորպորատիվ միջավայրում կյանքի ցիկլի կառավարման համակարգի (LCMS) ներդրման տեխնիկական հարցերը: Եկեք նախ սահմանենք, թե սա ինչ է նշանակում:
Ի՞նչ է նշանակում կորպորատիվ լուծում:
Սա նշանակում է լուծում.
Ընդարձակելի։ Եթե բեռը մեծանում է, տեխնիկապես հնարավոր է մեծացնել համակարգի հզորությունը: Տարանջատում են հորիզոնական և ուղղահայաց մասշտաբավորում՝ ուղղահայաց մասշտաբով մեծանում է սերվերների հզորությունը, հորիզոնական մասշտաբով՝ համակարգի համար սերվերների թիվը։
Սխալ-հանդուրժող: Համակարգը հասանելի կմնա, եթե մեկ տարր ձախողվի: Ընդհանուր առմամբ, կորպորատիվ համակարգերը չեն պահանջում սխալների հանդուրժողականություն, բայց մենք կդիտարկենք հենց այդպիսի լուծումը: Մենք նախատեսում ենք ունենալ մի քանի հարյուր մրցունակ օգտատերեր մեր համակարգում, և պարապուրդը շատ կարևոր կլինի:
Աջակցված է: Լուծումը պետք է աջակցվի վաճառողի կողմից: Չաջակցվող ծրագրակազմը պետք է փոխարինվի սեփական ծրագրաշարով կամ այլ աջակցվող ծրագրաշարով:
Տեղակայում Ինքնակառավարվող (Ներկայումս): Ինքնակառավարումը ծրագրակազմը ոչ թե ամպում, այլ ձեր սեփական սերվերների վրա տեղադրելու հնարավորությունն է: Ավելի ճշգրիտ լինելու համար, սրանք բոլորը SaaS-ի տեղադրման տարբերակներ են: Այս հոդվածում մենք կքննարկենք տեղադրման տարբերակները միայն ինքնակառավարման համար:
Անկախ մշակման և փորձարկման հնարավորություն: Համակարգում կանխատեսելի փոփոխություններ կազմակերպելու համար անհրաժեշտ է զարգացման առանձին համակարգ (փոփոխություններ բուն համակարգում), թեստավորման համակարգ (Staging) և օգտագործողների համար արդյունավետ համակարգ:
Այլ. Աջակցում է նույնականացման տարբեր սցենարներ, աջակցում է աուդիտի տեղեկամատյաններին, ունի հարմարեցվող դերային մոդել և այլն:
Սրանք ձեռնարկատիրական լուծումների հիմնական տարրերն են և, ցավոք, հաճախ մոռացվում են համակարգը նախագծելիս:
Ի՞նչ է կյանքի ցիկլի կառավարման համակարգը (LCMS):
Մի խոսքով, մեր դեպքում դրանք Atlassian Jira-ն և Atlassian Confluence-ն են՝ համակարգ, որն ապահովում է թիմային աշխատանքի կազմակերպման գործիքներ: Համակարգը չի «պարտադրում» աշխատանքի կազմակերպման կանոններ, այլ տրամադրում է աշխատանքի մի շարք գործիքներ, այդ թվում՝ Scrum, Kanban տախտակներ, ջրվեժի մոդել, ընդլայնվող Scrum և այլն:
LMS անվանումը արդյունաբերական տերմին կամ սովորաբար օգտագործվող հասկացություն չէ, այն պարզապես համակարգի անվանումն է մեր Բանկում: Մեզ համար LMS-ը սխալների հետագծման համակարգ չէ, ոչ էլ Միջադեպերի կառավարման համակարգ կամ Փոփոխությունների կառավարման համակարգ:
Ի՞նչ է ներառում իրականացումը:
Լուծման իրականացումը բաղկացած է բազմաթիվ տեխնիկական և կազմակերպչական խնդիրներից.
Տեխնիկական կարողությունների տեղաբաշխում.
Ծրագրային ապահովման գնում.
Լուծումն իրականացնելու համար թիմի ստեղծում:
Լուծման տեղադրում և կազմաձևում:
Լուծումների ճարտարապետության մշակում: Դերային մոդել.
Գործառնական փաստաթղթերի մշակում, ներառյալ հրահանգներ, կանոնակարգեր, տեխնիկական դիզայն, կանոնակարգեր և այլն:
Ընկերության գործընթացների փոփոխություն:
Աջակցող թիմի ստեղծում: SLA զարգացում.
Օգտագործողների ուսուցում.
Այլ.
Այս հոդվածում մենք կանդրադառնանք իրականացման տեխնիկական ասպեկտներին՝ առանց կազմակերպչական բաղադրիչի մանրամասների:
Atlassian-ի արտադրանքն ապահովում է ձեզ անհրաժեշտ ձեռնարկության բոլոր հատկանիշները: Նշեմ հետևյալ հատկանիշները.
Atlassian լուծումները հիմնված են Java Tomcat վեբ սերվերի վրա: Apache Tomcat ծրագրակազմը ներառված է Atlassian ծրագրաշարի հետ՝ որպես տեղադրման մաս: Դուք չեք կարող փոխել Apache Tomcat-ի տարբերակը, որը տեղադրված է որպես Atlassian ծրագրաշարի մաս, նույնիսկ եթե տարբերակը հնացած է և պարունակում է խոցելիություններ: Միակ տարբերակը Atlassian-ից թարմացման սպասելն է՝ Apache Tomcat-ի ավելի նոր տարբերակով: Այժմ, օրինակ, Jira-ի ներկայիս տարբերակներն ունեն Apache Tomcat 8.5.42, իսկ Confluence-ն ունի Apache Tomcat 9.0.33:
Օգտագործողի համար հարմար ինտերֆեյս, այս դասի ծրագրային ապահովման համար շուկայում առկա լավագույն փորձը ներդրված է:
Լիովին հարմարեցված լուծում: Փոփոխություններով դուք կարող եք իրականացնել ցանկացած փոփոխություն հիմնական ֆունկցիոնալության մեջ օգտագործողի համար:
Զարգացած էկոհամակարգ. Կան մի քանի հարյուր գործընկերներ. https://partnerdirectory.atlassian.com, այդ թվում՝ 16 գործընկեր Ռուսաստանում։ Ռուսաստանում գործընկերների միջոցով է, որ դուք կարող եք գնել Atlassian ծրագրակազմ, պլագիններ և անցնել վերապատրաստում: Դա գործընկերներն են, ովքեր մշակում և աջակցում են պլագինների մեծամասնությանը:
Հավելվածների խանութ (պլագիններ). https://marketplace.atlassian.com. Փլագինները զգալիորեն ընդլայնում են Atlassian ծրագրաշարի ֆունկցիոնալությունը: Atlassian ծրագրաշարի հիմնական ֆունկցիոնալությունը բավականին համեստ է, գրեթե ցանկացած առաջադրանքի համար անհրաժեշտ է դառնում տեղադրել լրացուցիչ հավելյալ հավելումներ անվճար կամ լրացուցիչ գումարի դիմաց: Հետևաբար, ծրագրային ապահովման ծախսերը կարող են զգալիորեն ավելի բարձր լինել, քան սկզբնապես գնահատվել էր:
Ներկայումս խանութում հրապարակվել են մի քանի հազար պլագիններ, որոնցից գրեթե հազարը փորձարկվել և վավերացվել են Տվյալների կենտրոնի կողմից հաստատված հավելվածների ծրագրի շրջանակներում: Նման հավելումները կարելի է համարել կայուն և հարմար զբաղված համակարգերում օգտագործելու համար։
Ես ձեզ խորհուրդ եմ տալիս ուշադիր մոտենալ պլագինների պլանավորման հարցին, դա մեծապես ազդում է լուծման արժեքի վրա, պլագիններից շատերը կարող են հանգեցնել համակարգի անկայունության, իսկ փլագինների արտադրողը աջակցություն չի տրամադրում խնդրի լուծման համար:
Ընդարձակելիության և սխալների հանդուրժողականության աջակցությունը հասանելի է միայն Տվյալների կենտրոնի հրատարակություններում: Այս հրատարակությունն առաջին անգամ հայտնվել է 2014 թվականին (Jira 6.3): Տվյալների կենտրոնի հրատարակությունների ֆունկցիոնալությունը մշտապես ընդլայնվում և բարելավվում է (օրինակ, մեկ հանգույցի տեղադրման հնարավորությունը հայտնվել է միայն 2020 թվականին): Տվյալների կենտրոնի հրատարակությունների համար հավելվածների մոտեցումը շատ փոխվեց 2018 թվականին՝ Տվյալների կենտրոնի հաստատված հավելվածների ներդրմամբ:
Աջակցության արժեքը. Վաճառողի կողմից աջակցության արժեքը գրեթե հավասար է ծրագրային ապահովման լիցենզիաների ամբողջ արժեքին: Ստորև բերված է լիցենզիաների արժեքի հաշվարկման օրինակ:
Երկարաժամկետ թողարկումների բացակայություն: Կան այսպես կոչված Ձեռնարկությունների տարբերակները, բայց դրանք, ինչպես մյուս բոլոր տարբերակները, աջակցվում են 2 տարի։ Այն տարբերությամբ, որ Enterprise տարբերակների համար թողարկվում են միայն շտկումներ՝ առանց նոր ֆունկցիոնալության ավելացման։
Աջակցվում են DBMS-ի մի քանի տարբերակներ: Atlassian ծրագիրը տրամադրվում է անվճար H2 DBMS-ով, այս DBMS-ը խորհուրդ չի տրվում արդյունավետ օգտագործման համար: Հետևյալ DBMS-ներն ապահովված են արդյունավետ օգտագործման համար՝ Amazon Aurora (միայն տվյալների կենտրոն) PostgreSQL, Azure SQL, MySQL, Oracle DB, PostgreSQL, MS SQL Server: Աջակցվող տարբերակների վրա կան սահմանափակումներ, և հաճախ միայն ավելի հին տարբերակներն են աջակցվում, բայց յուրաքանչյուր DBMS-ի համար կա վաճառողի աջակցությամբ տարբերակ. Jira-ի աջակցվող հարթակներ, Confluence-ի աջակցվող հարթակներ.
Տեխնիկական ճարտարապետություն
Դիագրամի բացատրություններ.
Դիագրամը ցույց է տալիս իրականացումը մեր Բանկում, այս կոնֆիգուրացիան տրված է որպես օրինակ և խորհուրդ չի տրվում:
nginx-ն ապահովում է հակադարձ վստահված անձի գործառույթ ինչպես Jira-ի, այնպես էլ Confluence-ի համար:
DBMS-ի սխալների հանդուրժողականությունը իրականացվում է DBMS-ի միջոցով:
Փոփոխությունները փոխանցվում են միջավայրերի միջև՝ օգտագործելով Jira կոնֆիգուրացիայի կառավարիչը:
Դիագրամում AppSrv-ն սեփական կիրառական սերվեր է հաշվետվությունների համար և չի օգտագործում Atlassian ծրագրակազմ:
EasyBI տվյալների բազան ստեղծվել է խորանարդներ ստեղծելու և հաշվետվություններ ներկայացնելու համար՝ օգտագործելով eazyBI Reports and Charts for Jira հավելվածը:
Confluence Synchrony ծառայությունը (բաղադրիչ, որը թույլ է տալիս միաժամանակ խմբագրել փաստաթղթերը) առանձնացված չէ առանձին տեղադրման մեջ և գործարկվում է Confluence-ի հետ միասին՝ նույն սերվերում:
Լիցենզավորում
Atlassian լիցենզավորման հարցերը արժանի են առանձին հոդվածի, այստեղ ես միայն կնշեմ ընդհանուր սկզբունքները։
Հիմնական խնդիրները, որոնց մենք հանդիպեցինք, տվյալների կենտրոնի հրատարակությունների լիցենզավորման խնդիրներն էին: Սերվերի և տվյալների կենտրոնի հրատարակությունների լիցենզավորման առանձնահատկությունները.
Սերվերի հրատարակության լիցենզիան հավերժական է, և գնորդը կարող է օգտագործել ծրագրաշարը նույնիսկ լիցենզիայի ժամկետի ավարտից հետո: Բայց լիցենզիայի ժամկետը լրանալուց հետո գնորդը կորցնում է արտադրանքի համար աջակցություն ստանալու և ծրագրաշարը վերջին տարբերակներին թարմացնելու իրավունքը:
Լիցենզավորումը հիմնված է «JIRA Users» գլոբալ թույլտվությունների համակարգում օգտագործողների թվի վրա: Կարևոր չէ՝ նրանք օգտվում են համակարգից, թե ոչ. նույնիսկ եթե օգտատերերը երբեք չեն մուտք գործել համակարգ, բոլոր օգտվողները հաշվի կառնվեն լիցենզիայի համար: Եթե լիցենզավորված օգտատերերի թիվը գերազանցվի, լուծումը կլինի որոշ օգտատերերից «JIRA Users» թույլտվությունը հեռացնելը:
Տվյալների կենտրոնի լիցենզիան իրականում բաժանորդագրություն է: Պահանջվում է տարեկան լիցենզիայի վճար: Եթե ժամկետը լրանա, համակարգի հետ աշխատանքը կարգելափակվի:
Լիցենզիայի գները կարող են փոխվել ժամանակի ընթացքում: Ինչպես ցույց է տալիս պրակտիկան, ավելի մեծ չափով և, գուցե, զգալիորեն: Հետևաբար, եթե այս տարի ձեր լիցենզիաները նույնքան արժեն, ապա հաջորդ տարի լիցենզիաների արժեքը կարող է աճել։
Լիցենզավորումն իրականացվում է օգտագործողի կողմից ըստ աստիճանների (օրինակ՝ մակարդակ 1001-2000 օգտագործողներ): Հնարավոր է արդիականացում ավելի բարձր աստիճանի, հավելավճարով։
Եթե լիցենզավորված օգտատերերի թիվը գերազանցի, նոր օգտատերեր կստեղծվեն առանց մուտք գործելու իրավունքի («JIRA Users» գլոբալ թույլտվություն):
Փլագինները կարող են լիցենզավորվել միայն նույն թվով օգտագործողների համար, որքան հիմնական ծրագրաշարը:
Սպասարկում գնելու համար դուք պետք է գնեք Renew Software-ի սպասարկում. արժեքը կազմում է սկզբնական ծրագրաշարի արժեքի մոտավորապես 50%-ը: Այս հատկությունը հասանելի չէ Տվյալների կենտրոնի համար և չի տարածվում փլագինների վրա, դրանց աջակցելու համար դուք պետք է տարեկան վճարեք ամբողջ գինը:
Այսպիսով, ծրագրային ապահովման տարեկան աջակցությունն արժե ծրագրային ապահովման ընդհանուր արժեքի ավելի քան 50%-ը Server հրատարակության դեպքում և 100%-ը՝ Տվյալների կենտրոնի հրատարակության դեպքում, ինչը զգալիորեն ավելին է, քան մյուս վաճառողներից շատերը: Իմ կարծիքով, սա Atlassian-ի բիզնես մոդելի էական թերությունն է։
Սերվերի խմբագրությունից տվյալների կենտրոն անցնելու առանձնահատկությունները.
Սերվերային տարբերակից Տվյալների կենտրոնին անցնելիս ձեզ հարկավոր չէ վճարել պլագինների խմբագրությունը փոխելու համար. սերվերի հրատարակության հավելումները կշարունակեն գործել: Բայց անհրաժեշտ կլինի թարմացնել լիցենզիաները տվյալների կենտրոնի հրատարակության համար հավելումների համար:
Հնարավոր է, որ դուք կարողանաք օգտագործել պլագիններ, որոնք չունեն տվյալների կենտրոնի հրատարակությունների հետ օգտագործման տարբերակ: Այնուամենայնիվ, իհարկե, նման պլագինները կարող են ճիշտ չաշխատել, և ավելի լավ է նախօրոք նման պլագիններին այլընտրանք տրամադրել։
Տվյալների կենտրոնի խմբագրությանն անցումը կատարվում է նոր լիցենզիա տեղադրելով։ Այնուամենայնիվ, սերվերի հրատարակության լիցենզիան դեռևս հասանելի է:
Օգտատերերի համար Data Center-ի և Server հրատարակությունների միջև ֆունկցիոնալ տարբերություններ չկան, բոլոր տարբերությունները միայն վարչական գործառույթների և տեխնիկական տեղադրման հնարավորությունների մեջ են:
Ծրագրային ապահովման և հավելումների արժեքը տատանվում է Սերվերի և Տվյալների կենտրոնի հրատարակությունների համար: Արժեքի տարբերությունը հաճախ 5%-ից պակաս է (էական չէ): Ստորև բերված է ծախսերի հաշվարկման օրինակ:
Իրականացման ֆունկցիոնալ շրջանակը
Atlassian հիմնական ծրագրային փաթեթը ներառում է հսկայական հնարավորություններ, սակայն հաճախ համակարգի կողմից տրամադրվող հնարավորությունները խիստ բացակայում են: Երբեմն նույնիսկ ամենապարզ գործառույթները հասանելի չեն հիմնական փաթեթում, ուստի պլագիններն անփոխարինելի են գրեթե ցանկացած իրականացման համար: Jira համակարգի համար մենք օգտագործում ենք հետևյալ պլագինները (կարելի է սեղմել նկարը).
Confluence համակարգի համար մենք օգտագործում ենք հետևյալ պլագինները (կարելի է սեղմել նկարը).
Ինչպես տեսնում եք, ընդհանուր գումարը գործնականում նույնն է Data Center-ի և Server հրատարակությունների համար.
Օգտագործման համար ընտրվում են միայն պլագինները, որոնք աջակցում են Տվյալների կենտրոնի հրատարակությանը: Մենք բացառեցինք մնացած պլագինները համակարգի կայունության պլաններից:
Ֆունկցիոնալությունը համառոտ նկարագրված է Comment սյունակում: Լրացուցիչ հավելումներ ընդլայնել են համակարգի ֆունկցիոնալությունը.
Ավելացվել են ընդլայնելի Scrum-ի գործիքներ՝ խոշոր նախագծային թիմերի աշխատանքը կազմակերպելու համար;
Ավելացված ֆունկցիոնալություն ժամանակի հետևման համար;
Գործողությունների ավտոմատացման և լուծումը կարգավորելու համար ավելացված գործիքներ;
Ավելացվեց գործառույթ՝ պարզեցնելու և ավտոմատացնելու լուծման կառավարումը:
Բացի այդ, մենք օգտագործում ենք Atlassian Companion հավելված. Այս հավելվածը թույլ է տալիս խմբագրել ֆայլերը արտաքին հավելվածներում (MS Office) և վերադարձնել դրանք Confluence (ստուգում):
Դիմում օգտագործողի աշխատատեղերի համար (հաստ հաճախորդ) ALM Works Jira Clienthttps://marketplace.atlassian.com/apps/7070 որոշեց չօգտագործել այն վաճառողի վատ աջակցության և բացասական ակնարկների պատճառով:
Համար ինտեգրում MS Project-ի հետ Մենք օգտագործում ենք ինքնուրույն գրված հավելված, որը թույլ է տալիս թարմացնել MS Project-ի խնդիրների կարգավիճակները Jira-ից և հակառակը: Հետագայում, նույն նպատակների համար, մենք նախատեսում ենք օգտագործել վճարովի հավելված Septah Bridge - JIRA MS Project Plugin, որը տեղադրվում է որպես MS Project-ի հավելում։ Ինտեգրում արտաքին հավելվածների հետ իրականացվում է Application Links-ի միջոցով: Միևնույն ժամանակ, Atlassian հավելվածների համար ինտեգրումները նախապես կազմաձևված են և աշխատում են կազմաձևումից անմիջապես հետո, օրինակ՝ Դուք կարող եք տեղեկատվություն ցուցադրել Jira-ի խնդիրների մասին Confluence-ի էջում:
Jira և Confluence սերվերներ մուտք գործելու համար օգտագործվում է REST API. https://developer.atlassian.com/server/jira/platform/rest-apis.
SOAP-ը և XML-RPC API-ն հնացած են և հասանելի չեն նոր տարբերակներում օգտագործելու համար:
Ամփոփում
Այսպիսով, մենք դիտարկեցինք Atlassian արտադրանքի վրա հիմնված համակարգի ներդրման տեխնիկական առանձնահատկությունները: Առաջարկվող լուծումը ներկայացնում է մեկ հնարավոր լուծում և լավ պիտանի է ձեռնարկության միջավայրի համար
Առաջարկվող լուծումը մասշտաբային է, սխալ հանդուրժող, պարունակում է մշակման և փորձարկման կազմակերպման երեք միջավայր, պարունակում է համակարգում համագործակցության համար անհրաժեշտ բոլոր տարրերը և ապահովում է նախագծերի կառավարման գործիքների լայն շրջանակ: