MirageOS 3.6-ի թողարկում՝ հիպերվիզորի վերևում հավելվածներ գործարկելու հարթակ

տեղի ունեցավ նախագծի թողարկում Mirage OS 3.6, որը թույլ է տալիս ստեղծել օպերացիոն համակարգեր մեկ հավելվածի համար, որում հավելվածը մատուցվում է որպես ինքնուրույն «unikernel», որը կարող է իրականացվել առանց օպերացիոն համակարգերի, առանձին ՕՀ միջուկի և որևէ շերտի: OCaml լեզուն օգտագործվում է հավելվածներ մշակելու համար: Ծրագրի կոդը տարածվում է անվճար ISC լիցենզիայի ներքո:

Օպերացիոն համակարգին բնորոշ ցածր մակարդակի բոլոր գործառույթներն իրականացվում են հավելվածին կցված գրադարանի տեսքով: Հավելվածը կարող է մշակվել ցանկացած ՕՀ-ում, որից հետո այն կազմվում է մասնագիտացված միջուկի մեջ (հայեցակարգ միաեղջյուր), որը կարող է գործարկվել անմիջապես Xen, KVM, BHyve և VMM (OpenBSD) հիպերվիզորների վրա, շարժական հարթակների վերևում, որպես գործընթաց POSIX-ին համապատասխան միջավայրում կամ Amazon Elastic Compute Cloud և Google Compute Engine ամպային միջավայրերում:

Ստեղծված միջավայրը ավելորդ ոչինչ չի պարունակում և ուղղակիորեն փոխազդում է հիպերվիզորի հետ՝ առանց դրայվերների կամ համակարգի շերտերի, ինչը թույլ է տալիս զգալի կրճատել ընդհանուր ծախսերը և բարձրացնել անվտանգությունը: MirageOS-ի հետ աշխատելը հանգում է երեք փուլի՝ կազմաձևի պատրաստում շրջակա միջավայրում օգտագործվողների նույնականացմամբ: OPAM փաթեթներ, շրջակա միջավայրի կառուցում և շրջակա միջավայրի գործարկում: Xen-ի վերևում գործարկելու ժամանակը հիմնված է հանված միջուկի վրա Մինի-ՕՀև այլ հիպերվիզորների և միջուկի վրա հիմնված համակարգերի համար Մենակատար 5.

Չնայած այն հանգամանքին, որ հավելվածներն ու գրադարանները ստեղծվում են բարձր մակարդակի OCaml լեզվով, արդյունքում ստացված միջավայրերը ցույց են տալիս բավականին լավ կատարում և նվազագույն չափ (օրինակ, DNS սերվերը զբաղեցնում է ընդամենը 200 ԿԲ): Պարզեցված է նաև միջավայրերի սպասարկումը, քանի որ եթե անհրաժեշտ է թարմացնել ծրագիրը կամ փոխել կոնֆիգուրացիան, բավական է ստեղծել և գործարկել նոր միջավայր: Աջակցված է մի քանի տասնյակ գրադարաններ OCaml լեզվով ցանցային գործողություններ կատարելու համար (DNS, SSH, OpenFlow, HTTP, XMPP և այլն), աշխատել պահեստավորման հետ և ապահովել տվյալների զուգահեռ մշակում:

Նոր թողարկման հիմնական փոփոխությունները կապված են գործիքակազմում առաջարկվող նոր հնարավորությունների համար աջակցության տրամադրման հետ Solo5 0.6.0 (Sandbox միջավայր unikernel-ի գործարկման համար).

  • Ավելացվեց unikernel MirageOS-ը մեկուսացված միջավայրում գործարկելու հնարավորություն բ («ավազապատ գործընթացի մրցույթ») տրամադրված է գործիքակազմով Մենակատար 5. spt backend-ն օգտագործելիս MirageOS միջուկներն աշխատում են Linux-ի օգտատերերի գործընթացներում, որոնց վրա կիրառվում է նվազագույն մեկուսացում՝ հիմնվելով seccomp-BPF-ի վրա;
  • Իրականացված աջակցություն դիմումի մանիֆեստ Solo5 նախագծից, որը թույլ է տալիս սահմանել մի քանի ցանցային ադապտերներ և պահեստային սարքեր, որոնք կցված են unikernel-ին մեկուսացված՝ հիմնված hvt, spt և muen backend-ների վրա (genode և virtio backend-ների համար օգտագործումը ներկայումս սահմանափակված է մեկ սարքով);
  • Ամրապնդվել է Solo5-ի (hvt, spt) վրա հիմնված backend-ների պաշտպանությունը, օրինակ՝ տրամադրվել է SSP (Stack Smashing Protection) ռեժիմով կառուցում։

Source: opennet.ru

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