Кызмат менеджеринин s6-rc 0.5.3.0 жана инициализациялоо системасы s6-linux-init 1.0.7 чыгарылышы

Кызмат менеджеринин s6-rc 0.5.3.0 олуттуу релизи даярдалды, ал көз карандылыктарды эске алуу менен инициализация скрипттерин жана кызматтарын ишке киргизүүнү башкаруу үчүн иштелип чыккан. s6-rc инструменттери инициализация системаларында да, системанын абалынын өзгөрүшүн чагылдырган окуяларга байланыштуу каалаган кызматтарды ишке киргизүүнү уюштуруу үчүн да колдонсо болот. Көрсөтүлгөн абалга жетүү үчүн толук көз карандылык дарагына көз салууну жана кызматтарды автоматтык түрдө баштоону же өчүрүүнү камсыздайт. Код С тилинде жазылган жана ISC лицензиясы боюнча таратылат.

Sysv-rc же OpenRCтин аналогу катары каралышы мүмкүн болгон s6-rc сервис менеджери узакка созулган процесстерди (демондор) же токтоосуз токтотулган инициализация скрипттерин баштоо жана токтотуу үчүн утилиталардын топтомун камтыйт. Жумуштун жүрүшүндө компоненттердин ортосундагы көз карандылыктар эске алынат, бири-бири менен кесилишпеген скрипттердин жана кызматтардын параллелдүү ишке кириши камсыздалат жана скрипттин аткарылышынын ырааттуулугу ар кандай ишке киргизүүдө кайталанууга кепилдик берилет. Бардык абалдын өзгөртүүлөрү көз карандылыктарды эске алуу менен иштетилет, көз карандылык бузулбаганына ынануу (мисалы, кызмат башталганда, анын иштеши үчүн зарыл болгон көз карандылыктар автоматтык түрдө ишке кирет, ал эми токтогондо, көз каранды кызматтар да токтотулат).

Иштеп чыгуу деңгээлинин ордуна, s6-rc пакеттердин универсалдуу концепциясын сунуштайт, ал кызматтарды ыктыярдуу мүнөздөмөлөргө жана чечиле турган милдеттерге ылайык топтоого мүмкүндүк берет. Иштин натыйжалуулугун жогорулатуу үчүн, кызматтарды баштоо/токтоо үчүн файлдары бар каталогдордун мазмунуна негизделген s6-rc-compile утилитасы тарабынан түзүлгөн компиляцияланган көз карандылык базасы колдонулат. s6-rc-db жана s6-rc-update утилиталары маалымат базасын талдоо жана манипуляциялоо үчүн сунушталат. Система sysv-initге туура келген init скрипттерин колдойт жана sysv-rc же OpenRCден көз карандылык маалыматын импорттой алат.

s6-rc артыкчылыктарынын арасында түз маселелерди чечүү үчүн компоненттерден башка ашыкча эч нерсе камтыбаган жана минималдуу ресурстарды талап кылган компакт ишке ашыруу болуп саналат. Башка сервис менеджерлеринен айырмаланып, s6-rc учурдагы кызматтардын топтому үчүн көз карандылык графигин проактивдүү (офлайн) түзүүнү колдойт, бул жүктөө же абалды өзгөртүү учурунда эмес, ресурсту көп талап кылган көз карандылыктын анализин өзүнчө жүргүзүүгө мүмкүндүк берет. Ошол эле учурда система монолиттүү эмес жана өзүнчө жана алмаштырылуучу модулдардын сериясына бөлүнөт, алардын ар бири Unix философиясына ылайык, белгилүү бир тапшырманы гана чечет.

Процесстердин иштешин көзөмөлдөгөн s6 утилиталары менен айкалышта (даemontools жана runitтин аналогу) инструменттер топтому бир эле учурда узакка созулган кызматтардын иштешин көзөмөлдөөгө мүмкүндүк берет, мисалы, анормалдуу токтотулган учурда аларды кайра иштетүү жана ырааттуулукту камсыз кылуу. командалар ар кандай стартаптарда кайталануучу түрдө ишке киргизилет. Колдоого алынган функцияларга розеткага кирүүдө кызматты активдештирүү (тармак портуна кирүүдө иштеткичти ишке киргизүү), процесс окуяларын жазуу (syslogd алмаштыруу) жана контролдонуучу кошумча артыкчылыктарды берүү (sudoго окшош).

Ошол эле учурда s6-linux-init 1.0.7.0 пакетинин релизи бар, ал Linux ядросунун негизинде операциялык системалар үчүн даяр init системаларын куруу үчүн init процессин ишке ашырууну сунуштайт, анда s6 жана s6 -rc утилиталары кызматтарды жана инициализация скрипттерин башкаруу үчүн колдонулат. Ошол эле учурда, s6 жана s6-rc s6-linux-init менен байланышкан эмес жана каалаган болсо, каалаган инициализация системалары менен колдонсо болот.

Мындан тышкары, долбоор төмөнкүлөрдү камсыз кылат:

  • s6-networking - ucspi сыяктуу тармактык кызматтарды түзүү үчүн утилиталардын жыйындысы.
  • s6-frontend - s6 үстүндөгү демонтолдордун жана руниттин функцияларын кайра түзүү үчүн негиз.
  • s6-portable-utils бул cut, chmod, ls, sort жана grep сыяктуу стандарттуу Unix утилиталарынын жыйындысы, ресурсту минималдуу керектөө үчүн оптималдаштырылган жана ISC лицензиясы боюнча берилген.
  • s6-linux-utils - chroot, freeramdisk, logwatch, mount жана swapon сыяктуу Linux үчүн атайын утилиталардын жыйындысы.
  • s6-dns бул BIND жана djbdns стандарттык DNS утилиттерин алмаштырган кардар китепканаларынын жана утилиталарынын жыйындысы.

s6-rc жаңы версиясында s6-rc-compile утилитасы файлдардын ордуна көз карандылыктар жана кызматтардын топтому жөнүндө маалыматтарды окууну ишке ашырат. Каталогдорду колдонуу пакет менеджери аркылуу программаларды орнотууда көз карандылыктар жөнүндө маалыматы бар маалыматтар базасына кызматтарды кошууну жеңилдетет, анткени бул файлдарга өзгөртүүлөрдү киргизбестен жасоого мүмкүндүк берет. Шайкештикти камсыз кылуу үчүн эски файлга негизделген форматты колдоо сакталды. s6-linux-initтин жаңы версиясында контейнерлердеги маалыматтарды синхрондоштуруу үчүн s6-linux-init-maker утилитасына "-S" опциясы кошулган.

Source: opennet.ru

Комментарий кошуу