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

[经验分享] saltstack(1)

[复制链接]

尚未签到

发表于 2018-7-31 09:58:01 | 显示全部楼层 |阅读模式
  自动化运维工具:saltstack
  配置yum源:(解决依赖性)
  两台虚拟机:
  dd4:yum install salt-master
  dd5:yum install salt-minion
  dd5:vim /etc/salt/minion (指定master)
DSC0000.png

  注意:master和minion之间通信是要有证书的所以两台虚拟机要时间同步,要有解析
  /etc/init.d/salt-minion start
  dd4:/etc/init.d/salt-master start
  master 与minion之间交流要有key (为了安全起见)
  dd4:
  salt-key -L (列出钥匙)
  Accepted Keys:
  Denied Keys:
  Unaccepted Keys:
  dd5.example.com
  salt-key -A (拿到钥匙)
  The following keys are going to be accepted:
  Unaccepted Keys:
  dd5.example.com
  Proceed? [n/Y] y
  Key for minion dd5.example.com accepted.
  测试:(支持操作一个网段的主机)
  cmd.run(远程模块 支持任何shell脚本)
DSC0001.png

  模块远程安装httpd:(base)
  dd4:vim /etc/salt/master (注意格式 空格空格 !!!)
  file_roots:
  base:
  -/srv/salt
  /etc/init.d/salt-master restart
DSC0002.png

  mkdir /srv/salt/httpd
  mkdir file
  vim apache.sls(必需要以.sls结尾)   (pkgfile service都是所调用的模块 下面是模块调用的方法)
  apache-install: (安装软件包)
  pkg.installed:
  - name:httpd
  apache-config: (更改配置文件)
  file.managed:
  - name:/etc/httpd/conf/httpd.conf
  - source:salt://httpd/file/httpd.conf
  - mode:644
  - user:root
  - group:root
  -require:

  - pkg:apache-install (这个写的是>  apache-service: (启动服务)
  service.running:
  - name:httpd
  - enable:Ture (开机自启)

  ->  - watch: (minion与master之间建立更改联系)
  - file:apache-config
  默认md5方式加密传输:
  dd4:cd /srv/salt/httpd/file
  md5sum httpd.conf
  dd5:cd /var/cache/salt/minion/files/base/httpd/file
  md5sum httpd.conf
  测试:
DSC0003.png

DSC0004.png

DSC0005.png

DSC0006.png

  不同服务对应不同虚拟机:(再开一台虚拟机 dd3 本地要有解析)
  cd /srv/salt
  vim top.sls
  base:
  'dd5.example.com':
  -httpd.apache
  'dd3.example.com':
  -httpd.apache
  源码安装:
  cd /srv/salt/nginx
  vim install.sls
  nginx-install:
  pkg.installed:
  - pkgs:
  - gcc
  -pcre-devel
  -openssl-devel
  file.managed: (把服务器端的源码推到客户端的哪里)
  - name:/mnt/nginx-1.10.1.tar.gz (放到客户端的哪里)
  - source:salt://nginx/file/nginx-1.10.1.tar.gz (来源:服务端的资源在哪里 客户端去哪里找 )
  cmd.run:
  - name:cd /mnt;tar zxf nginx-1.10.1.tar.gz;cd nginx-1.10.1;./configure--prefix=/usr/local/nginx --with-http_ssl_module --with-http_stub_status_module--with-file-aio --with-threads &> /dev/null && make &>/dev/null && make install &> /dev/null
  -creates: /usr/local/nginx (如果存在就不执行)
  - unless:test -d /usr/local/nginx  (第二种方式除非这个目录不存在时安装)
  测试: salt 'dd3.example.com' state.slsnginx.install
DSC0007.png

  源码安装nginx升级版:
  cd /srv/salt
  mkdir pkg
  vim install.sls
  pkg-install:
  pkg.installed:
  - pkgs:
  - gcc
  -pcre-devel
  -openssl-devel
  mkdir user
  vim nginx.sls
  nginx-user:
  group.present:
  - name:nginx
  - gid:1000
  user.present:
  - name:nginx
  - uid:1000
  - gid:1000
  - shell:/sbin/nologin
  cd /srv/salt/nginx
  vim install.sls
  include:
  -pkg.install
  -user.nginx
  nginx-source:
  file.managed:
  - name:/mnt/nginx-1.10.1.tar.gz
  - source:salt://nginx/file/nginx-1.10.1.tar.gz
  nginx-install:
  cmd.run:
  - name:cd /mnt;tar zxf nginx-1.10.1.tar.gz;cd nginx-1.10.1;./configure--prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_ssl_module--with-http_stub_status_module --with-file-aio --with-threads &>/dev/null && make &> /dev/null && make install &>/dev/null
  -creates: /usr/local/nginx
  -require:
  - pkg: pkg-install
  - file:nginx-source
  - user: nginx-user
  nginx服务的配置:
DSC0008.png

  cd /srv/salt/nginx
  vim service.sls
  include:
  -nginx.install
  nginx-config:
  file.managed:
  - name:/usr/local/nginx/conf/nginx.conf
  - source:salt://nginx/file/nginx.conf
  nginx-init:
  file.managed:
  - name: /etc/init.d/nginx
  - source:salt://nginx/file/nginx
  -mode: 755
  cmd.run:
  - name:chkconfig --add nginx
  - unless:chkconfig --list nginx
  -require:
  - file:nginx-init
  service.running:
  - name:nginx
  - enable:True

  ->  - watch:
  - file: nginx-config
DSC0009.png

DSC00010.png

DSC00011.png

  nginx+haproxy (用haproxy做负载均衡)
  dd1dd3 dd4 dd22(haproxy)
  
  mkdir/srv/salt/haproxy/
  vimhaproxy.sls
DSC00012.png

  Vim /file/haproxy.cfg
DSC00013.png

DSC00014.png

DSC00015.png

DSC00016.png

DSC00017.png

DSC00018.png

DSC00019.png

  cd /srv/salt
  vim top.sls
  base:
  'dd3.example.com':
  - nginx.nginx
  'dd4.example.com':
  -nginx.nginx
  'dd22.example.com':
  -haproxy.haproxy

运维网声明 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-543964-1-1.html 上篇帖子: saltstack的state.sls和state.highstate之区别 下篇帖子: Saltstack安装nginx+haproxy
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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