S6-rc, um gerenciador de serviço análogo a sysv-rc e OpenRC

Há poucos dias, foi divulgada a notícia de que um lançamento significativo do gerenciador de serviço s6-rc 0.5.3.0, que é projetado para gerenciar o lançamento de scripts e serviços de inicialização levando em consideração as dependências.

S6-rc é caracterizado por pode ser usado em sistemas de inicialização como organizar o lançamento de serviços arbitrários juntamente com eventos que refletem uma mudança no estado do sistema, além de fornece rastreamento de árvore de dependência completa e inicia ou termina automaticamente os serviços para atingir o estado especificado.

O gerenciador de serviços s6-rc, que pode ser considerado análogo a sysv-rc ou OpenRC, inclui um conjunto de utilitários para iniciar e parar processos de longa execução (daemons) ou scripts de inicialização encerrados imediatamente. No decorrer do trabalho, as dependências entre os componentes são levadas em consideração, a inicialização paralela de scripts e serviços que não se sobrepõem é garantida e uma sequência de execução de script é garantida para ser repetida em diferentes inicializações.

Todas as mudanças de estado são processadas com dependências em mente, certificando-se de que as dependências não sejam violadas (por exemplo, quando um serviço é iniciado, as dependências necessárias para seu funcionamento serão lançadas automaticamente e, quando for interrompido, os serviços dependentes também serão executados. interrompido).

Os conjuntos de monitoramento, como s6, runit, perp ou daemontools, definem um serviço como um processo de longa execução, também conhecido como daemon. Eles fornecem ferramentas para executar o daemon de forma reproduzível em um ambiente controlado e mantê-lo vivo se ele morrer; eles também fornecem ferramentas de gerenciamento de daemon para, entre outras coisas, enviar sinais para o daemon sem saber seu PID. Eles podem controlar perfeitamente processos individuais de longa duração, e o s6 também fornece ferramentas para gerenciar uma árvore de monitoramento inteira. Para qualquer administrador de sistema preocupado com a confiabilidade, as suítes de monitoramento são boas.

Em vez de níveis de execução, s6-rc oferece um conceito de pacote mais universal, que permite agrupar serviços de acordo com características e tarefas arbitrárias a serem resolvidas. Para melhorar a eficiência, uma base de dependência compilada, criada pelo utilitário s6-rc-compile com base no conteúdo de diretórios com arquivos, é usada para iniciar / parar serviços.

Para analisar e manipular o banco de dados, os utilitários s6-rc-db e s6-rc-update são fornecidos. O sistema oferece suporte a scripts de inicialização compatíveis com sysv-init e pode importar informações de dependência de sysv-rc ou OpenRC.

Uma das vantagens de s6-rc é uma implementação compacta que não contém nada supérfluo, Exceto para os componentes necessários para resolver problemas diretos, dos quais isso consome um mínimo de recursos do sistema.

Ao contrário de outros gerenciadores de serviço, o s6-rc oferece suporte à construção proativa (offline) de um gráfico de dependência para um conjunto existente de serviços, permitindo que você execute uma análise de dependência com uso intensivo de recursos separadamente, e não durante a cobrança ou alteração de status.

Ao mesmo tempo, o sistema não é monolítico e é dividido em uma série de módulos separados e substituíveis, cada um dos quais, de acordo com a filosofia Unix, resolve apenas um problema específico.

Além disso, é mencionado que em combinação com utilitários s6 que monitoram o trabalho dos processos (análogo a daemontools e runit), o kit de ferramentas permite que você permite ao usuário monitorar simultaneamente a operação de serviços de longa duração que estão no sistema, por exemplo, reinicie-os em caso de terminações anormais e isso também dá a garantia de que um script é lançado de forma reproduzível, repetido em diferentes lançamentos.

Também é mencionado que ele suporta, entre outras coisas, recursos como ativação de um serviço ao acessar um soquete (iniciando um controlador ao acessar uma porta de rede), eventos de processo de registro (substituindo syslogd) e concessão controlada de privilégios adicionais (análogo a sudo).

Finalmente se você estiver interessado em saber mais sobre isso, você pode verificar os detalhes deste gerenciador de processo no link a seguir.


Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: Miguel Ángel Gatón
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.

  1.   um de alguns dito

    No Artix está disponível há muito tempo. OpenRC, Runit e recentemente dinit e 66 também estão disponíveis, vou comentar caso alguém queira experimentar.