Uitgave van de service manager s6-rc 0.5.3.0 en het opstartsysteem s6-linux-init 1.0.7

Een significante uitgave van de service manager s6-rc 0.5.3.0 is voorbereid, bedoeld voor het beheer van het opstarten van initialisatiescripts en services rekening houdend met afhankelijkheden. De s6-rc toolkit kan worden gebruikt in zowel opstartsysteem als voor het organiseren van het starten van willekeurige services gebonden aan gebeurtenissen die een verandering in de systeemstatus weerspiegelen. Volledige tracking van de afhankelijkheidsboom en automatische start of stopzetting van services om de aangegeven status te bereiken, wordt aangeboden. De code is geschreven in de programmeertaal C en is beschikbaar onder de ISC-licentie.

De service manager s6-rc, die kan worden beschouwd als een alternatief voor sysv-rc of OpenRC, bevat een set hulpmiddelen voor het starten en stoppen van langdurig draaiende processen (demonen) of onmiddellijk te beƫindigen initialisatiescripts. Tijdens de uitvoering worden afhankelijkheden tussen componenten in aanmerking genomen, wordt parallelle uitvoering van niet-overlappende scripts en services gegarandeerd en wordt een consistente uitvoeringsvolgorde van de scripts bij verschillende starts gegarandeerd. Alle statuswijzigingen worden verwerkt rekening houdend met de afhankelijkheden, zodat de afhankelijkheden niet worden geschonden (bijvoorbeeld, wanneer een service wordt gestart, worden de vereiste afhankelijkheden automatisch gestart en bij stopzetting worden de afhankelijke services gestopt).

In plaats van opstartniveaus (runlevel) biedt s6-rc een meer universeel concept van bundels (bundles), waarmee services op willekeurige kenmerken en op te lossen taken kunnen worden gegroepeerd. Voor een efficiƫnter functioneren wordt een gecompileerde afhankelijkheidsdatabase gebruikt, die wordt gemaakt door de s6-rc-compile tool op basis van de inhoud van mappen met bestanden voor het starten/stoppen van services. Voor het parseren en manipuleren van de DB worden de hulpprogramma's s6-rc-db en s6-rc-update aangeboden. Het systeem ondersteunt initialisatiescripts die compatibel zijn met sysv-init en kan informatie over afhankelijkheden importeren uit sysv-rc of OpenRC.

Een van de voordelen van s6-rc is de compacte implementatie, die niets overbodigs bevat behalve de componenten voor het oplossen van directe taken en die minimaal hulpbronnen verbruikt. In tegenstelling tot andere servicebeheerders ondersteunt s6-rc een proactieve (offline) opbouw van de afhankelijkheidsgrafiek voor de beschikbare set diensten, waardoor resource-intensieve afhankelijkheidsanalyses apart kunnen worden uitgevoerd in plaats van tijdens het opstarten of bij wijziging van de status. Daarbij is het systeem niet monolithisch en is het verdeeld in een reeks afzonderlijke en vervangbare modules, waarvan er elke volgens de Unix-filosofie slechts ƩƩn specifieke taak uitvoert.

In combinatie met de s6-hulpmiddelen die de werking van processen volgen (vergelijkbaar met daemontools en runit), maakt de toolkit het mogelijk om tegelijkertijd de werking van langdurige diensten te controleren, bijvoorbeeld door deze opnieuw op te starten in geval van onverwachte beƫindigingen, en biedt het de mogelijkheid om een reeks opdrachten op een reproduceerbare manier uit te voeren die herhaaldelijk voorkomen bij verschillende opstarten. Er worden ook mogelijkheden ondersteund zoals het activeren van een dienst bij toegang tot een socket (het opstarten van de handler bij verzoeken naar de netwerkpoort), het loggen van procesgebeurtenissen (de vervanging van syslogd) en gecontroleerde toewijzing van extra privileges (vergelijkbaar met sudo).

Tegelijkertijd is de release van het pakket s6-linux-init 1.0.7.0 beschikbaar, dat een implementatie van het init-proces biedt voor het bouwen van kant-en-klare initialisatiesystemen voor besturingssystemen op basis van de Linux-kernel, waarin de s6- en s6-rc-hulpmiddelen worden gebruikt voor het beheren van diensten en initialisatiescripts. Daarbij zijn s6 en s6-rc niet gebonden aan s6-linux-init en kunnen ze indien gewenst met elke initialisatiesysteem worden gebruikt.

Daarnaast biedt het project:

  • s6-networking — een set utilities voor het creĆ«ren van netservices, vergelijkbaar met ucspi.
  • s6-frontend — een wrapper voor het opnieuw creĆ«ren van de functionaliteit van daemontools en runit bovenop s6.
  • s6-portable-utils — een set typische Unix-utilities, zoals cut, chmod, ls, sort en grep, geoptimaliseerd voor een laag gebruik van middelen en geleverd onder de ISC-licentie.
  • s6-linux-utils — een set utilities die aan Linux zijn gebonden, zoals chroot, freeramdisk, logwatch, mount en swapon.
  • s6-dns — een set clientbibliotheken en utilities die de standaard DNS-utilities van BIND en djbdns vervangen.

In de nieuwe versie van s6-rc is in de s6-rc-compile-tool de functie geĆÆmplementeerd om gegevens over afhankelijkheden en sets van diensten uit mappen te lezen, in plaats van uit bestanden. Het gebruik van mappen vereenvoudigt de toevoeging van diensten aan de database met informatie over afhankelijkheden tijdens de installatie van programma's via de pakketbeheerder, omdat het mogelijk is om zonder bestandswijzigingen te werken. De ondersteuning voor het oude bestandsformaat is behouden voor compatibiliteit. In de nieuwe versie van s6-linux-init is er een optie "-S" toegevoegd aan de s6-linux-init-maker-tool voor het synchroniseren van gegevens in containers.

Bron: opennet.ru

Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers šŸ”„ Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster