自动化运维平台saltstack的使用与搭建
2017-08-09 21:52
429 查看
saltstacks简介
saltstack是一个功能强大的自动化运维软件。有三种模式
1)本地模式(local),不需要启动进程,只要配置文件就可以写出来
2)master minion 模式
3)代理模式(syndic)
4)ssh模式
我们本次主要使用的是master minion模式
master –> minion 模式:
master默认—->监听本地所有网络接口
长连接
发布订阅系统:4505端口
minion端只做订阅(pub推送、sub接收)
4506端口:专门用于接收minion端的返回值
saltstack工具的简单使用:
1.yum仓库的搭建:vim /etc/yum.repos.d/rhel-source.repo
[rhel6.5] name=Red Hat baseurl=http://172.25.254.40/rhel6.5 gpgcheck=0 [salt] name=salt baseurl=ftp://172.25.254.250/pub/docs/saltstack/rhel6 gpgcheck=0
yum仓库中新增加的文件有
PyYAML-3.11-1.el6.x86_64.rpm libyaml-0.1.3-4.el6.x86_64.rpm python-babel-0.9.4-5.1.el6.noarch.rpm python-backports-1.0-5.el6.x86_64.rpm python-backports-ssl_match_hostname-3.4.0.2-2.el6.noarch.rpm python-chardet-2.2.1-1.el6.noarch.rpm python-cherrypy-3.2.2-4.el6.noarch.rpm python-crypto-2.6.1-3.el6.x86_64.rpm python-crypto-debuginfo-2.6.1-3.el6.x86_64.rpm python-enum34-1.0-4.el6.noarch.rpm python-futures-3.0.3-1.el6.noarch.rpm python-impacket-0.9.14-1.el6.noarch.rpm python-jinja2-2.8.1-1.el6.noarch.rpm python-msgpack-0.4.6-1.el6.x86_64.rpm python-ordereddict-1.1-2.el6.noarch.rpm python-requests-2.6.0-3.el6.noarch.rpm python-setproctitle-1.1.7-2.el6.x86_64.rpm python-six-1.9.0-2.el6.noarch.rpm python-tornado-4.2.1-1.el6.x86_64.rpm python-urllib3-1.10.2-1.el6.noarch.rpm python-zmq-14.5.0-2.el6.x86_64.rpm repodata salt-2016.11.3-1.el6.noarch.rpm salt-api-2016.11.3-1.el6.noarch.rpm salt-cloud-2016.11.3-1.el6.noarch.rpm salt-master-2016.11.3-1.el6.noarch.rpm salt-minion-2016.11.3-1.el6.noarch.rpm salt-ssh-2016.11.3-1.el6.noarch.rpm salt-syndic-2016.11.3-1.el6.noarch.rpm zeromq-4.0.5-< 4000 span class="hljs-number">4.el6.x86_64.rpm
随后在几个主机之间做好解析
vim /etc/hosts 4 172.25.254.143 server2 5 172.25.254.145 server3 6 172.25.254.146 server5
在两个minion端
安装minion
yum install salt-minion -y
修改配置文件
vim /etc/salt/master 16 master: server2 #修改为master主机名
开启服务
/etc/init.d/salt-minion start
master端
修改配置文件如下
vim /etc/salt/master 534 file_roots: 535 base: 536 - /srv/salt
salt '*' test.ping #查看并发现minion主机 salt-key -A #添加认证 salt-key -L #查看已经认证的minion主机
Accepted Keys: server3 server5 Denied Keys: Unaccepted Keys: Rejected Keys:
校验码的查看(判别文件是否更改)
cd /etc/salt/pki/master/ md5sum master.pub
6320641fbe72d9f9b4fc43cef7cd33da master.pubcd
md5sum minion/minion_master.pub
6320641fbe72d9f9b4fc43cef7cd33da minion/minion_master.pub
相互交换公钥用来做加密解密
使用YAML语言来编写运维脚本
实例:apache的安装脚本httpd: pkg.installed /etc/httpd/conf/httpd.conf: file.managed: - source: salt://httpd/files/httpd.conf - mode: 644 - user: root - group: root - require: - pkg: httpd apache-service: service.running: - name: httpd - enable: True - reload: True - watch: - file: /etc/httpd/conf/httpd.conf
安装检测:
salt server3 state.sls httpd.apache
实例:nginx的安装脚本:
nginx-install: user.present: - name: nginx - uid: 800 - shell: /sbin/nologin - createhome: False - home: /usr/local/nginx pkg.installed: - pkgs: - gcc - openssl-devel - pcre-devel file.managed: - name: /mnt/nginx-1.12.0.tar.gz - source: salt://nginx/files/nginx-1.12.0.tar.gz cmd.run: - name: cd /mnt && tar zxf nginx-1.12.0.tar.gz && cd nginx-1.12.0 && sed -i.bak 's/CFLAGS="$CFLAGS -g"/#CFLAGS="$CFLAGS -g"/g' auto/cc/gcc && ./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_stub_status_module && make && make install - creates: /usr/local/nginx - require: - pkg: nginx-install - file: nginx-install - user: nginx-install
安装检测:
salt server3 state.sls nginx.install
相关文章推荐
- saltstack自动化运维平台的介绍、部署、基本使用
- 自动化运维平台搭建(一)
- 4、python自动化运维——集中化管理平台Saltstack
- 写一个基于saltstack的自动化运维平台
- 自动化运维平台----Django搭建之路
- saltstack自动化管理平台搭建
- 自动化运维集中式管理工具saltstack的基于各个平台的部署
- Git WebHook:用于迅速搭建并使用 WebHook 进行自动化部署和运维系统( Python)
- 自动化运维平台之系统自动化安装Cobbler系统使用详解 推荐
- 使用salt-api来搭建salt自动化平台
- 使用puppet实现自动化运维 推荐
- 运维自动化之使用PHP+MYSQL+SHELL打造私有监控系统(四)
- 自动化运维管理平台puppet安装
- saltstack 自动化运维神器(二)文件同步
- 自动化运维工具-pssh工具安装配置及简单使用讲解
- 使用logstash+elasticsearch+kibana快速搭建日志平台
- linux 自动化运维工具ansible的使用详细教程
- 自动化运维web环境搭建:Nginx+Django+uwsgi
- 使用gitlab+git+mysql+redis+nginx搭建自己的代码管理平台
- 使用 Docker 搭建代码质量检测平台 SonarQube