S6-rc,一个类似于 sysv-rc 和 OpenRC 的服务管理器

前几天有消息称,该产品的重大发布 s6-rc 0.5.3.0 服务管理器, 它旨在考虑到依赖关系来管理初始化脚本和服务的启动。

S6-rc的特点是 可以在初始化系统中使用 组织任意服务的启动以及反映系统状态变化的事件,除了 提供完整的依赖树跟踪 并自动启动或结束服务以达到指定状态。

s6-rc 服务管理器,其中 可以认为类似于 sysv-rc 或 OpenRC, 包括一组用于启动和停止长时间运行的进程(守护进程)或立即终止的启动脚本的实用程序。 在工作过程中,考虑了组件之间的依赖关系,保证了不重叠的脚本和服务的并行启动,保证了一个脚本执行顺序在不同的启动之间重复。

所有状态更改都在考虑依赖关系的情况下进行处理,确保不违反依赖(例如,当一个服务启动时,它运行所需的依赖会自动启动,当它停止时,依赖的服务也会被执行。停止)。

s6、runit、perp 或 daemontools 等监控套件将服务定义为长期运行的进程,也称为守护进程。 它们提供了在受控环境中可重现地运行守护进程的工具,并在它死后保持活动状态; 它们还提供守护进程管理工具,以在不知道其 PID 的情况下向守护进程发送信号。 他们可以无缝监控单个长时间运行的进程,s6 还提供了管理整个监控树的工具。 对于任何关心可靠性的系统管理员来说,监控套件都是一件好事。

而不是运行级别, s6-rc 提供了一个更通用的包概念,允许根据要解决的任意特征和任务对服务进行分组. 为了提高效率,由 s6-rc-compile 实用程序根据文件目录的内容创建的已编译依赖库用于启动/停止服务。

为了分析和操作数据库,提供了实用程序 s6-rc-db 和 s6-rc-update。 系统支持 sysv-init 兼容的启动脚本,可以从 sysv-rc 或 OpenRC 导入依赖信息。

s6-rc 的优点之一是一个紧凑的实现,不包含任何多余的东西, 除了解决直接问题所需的组件外,这会消耗最少的系统资源。

与其他服务管理器不同,s6-rc 支持为现有服务集主动(离线)构建依赖图,使您能够单独执行资源密集型依赖分析,而不是在计费或状态更改期间。

与此同时, 该系统不是单片的,而是分为一系列独立且可更换的模块,根据 Unix 哲学,每一个都只解决一个特定的问题。

此外,还提到 与 s6 实用程序结合使用 监控进程的工作(类似于 daemontools 和 runit),该工具包让你 允许用户同时监控长期运行的服务的运行 例如,在系统中的那些,在异常终止的情况下重新启动它们,这也保证了脚本以可重现的方式启动,在不同的启动中重复。

还提到,除其他外,它支持诸如在访问套接字时激活服务(访问网络端口时启动控制器)、记录进程事件(替换 syslogd)和控制授予额外权限(类似于须藤)。

最后 如果您有兴趣了解更多信息, 您可以查看此流程管理器的详细信息 在下面的链接中。


发表评论,留下您的评论

发表您的评论

您的电子邮件地址将不会被发表。 必填字段标有 *

*

*

  1. 负责数据:MiguelÁngelGatón
  2. 数据用途:控制垃圾邮件,注释管理。
  3. 合法性:您的同意
  4. 数据通讯:除非有法律义务,否则不会将数据传达给第三方。
  5. 数据存储:Occentus Networks(EU)托管的数据库
  6. 权利:您可以随时限制,恢复和删除您的信息。

  1.   其中之一

    在 Artix 中,它已经可用很长时间了。 OpenRC, Runit 以及最近的dinit 和66 也都可以用,有空想试试我再评论。