saltstack自动化运学习笔记

Saltstack 可以看做是func的增强版+Puppet的弱化版。使用Python编写。非常好用,快速可以基于EPEL部署。 Salt 是一个开源的工具用来管理你的基础架构,下面我就来分享一些salt学习笔记吧


实时管理
cmd.run的方式
执行命令
sudo salt '*' cmd.run 'uptime'
系统模块或自定模块的方式
例如查看minion的磁盘使用率,使用disk模块的usage函数
sudo salt '*' disk.usage
系统自建的模块 参考salt文档 http://docs.saltstack.com/en/latest/ref/modules/all/index.html
使用sys.doc模块查询salt模块的相关使用方法。sys.doc 相当于系统的man,可以查询salt模块的在线doc
sudo salt '*'  sys.doc disk
自定义模块
自定义模块的目录/srv/salt/_modules/,自定义模块路径一般为/srv/salt/_modules/custom.py
示例
$cat /srv/salt/_modules/custom.py
def test():
return 'i am test'
手动同步模块到minion
sudo salt '*' saltutil.sync_modules
执行模块
sudo salt '*' custom.test
States
state模块官方参考文档 http://docs.saltstack.com/ref/states/all/index.html
用于实现对minion进行状态管理,states 定义路径/src/salt(在/etc/salt/master中的file_roots变量定义),states文件使用YAML格式定义
state文件的后缀是sls(Salt State),sls文件编写需要注意在:之后要保留一个空格,否则会导致解析错误
手动执行state的方式,以修改admin账号的bashrc为例
准备/src/salt/bashrc.sls,内容如下
/home/admin/.bashrc:
file.managed:
  - source: salt://files/bashrc
  - user: admin
  - group: admin
  - mode: 644
准备好用于分发的bash文件,salt://files/bashrc 对应/srv/salt/files/bashrc
使bash.sls生效
sudo salt '*' state.sls 'bashrc'
Highstate的方式。其实是使用top.sls作为state的入口文件
/src/salt/top.sls文件如下,top.sls引用bashrc.sls
base:
'*':
- bashrc
手动执行highstate生效
sudo salt '*' state.highstate
使用schedule 让minion自动执行highstate
定义 /srv/pillar/top.sls
base:
'*':
- schedule
定义 /srv/pillar/schedule.sls (30分钟为单位)
schedule:
highstate:
function: state.highstate
minutes: 30
Pillar
官方文档 http://docs.saltstack.com/topics/tutorials/pillar.html
pillar数据定义路径/srv/pillar, 入口文件:/srv/pillar/top.sls
查看pillar信息
sudo salt '*' pillar.data
Grains
官方文档 http://docs.saltstack.com/topics/targeting/grains.html
查看grains分类
salt '*' grains.ls
查看grains所有信息
salt '*' grains.items 
查看grains某个信息
salt '*' grains.item osrelease 
常用命令
查看汇报上来的minion
sudo salt-key
master同步配置
sudo salt '*' state.highstate

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值