FreeBSD үчүн жаңы rcd система менеджери иштелип чыгууда.

FreeBSD Core Team мүчөсү жана pkg пакет менеджеринин автору Баптист Даруссин FreeBSD үчүн жаңы система менеджерин — rcd — иштеп чыгууда. rcd система менеджери /etc/rc ордуна init процесси тарабынан чакырылат, кызмат конфигурация файлдарын (/etc/rcd.d/*.ucl) окуйт, көз карандылык дарагын түзөт жана мүмкүн болгон учурда кызматтарды параллель түрдө баштайт. Андан кийин ал кызматтарды көзөмөлдөп, зарыл болсо, аларды кайра баштайт.

Фондук процессти жана кызматтар менен операцияларды башкаруу буйруктарды түздөн-түз UNIX сокетине жөнөтүү же rctl буйрук сабынын утилитасын колдонуу менен аткарылышы мүмкүн. Кызмат параметрлери бар бирдик файлдары UCL форматында форматталат, ал nginx форматына окшош жана конфигурация файлдарын JSONдон алынган элементтер менен байланыштырып, автоматташтырылган иштетүүнү жөнөкөйлөтөт. Lua программасында типтүү бирдик файлдарынын шаблондорун түзүүгө жана орнотулган иштеткичтерди жазууга болот. Nginxти иштетүү үчүн бирдик файлынын мисалы: name = "nginx"; description = "Nginx HTTP Server"; type = "simple"; command = "/usr/local/sbin/nginx"; command_args = "-g 'daemon off;'"; provides = ["nginx", "http"]; requires = ["NETWORKING", "sshd"]; restart { policy = "always"; max_retries = 10; delay = 2000; backoff = "linear"; } process { user = "www"; group = "www"; cpuset = "0-3"; } rctl { memoryuse = { action = "deny"; amount = "2g"; }; pcpu = { action = "throttle"; amount = "80"; }; }

PID файлдарын колдонуунун ордуна, иштеп жаткан процесстердин активдүүлүгүн көзөмөлдөө pdfork() системалык чакыруу менен кайтарылган дескрипторлорду колдонуу менен жүргүзүлөт. Тармактык розеткага кирүү мүмкүнчүлүгү болгондо гана кызматтарды активдештирүү жана эс тутуму аз болгон учурда маанилүү кызматтарды мажбурлап токтотуудан коргоо мүмкүнчүлүгү бар. rcd фондук процессинин версиясын абалын жоготпостон тез арада жаңыртууга болот.

rctl кызматка жеткиликтүү ресурстарды чектөө үчүн колдонулат жана кызматтарды толук обочолонтуу үчүн камалган чөйрөлөрдө иштетсе болот. UNIX башкаруу розеткасына кирүү мүмкүнчүлүгүн ар бир кызмат үчүн конфигурациялоого болот. Уйку режими колдоого алынат.

Система менеджери учурдагы rc.d кызматынын ырааттуу ишке киргизүү системасы менен толугу менен артка шайкеш келет жана учурдагы rc.d скрипттерин жана конфигурация файлдарын өзгөртпөстөн колдонсо болот. Жөн гана иштеп жаткан системага rcd орнотуңуз, кайра жүктөгөндөн кийин, параллелдүү кызматтын ишке киришинен улам жүктөө убактысынын кыскарышынан тышкары, баары мурдагыдай иштей берет. Бул шайкештик системалардын rcdге көчүшүн жөнөкөйлөтөт жана учурдагы rc.d скрипттерин акырындык менен бирдик файл форматына конвертациялоого мүмкүндүк берет.

rc.d менен шайкештик үчүн атайын "мурас" бирдик түрү колдоого алынат. Rcd /etc/rc.d/ жана /usr/local/etc/rc.d/ файлдарынын мазмунун сканерлейт, скрипттердеги PROVIDE/REQUIRE/BEFORE/KEYWORD аталыштарын талдайт, rc.conf жөндөөлөрүн окуйт жана скрипттин аткарылуу абалын аныктайт, андан кийин ар бир скриптти мурасталган виртуалдык бирдик катары иштетет. Мындай виртуалдык бирдиктерди башкаруу үчүн rcctl буйругун колдонгондо, операциялар мурасталган форматка которулат; мисалы, "rcctl reload sshd" буйругун аткаруу "/etc/rc.d/sshd reload" буйругун аткарат.

Source: opennet.ru

DDoS коргоосу, VPS VDS серверлери бар сайттар үчүн ишенимдүү хостинг сатып алыңыз 🔥 DDoS коргоосу, VPS VDS серверлери бар ишенимдүү веб-сайт хостингин сатып алыңыз | ProHoster