LDAP սերվերի թողարկում ReOpenLDAP 1.2.0

Հրապարակվել է LDAP սերվերի ReOpenLDAP 1.2.0 պաշտոնական թողարկումը, որը ստեղծվել է նախագիծը վերակենդանացնելու համար GitHub-ում դրա պահեստն արգելափակելուց հետո: Ապրիլին GitHub-ը հեռացրեց բազմաթիվ ռուս ծրագրավորողների հաշիվներն ու պահոցները, որոնք կապված էին ԱՄՆ պատժամիջոցների տակ գտնվող ընկերությունների հետ, ներառյալ ReOpenLDAP պահեստը: ReOpenLDAP-ի նկատմամբ օգտատերերի հետաքրքրության վերածննդի պատճառով որոշվեց նախագիծը կյանքի կոչել:

ReOpenLDAP նախագիծը ստեղծվել է 2014 թվականին՝ լուծելու այն խնդիրները, որոնք ծագել են OpenLDAP փաթեթը PJSC MegaFon-ի ենթակառուցվածքում օգտագործելիս, որտեղ LDAP սերվերը ներգրավված էր ենթակառուցվածքային ենթահամակարգերից մեկում (NGDR-ը UDR է (User Data Repository)՝ համաձայն 3GPP 23.335 ստանդարտ, և հանդիսանում է կենտրոնացված հանգույց՝ հեռահաղորդակցության օպերատորի ՏՏ ենթակառուցվածքում բաժանորդային ծառայությունների բոլոր տեսակների վերաբերյալ տվյալների պահպանման համար): Նման հավելվածը ենթադրում էր արդյունաբերական շահագործում կոնկրետ LDAP գրացուցակի 24×7 ռեժիմով՝ 10-100 միլիոն մուտքագրման չափով, բարձր ծանրաբեռնվածության սցենարով (10K թարմացումներ և 50K ընթերցումներ վայրկյանում) և բազմաբնույթ վարպետ տոպոլոգիայում:

Symas Corp-ը, որպես OpenLDAP կոդի հիմնական մշակողները, կոմիտերները և սեփականատերերը, չկարողացան լուծել առաջացած խնդիրները, ուստի նրանք որոշեցին փորձել դա անել իրենք: Ինչպես հետագայում պարզվեց, կոդում շատ ավելի շատ սխալներ կային, քան կարելի էր սպասել: Հետևաբար, պլանավորվածից ավելի շատ ջանք է ծախսվել, և ReOpenLDAP-ը դեռևս որոշակի արժեք է ներկայացնում և (ըստ առկա տեղեկատվության) միակ LDAP սերվերն է, որը լիովին և հուսալիորեն աջակցում է RFC-4533-ի բազմաբնույթ տոպոլոգիան, ներառյալ բարձր ծանրաբեռնվածության սցենարները:

2016 թվականին իրականացվել են ծրագրի նպատակները, և ավարտվել է ծրագրի աջակցությունն ու զարգացումը անմիջապես «Մեգաֆոն» ՓԲԸ-ի շահերից: Այնուհետև ReOpenLDAP-ը ակտիվորեն մշակվեց և աջակցվեց ևս երեք տարի, բայց աստիճանաբար այն կորցրեց իր իմաստը.

  • Տեխնոլոգիապես MegaFon-ը ReOpenLDAP-ից տեղափոխվեց Tarantool, ինչը ճարտարապետական ​​առումով ճիշտ է.
  • Չկային հստակ հետաքրքրված ReOpenLDAP օգտվողներ.
  • Ծրագրավորողներից ոչ մեկը չմիացավ նախագծին և՛ մուտքի բարձր շեմի, և՛ հենց ReOpenLDAP-ի ցածր պահանջարկի պատճառով;
  • Մշակումը և աջակցությունը սկսեցին չափազանց շատ ժամանակ խլել մնացած (հիմնական) մշակողից, քանի որ նա մասնագիտորեն հեռացավ ReOpenLDAP-ի արդյունաբերական գործունեությունից:

Ոչ ակտիվ վիճակում ReOpenLDAP պահոցը գոյություն ուներ մինչև 2022 թվականի ապրիլը, երբ Github-ի վարչակազմը ջնջեց հարակից հաշիվները և պահոցն ինքը՝ առանց որևէ նախազգուշացման կամ բացատրության: Վերջերս հեղինակը ստացել է մի քանի հարցումներ ReOpenLDAP-ի վերաբերյալ, ներառյալ պահեստի գտնվելու վայրը և կոդերի բազայի կարգավիճակը: Ուստի որոշվեց նվազագույնը թարմացնել նախագիծը, ստեղծել տեխնիկական թողարկում և օգտագործել այս նորությունը բոլոր հետաքրքրվածներին տեղեկացնելու համար։

Ծրագրի ներկա կարգավիճակը, ներառյալ OpenLDAP-ի վերաբերյալ.

  • Բարելավումներ և ուղղումներ OpenLDAP-ից չեն ներմուծվել 2018 թվականի դեկտեմբերից: Կարևոր հավելվածների համար դուք պետք է վերլուծեք OpenLDAP-ի բոլոր ուղղումները և ներմուծեք համապատասխանները:
  • OpenLDAP-ի ընթացիկ տարբերակներն այժմ հիմնված են 2.5 մասնաճյուղի վրա: Հետևաբար, ստորև նկարագրված փոփոխությունները կատարվել են միայն «զարգացման» մասնաճյուղում (որը համապատասխանում էր OpenLDAP 2.5-ին), այնուհետև միաձուլվել է «վարպետ» մասնաճյուղին (որը համապատասխանում էր OpenLDAP 2.4-ին մինչև միաձուլումը):
  • 2018 թվականին OpenLDAP-ից ժառանգված config-backend-ի հետ կապված խնդիրները պահպանվեցին: Մասնավորապես, config-backend-ի միջոցով սերվերի կոնֆիգուրացիան փոխելու ժամանակ (LDAP-ի կարգավորումը LDAP-ի միջոցով), տեղի են ունենում մրցավազքի պայմաններ կամ ռեկուրսիվ խնդիրներ, ներառյալ փակուղիները:
  • Ենթադրաբար, կառուցման հետ կապված խնդիրներ կան OpenSSL/GnuTLS-ի ընթացիկ տարբերակների հետ;
  • Անցնում է սեփականության թեստերի հիմնական շարք՝ բացառությամբ TLS/SSL պահանջողներին.

Վերջին բարելավումները.

  • libmdbx գրադարանը թարմացվել է վերջին տարբերակով՝ վերացնելով բոլոր նշված անհամատեղելիության խնդիրները, որոնք առաջացել են գրադարանի զարգացման պատճառով: Այնուամենայնիվ, տղամարդու էջերում, հավանաբար, որոշ հնացած տեղեկություններ կան:
  • Օգտագործվում է autotools 2.71-ի ընթացիկ տարբերակը:
  • Փոքր փոփոխություններ են կատարվել ընթացիկ gcc 11.2 կոմպիլյատորի որոշ նախազգուշացումներից հետո:

Source: opennet.ru

Добавить комментарий