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

[经验分享] saltstack快速入门

[复制链接]

尚未签到

发表于 2018-7-31 07:25:29 | 显示全部楼层 |阅读模式
  saltstack使用python语言写的。
  3种运行方式:
  local
  master/Minion(奴才)
  salt  SSH
  3大功能:
  远程执行
  配置管理     就是将安装的配置文件放到指定文件上,然后在所有主机上执行
  云管理     支持云上面的操作
  saltstack低层使用zeroMQ通信:MQ消息的发布与订阅特征。
  安装:
  首先在所有的minion和master上面执行:
yum install https://repo.saltstack.com/yum/redhat/salt-repo-latest-2.el7.noarch.rpm  由于我们是测试环境,打算将使用两台,第一台上安装master和minion,第二台上安装minion
  所以:
  在第一台上面执行:
yum  install salt-master  salt-minion -y  在第二台上执行:
yum install salt-minion -y  将服务加入开机自启动,然后启动master服务,修改minion配置文件中master相关的配置,将ip指定master就好,大概在文件的16行,然后启动就好了;
  当然还需要认证:
  master:/etc/salt/pki/master
  minion:/etc/salt/pki/minion
  还可以使用tree命令在master这个目录路径下执行。查看相关的公钥在那个文件,在minion将自己的公钥发送给master的过程中,master也会将自己的公钥发送给minion。
  可以使用salt-key  -A:同意所以minion认证
  到此认证完成。
  需要注意的是上面认证的文件名是根据server_id,这个文件是在/etc/salt/minion_id这个文件中,默认是主机的ip,不过可以个人修改。修改server_id必须要将/etc/salt/pki这个目录下清空。然后修改server_id,然后重启服务。
  这个server_id是很重要的,后面执行的远程命令有点依靠它的。
  好了执行几个远程命令:
DSC0000.jpg

  命令分解:
  "*":表示主机,此处匹配所有minion
  "cmd.run"  表示使用cmd模块里面的run方法
  屏幕上的结果是返回。
  如上只能在salt执行命令,如果我们想要远程安装一个软件,那么就要写配置文件,文件的路径就需要打开,在master端上打开配置文件的file_roots, 下面的路径也是基础路径。
  下来试试使用master在minion安装httpd服务。
  下来试着安装一个apache,在/srv/salt目录下面编辑文件apache.sls,sls这是安装apache的固定格式;
  书写格式如下:apache这个服务已经封装好了,centos使用yum安装,ubuntu使用的时apt安装;
  书写第二部分的含义是启动服务,service.running是一个模块里面的方法
  enable是开机启动,reload是重载这个服务。
DSC0001.jpg

  下面是执行这个文件:#salt  '*'  state.sls apache
DSC0002.jpg

  这样只是安装一个apache状态,如果我们要安装多个状态,就要使用高级状态,定义入口文件:topfile
  入口文件默认是/srv/salt/top.sls,可以修改,但是建议不要修改,并且这个入口文件要放到base下面,此时的base是/srv/salt文件下(master配置文件中定义过的):
  *:表示在所有主机上执行
[root@localhost salt]# cat top.sls  
base:
  
  'web:tomcat':             #这里如果写成*,代表的是所有,此处是使用grain进行匹配键值是web:tomcat,然后给匹配到的安装apache
  
    - match: grain
  
    - apache
  然后执行salt '*' state.highstate高级匹配
DSC0003.jpg

  报错不影响,外面匹配了所有,里面匹配web:apache,所以第一个node报错。

运维网声明 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-543802-1-1.html 上篇帖子: saltstack管理saltstack认证相关 下篇帖子: saltstack常用模块及组件备忘
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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