puppet
puppet是什么?
puppet是一款用ruby语言编写的,采用C/S架构的自动化运维管理工具或配置管理工具。puppet客户端从服务器(使用puppet apply manifestname子命令可以从本地获取配置文件)获取配置文件manifestname,然后执行相应的操作。
例子1: 创建新用户,使用--noop模拟执行
lin@ubuntu:~/workspace/dev_ops/puppet$ cat user.pp
user{'puppet':
name => puppet,
ensure => present,
}
lin@ubuntu:~/workspace/dev_ops/puppet$ puppet apply --verbose --noop user.pp
Notice: Compiled catalog for ubuntu.localdomain in environment production in 0.06 seconds
Info: Applying configuration version '1552664253'
Notice: Finished catalog run in 0.01 seconds
配置是puppet执行的依据,其模板为
type{'title':
attr1 => value1,
attr2 => value2,
attr3 => value3,
...
attrN => valueN
}
- type: 即puppet要操作的对象,如user,service,file等,可以使用命令puppet describe -l查看可以操作的对象
- title: 给要操作的资源的名字,如配置中需要新建两个user,title必须不同。
- attr: 即type支持的属性,使用puppet describe user 可以查看,简略查看命令为puppet describe -s user
元属性,metaparameter,当需要自定义puppet处理对象的先后顺序,或定义操作对象的依赖时,需要使用元属性来达到目的。使用puppet describe -s -m user可以看到user对象支持的元属性
Meta Parameters
---------------
alias, audit, before, loglevel, noop, notify, require, schedule, stage,
subscribe, tag
元属性详细可以看Metaparameter Reference
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· DeepSeek在M芯片Mac上本地化部署