活动介绍

Cfengine系统配置与新基础设施搭建指南

立即解锁
发布时间: 2025-08-24 00:29:46 阅读量: 6 订阅数: 17
PDF

Linux与Unix系统管理自动化实践

### Cfengine系统配置与新基础设施搭建指南 #### 1. Cfengine各部分功能介绍 ##### 1.1 链接部分(The links Section) 在`hejgo`部分,`_b]cajp`可以创建符号链接。示例如下: ```plaintext hejgo6 +qon+pil ): **+r]n+pil +r]n+]`i+iaoo]cao ):! +r]n+hkc+iaoo]cao +qon+hk_]h+^ej ': +qon+hk_]h+he^+lanh+^ej ``` - 第一个命令:如果符号链接不存在,则从`+qon+pil`创建一个指向`**+r]n+pil`(相对于`+qon+pil`)的符号链接。 - 第二个命令:即使`+r]n+]`i+iaoo]cao`位置已经有文件,也会创建一个从`+r]n+]`i+iaoo]cao`到`+r]n+hkc+iaoo]cao`的符号链接。`!`符号会覆盖`cfengine`内置的创建符号链接的默认安全机制。 - 第三个命令:在`+qon+hk_]h+^ej`中为`+qon+hk_]h+he^+lanh+^ej`中的每个文件创建一个链接。利用此技术,你可以将应用程序安装在单独的目录中,并在`+qon+hk_]h+^ej`目录中创建指向这些二进制文件的链接。 `hejgo`部分提供了很多可能的选项,但在实践中很少使用,更多信息可查看`cfengine`参考手册。 ##### 1.2 进程部分(The processes Section) 你可以在`lnk_aooao`部分监控和操作系统进程。示例如下: ```plaintext lnk_aooao6 _boanr` naop]np +r]n+_bajceja+^ej+_boanr` _bata_` naop]np +r]n+_bajceja+^ej+_bata_` ``` 对于`lnk_aooao`部分,`cfengine`会根据具体系统运行`lo`命令,并带上`)]qt`或`)ab`开关。输出会被缓存,`lnk_aooao`部分中每个命令的第一部分会被解释为针对此输出的正则表达式。如果没有匹配项,则执行`naop]np`命令。 使用`naop]np`功能时,你可以指定以下选项:`ksjan`、`cnkql`、`_dnkkp`、`_d`en`和/或`qi]og`,这些选项会影响`naop]np`命令启动的新进程的执行环境。 你还可以向进程发送信号,示例如下: ```plaintext lnk_aooao6 dppl` oecj]h=dql ``` 此信号在每次执行时都会发送给与正则表达式`dppl`匹配的任何进程,所以你可能不希望直接使用它。也可以指定与正则表达式匹配的进程数量的限制。例如,如果你想确保任何时候运行的`dppl`进程不超过十个,可以使用以下代码: ```plaintext lnk_aooao6 dppl` ]_pekj=s]nj i]p_dao=8- ``` ##### 1.3 shell命令部分(The shellcommands Section) 对于一些自定义和/或复杂的操作,你需要从`cfengine`执行一个或多个外部脚本。可以通过`odahh_kii]j`o`部分来实现,示例如下: ```plaintext odahh_kii]j`o6 ]hh66 +qon+^ej+n`]pa )o jpl- peiakqp=30 na`d]p*Dn,.[M-66 +qon+hk_]h+o^ej+hkc[l]_g]cao ^]_gcnkqj`=pnqa ``` - 在所有系统上,会执行`n`]pa`命令来同步系统时钟。如果该命令在30秒内未完成,`cfengine`会终止它。 - 在运行Red Hat Linux的系统上,凌晨2:00到2:15之间会运行一个脚本来记录当前安装的软件包。此命令会放在后台运行,`cfengine`不会等待它完成。 你可以指定以下选项来控制命令的执行环境:`ksjan`、`cnkql`、`_dnkkp`、`_d`en`和/或`qi]og`。 如果这些脚本想访问当前定义的类列表,可以查看`?B=HH?H=OOAO`环境变量。每个活动类将以冒号分隔列出。默认情况下,当`cfengine`进行预运行(指定`--dry-run`)时,脚本会被忽略。你可以通过指定`lnareas=pnqa`来覆盖此设置。但是,当类`klp[`nu[nqj`被定义时,脚本不应进行任何更改。 ##### 1.4 使用cfrun `_bnqj`命令允许你在网络上的任意数量的系统上执行`_b]cajp`。它需要当前目录中有一个名为`_bnqj*dkopo`的配置文件(或使用`-b`选项指定的文件)。`_bnqj*dkopo`文件可以像下面这样简单: ```plaintext `ki]ej=iu`ki]ej*_ki oanran*iu`ki]ej*_ki _heajp-*iu`ki]ej*_ki _heajp.*iu`ki]ej*_ki ``` 除了域名设置,此文件只是每个主机(包括配置服务器)的列表。你还可以通过在文件顶部添加以下选项将输出记录到一系列文件中(而不是显示在屏幕上): ```plaintext kqplqp`en=+pil+_bnqj[kqplqp i]t_deh`=10 ``` 此代码告诉`_bnqj`最多派生十个进程,并将每个主机的输出放在指定目录中的单独文件中。通常,你可以不带参数运行`_bnqj`。如果你想指定参数,可以使用以下格式: ```plaintext _bnqj ?BNQJ[KLPEKJO DKOPO -- ?B=CAJP[KLPEKJO -- ?H=OOAO ``` - `?BNQJ[KLPEKJO`实际上是可选的,可以包含`_bnqj`命令的任意数量的选项。 - 接下来,你可以指定一个可选的主机名列表。如果指定了一些主机名,只会联系这些主机;如果未指定主机名,将联系`_bnqj*dkopo`文件中的每个主机。 - 在第一个`--`之后,你必须放置要传递给每个远程系统上运行的`_b]cajp`命令的所有选项。 - 在第二个`--`之后是一个可选的类列表。如果指定了一些类,只有与其中一个类匹配的主机才会执行`_b]cajp`(尽管会联系每个主机,因为每个主机必须决定它是否与其中一个类匹配)。 #### 2. 展望Cfengine 3 Cfengine 3已经处于设计阶段多年。它是`cfengine`套件的完全重写,更重要的是,它涉及一种新的系统管理思维方式。 Cfengine 3围绕一个名为“Promise Theory”的概念构建。这个概念听起来可能难以理解,但实际上非常直观。使用Cfengine 3,你将描述系统的期望状态,而不是系统的更改。期望状态表示为一组承诺,用`cfengine`作者Mark Burgess的话说,这使我们能够关注好的方面而不是坏的方面。 Cfengine.org网站有对Cfengine 3的详细介绍,以及Cfengine 3当前开发快照的源代码:[https://www._bajceja.org/_bajceja3.html](https://www._bajceja.org/_bajceja3.html)。 建议你熟悉`cfengine`的下一个演进步骤,原因如下: 1. 熟悉新的概念和语法将使你在需要时更容易从版本2迁移到版本3。 2. 试验当前的功能集和实现允许你提出改进建议或修复漏洞。提出建议有助于从事Cfengine 3开发的人员,并“回馈”最初给我们带来`cfengine`的人。 #### 3. 新基础设施的引导过程 ##### 3.1 新基础设施引导的背景和目标 假设有机会为一家名为“campin.net”的虚构初创公司安装和配置所有系统和应用程序。该公司是优质露营设备的供应商,项目目标是部署一个基于Web的应用程序,该应用程序通过NFS使用数据。Web服务器运行Linux,NFS服务器主机运行Solaris。项目的主要目标之一是快速部署和配置托管该网站的系统,并在需求出现后尽快部署应用程序和操作系统更新。通过自动化手段部署和管理系统可以实现这些目标。 在进行系统镜像或部署之前,你应该设置一个管理基础设施,因为你需要从一开始就准备好管理新主机。这里使用`cfengine`进行系统管理,所以在镜像过程完成后,每个主机上都需要配置并运行`cfengine`。 要配置一个功能齐全的`cfengine`基础设施,必须执行以下步骤: 1. 手动安装一个Linux系统作为中央`cfengine`主机。 2. 在中央`cfengine`主机上创建一个“主”目录结构。这个中央目录结构是`cfengine`配置文件以及UNIX/Linux配置文件和二进制文件的复制源。 3. 用`cfengine`配置文件填充目录结构。你将使用这些配置文件进行初始客户端配置,使客户端与中央`cfengine`主机上的配置文件保持同步,并启动`cfengine`守护进程。 4. 选择`cfengine`密钥分发的信任模型。这里使用的模型类似于SSH主机的密钥信任方式,即第一次看到主机的`cfengine`密钥时信任它们。在初始交换后,将使用该受信任的密钥(且仅使用该密钥)来验证该主机的身份。 ##### 3.2 安装中央cfengine主机 决定使用虚拟化技术来搭建初始主系统,具体选择了VMware Server。这样做的好处是,一旦虚拟机系统正常工作,就可以将其部署到从运行Windows或Linux的笔记本电脑到专用VMware ESX平台的任何设备上。不过,由于许可证费用的原因,VMware可能不是企业级虚拟化的首选。 安装了一个32位的Debian GNU/Linux 4.0(“Etch”)系统作为VMware虚拟机。在“软件选择”屏幕上,选择了“标准系统”,未选择其他软件集合,以保持基础系统非常小。然后以`nkkp`用户身份手动安装了`_bajceja`包: ```plaintext sudo apt-get install _ ```
corwn 最低0.47元/天 解锁专栏
赠100次下载
继续阅读 点击查看下一篇
profit 400次 会员资源下载次数
profit 300万+ 优质博客文章
profit 1000万+ 优质下载资源
profit 1000万+ 优质文库回答
复制全文

相关推荐

吴雄辉

高级架构师
10年武汉大学硕士,操作系统领域资深技术专家,职业生涯早期在一家知名互联网公司,担任操作系统工程师的职位负责操作系统的设计、优化和维护工作;后加入了一家全球知名的科技巨头,担任高级操作系统架构师的职位,负责设计和开发新一代操作系统;如今为一名独立顾问,为多家公司提供操作系统方面的咨询服务。
最低0.47元/天 解锁专栏
赠100次下载
百万级 高质量VIP文章无限畅学
千万级 优质资源任意下载
千万级 优质文库回答免费看

最新推荐

从近似程度推导近似秩下界

# 从近似程度推导近似秩下界 ## 1. 近似秩下界与通信应用 ### 1.1 近似秩下界推导 通过一系列公式推导得出近似秩的下界。相关公式如下: - (10.34) - (10.37) 进行了不等式推导,其中 (10.35) 成立是因为对于所有 \(x,y \in \{ -1,1\}^{3n}\),有 \(R_{xy} \cdot (M_{\psi})_{x,y} > 0\);(10.36) 成立是由于 \(\psi\) 的平滑性,即对于所有 \(x,y \in \{ -1,1\}^{3n}\),\(|\psi(x, y)| > 2^d \cdot 2^{-6n}\);(10.37) 由

量子物理相关资源与概念解析

# 量子物理相关资源与概念解析 ## 1. 参考书籍 在量子物理的学习与研究中,有许多经典的参考书籍,以下是部分书籍的介绍: |序号|作者|书名|出版信息|ISBN| | ---- | ---- | ---- | ---- | ---- | |[1]| M. Abramowitz 和 I.A. Stegun| Handbook of Mathematical Functions| Dover, New York, 1972年第10次印刷| 0 - 486 - 61272 - 4| |[2]| D. Bouwmeester, A.K. Ekert, 和 A. Zeilinger| The Ph

使用GameKit创建多人游戏

### 利用 GameKit 创建多人游戏 #### 1. 引言 在为游戏添加了 Game Center 的一些基本功能后,现在可以将游戏功能扩展到支持通过 Game Center 进行在线多人游戏。在线多人游戏可以让玩家与真实的人对战,增加游戏的受欢迎程度,同时也带来更多乐趣。Game Center 中有两种类型的多人游戏:实时游戏和回合制游戏,本文将重点介绍自动匹配的回合制游戏。 #### 2. 请求回合制匹配 在玩家开始或加入多人游戏之前,需要先发出请求。可以使用 `GKTurnBasedMatchmakerViewController` 类及其对应的 `GKTurnBasedMat

由于提供的内容仅为“以下”,没有具体的英文内容可供翻译和缩写创作博客,请你提供第38章的英文具体内容,以便我按照要求完成博客创作。

由于提供的内容仅为“以下”,没有具体的英文内容可供翻译和缩写创作博客,请你提供第38章的英文具体内容,以便我按照要求完成博客创作。 请你提供第38章的英文具体内容,同时给出上半部分的具体内容(目前仅为告知无具体英文内容需提供的提示),这样我才能按照要求输出下半部分。

区块链集成供应链与医疗数据管理系统的优化研究

# 区块链集成供应链与医疗数据管理系统的优化研究 ## 1. 区块链集成供应链的优化工作 在供应链管理领域,区块链技术的集成带来了诸多优化方案。以下是近期相关优化工作的总结: | 应用 | 技术 | | --- | --- | | 数据清理过程 | 基于新交叉点更新的鲸鱼算法(WNU) | | 食品供应链 | 深度学习网络(长短期记忆网络,LSTM) | | 食品供应链溯源系统 | 循环神经网络和遗传算法 | | 多级供应链生产分配(碳税政策下) | 混合整数非线性规划和分布式账本区块链方法 | | 区块链安全供应链网络的路线优化 | 遗传算法 | | 药品供应链 | 深度学习 | 这些技

黎曼zeta函数与高斯乘性混沌

### 黎曼zeta函数与高斯乘性混沌 在数学领域中,黎曼zeta函数和高斯乘性混沌是两个重要的研究对象,它们之间存在着紧密的联系。下面我们将深入探讨相关内容。 #### 1. 对数相关高斯场 在研究中,我们发现协方差函数具有平移不变性,并且在对角线上存在对数奇异性。这种具有对数奇异性的随机广义函数在高斯过程的研究中被广泛关注,被称为高斯对数相关场。 有几个方面的证据表明临界线上$\log(\zeta)$的平移具有对数相关的统计性质: - 理论启发:从蒙哥马利 - 基廷 - 斯奈思的观点来看,在合适的尺度上,zeta函数可以建模为大型随机矩阵的特征多项式。 - 实际研究结果:布尔加德、布

探索人体与科技融合的前沿:从可穿戴设备到脑机接口

# 探索人体与科技融合的前沿:从可穿戴设备到脑机接口 ## 1. 耳部交互技术:EarPut的创新与潜力 在移动交互领域,减少界面的视觉需求,实现无视觉交互是一大挑战。EarPut便是应对这一挑战的创新成果,它支持单手和无视觉的移动交互。通过触摸耳部表面、拉扯耳垂、在耳部上下滑动手指或捂住耳朵等动作,就能实现不同的交互功能,例如通过拉扯耳垂实现开关命令,上下滑动耳朵调节音量,捂住耳朵实现静音。 EarPut的应用场景广泛,可作为移动设备的遥控器(特别是在播放音乐时)、控制家用电器(如电视或光源)以及用于移动游戏。不过,目前EarPut仍处于研究和原型阶段,尚未有商业化产品推出。 除了Ea

人工智能与混合现实技术在灾害预防中的应用与挑战

### 人工智能与混合现实在灾害预防中的应用 #### 1. 技术应用与可持续发展目标 在当今科技飞速发展的时代,人工智能(AI)和混合现实(如VR/AR)技术正逐渐展现出巨大的潜力。实施这些技术的应用,有望助力实现可持续发展目标11。该目标要求,依据2015 - 2030年仙台减少灾害风险框架(SFDRR),增加“采用并实施综合政策和计划,以实现包容、资源高效利用、缓解和适应气候变化、增强抗灾能力的城市和人类住区数量”,并在各级层面制定和实施全面的灾害风险管理。 这意味着,通过AI和VR/AR技术的应用,可以更好地规划城市和人类住区,提高资源利用效率,应对气候变化带来的挑战,增强对灾害的

利用GeoGebra增强现实技术学习抛物面知识

### GeoGebra AR在数学学习中的应用与效果分析 #### 1. 符号学视角下的学生学习情况 在初步任务结束后的集体讨论中,学生们面临着一项挑战:在不使用任何动态几何软件,仅依靠纸和笔的情况下,将一些等高线和方程与对应的抛物面联系起来。从学生S1的发言“在第一个练习的图形表示中,我们做得非常粗略,即使现在,我们仍然不确定我们给出的答案……”可以看出,不借助GeoGebra AR或GeoGebra 3D,识别抛物面的特征对学生来说更为复杂。 而当提及GeoGebra时,学生S1表示“使用GeoGebra,你可以旋转图像,这很有帮助”。学生S3也指出“从上方看,抛物面与平面的切割已经

元宇宙与AR/VR在特殊教育中的应用及安全隐私问题

### 元宇宙与AR/VR在特殊教育中的应用及安全隐私问题 #### 元宇宙在特殊教育中的应用与挑战 元宇宙平台在特殊教育发展中具有独特的特性,旨在为残疾学生提供可定制、沉浸式、易获取且个性化的学习和发展体验,从而改善他们的学习成果。然而,在实际应用中,元宇宙技术面临着诸多挑战。 一方面,要确保基于元宇宙的技术在设计和实施过程中能够促进所有学生的公平和包容,避免加剧现有的不平等现象和强化学习发展中的偏见。另一方面,大规模实施基于元宇宙的特殊教育虚拟体验解决方案成本高昂且安全性较差。学校和教育机构需要采购新的基础设施、软件及VR设备,还会产生培训、维护和支持等持续成本。 解决这些关键技术挑