设为首页 收藏本站
查看: 927|回复: 0

[经验分享] SaltStack学习系列之state常用模块

[复制链接]

尚未签到

发表于 2018-1-4 06:31:23 | 显示全部楼层 |阅读模式
  常用模块:cron,cmd,file,mount,ntp,pkg,service,user,group
  cmd模块
  参数:
  name:要执行的命令
  unless:用于检查的命令,只有unless指向的命令返回False时才执行name那行的命令
  cwd:执行命令时的目录,默认为root
  user:以指定用户身份运行命令
  group:以指定用户组身份运行命令
  run:运行name后的命令
  require:确保某个模块执行之后才执行这个模块
  实例
  

[iyunv@test81 ~]# cat install.sls  
nginx_source:                                         ##自定义命名
  file.managed:
  - name: /tmp/nginx-1.4.5.tar.gz                   #这个是指minion端
  - unless: test -f /tmp/nginx-1.4.5.tar.gz         ##若minion端不存在/tmp/nginx-1.4.5.tar.gz这个文件,才会执行这个file模块
  - source: salt://nginx/files/nginx-1.4.5.tar.gz   ##这个是指master端文件存放的位置,意思是把master端salt://nginx/files/nginx-1.4.5.tar.gz文件copy到minion端/tmp/nginx-1.4.5.tar.gz
  
tar_nginx:                                            ##自定义命名
  cmd.run:
  - cwd: /usr/local/src                              ##当前工作目录
  - name: tar zxvf nginx-1.4.5.tar.gz
  - unless: test -d /usr/local/src/nginx-1.4.5       ##若minion端不存在/usr/local/src/nginx-1.4.5 这个目录,才会执行name后命令
  - require:                                         ##确保nginx_source里的file模块执行成功才执行这个cmd模块
  - file: nginx_source
  

  pkg模块
  参数:
  installed:安装
  latest:将软件更新到最新
  removed:删除软件
  pkgs:安装多个软件包时,一次全部安装(推荐)
  names:安装多个软件包时,一次安装一个(不推荐)
  实例
  

mypkgs:  pkg.installed:
- pkgs:              #安装多个软件包,用pkgs函数一次全部安装,一行一个  - gcc
  - cmake
  - make
  #- name: httpd       #安装多个软件包,一次安装一个,与pkgs一起用时,此函数将被忽略
  

  user模块
  present:创建用户
  absent:删除用户
  fullname:用户名
  password:密码
  uid:
  gid:
  createhome:True为创建家目录,False不创建家目录
  home:用户家目录
  

hwg:  user.present:
- fullname: Jim- shell: /bin/bash- home: /home/hwg- uid: 600  - gid: 600
  - groups:
  - wheel
  - storage
  - games
  

  file.managed
  参数:
  user:用户
  group:用户组
  mode:文件属性(如644)
  template:模板类型(比如:jinja)
  makedirs:默认为False,如果被管理的文件父目录不存在则失败,如果为True,如果父目录不存在则会创建
  dir_mode:设置创建目录的权限
  replace:默认为True,若设置为False将不替换文件内容,但是会更改权限
  context:覆盖文件上下文参数
  default:默认上下文参数
  backup:备份功能,有改动才备份,会备份到minion下的:/var/cache/salt/minion/backup_files
  show_off:设置成False,则不显示更改的不同点,默认为True
  create:默认为True,如果设置为False,在文件存在的情况下则只更改文件
  contents:默认为空,添加字符串到文本中
  实例:
  

nginx_source:  file.managed:
- name: /tmp/nginx-1.5.1.tar.gz- unless: test -e /tmp/nginx-1.5.1.tar.gz- user: root- group: root- makedirs: True- source: salt://nginx/file/nginx-1.5.1.tar.gz    

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-431378-1-1.html 上篇帖子: 11-saltstack 之jinja 下篇帖子: saltstack 命令2
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表