如果你是新手,想系统学会 Puppet 配置管理,可以按照下面这条“从零到能上手”的学习路线来,少走弯路。
Puppet 是用来“批量管理服务器配置”的工具
常见用途:
核心思想:
你描述“期望状态”,Puppet 负责让它变成现实
不需要特别深,但要有:
新版本也支持 无 Master(puppet apply),新手推荐先从这开始
| 概念 | 说明 |
|---|---|
| Manifest | .pp 文件,写配置的地方 |
| Resource | 最小管理单位(文件、服务、包) |
| Class | 一组资源的集合 |
| Module | 可复用的配置包 |
| Catalog | Puppet 编译后的执行计划 |
puppet apply不要一上来就搭 Master
yum install puppetserver puppet -y
# hello.pp
notify { 'hello':
message => 'Hello Puppet!',
}
执行:
puppet apply hello.pp
✅ 看到输出就成功了
新手只要先会这 4 个:
package { 'nginx':
ensure => installed,
}
file { '/etc/motd':
content => "Welcome\n",
}
service { 'nginx':
ensure => running,
enable => true,
}
exec { 'update':
command => 'yum update -y',
path => '/usr/bin:/bin',
}
class nginx {
package { 'nginx': ensure => installed }
service { 'nginx': ensure => running }
}
include nginx
modules/nginx/
├── manifests
│ └── init.pp
└── files
class nginx {
package { 'nginx': ensure => installed }
}
调用:
puppet apply -e 'include nginx'
当你会写 Module 后,再学:
site.pp❌ 把 Puppet 当脚本用
❌ 大量使用 exec
❌ 不考虑“幂等性”
✅ 记住:Puppet 是描述状态,不是写流程
| 天数 | 内容 |
|---|---|
| Day1 | 装 Puppet,写 hello.pp |
| Day2 | package/file/service |
| Day3 | class |
| Day4 | module |
| Day5 | 管理一台服务器 |
| Day6 | 学 site.pp |
| Day7 | 搭 Master |
如果你愿意,我可以:
你更想从哪一步开始?
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。