Saltstack+Shell自动化分发脚本 推荐
2017-02-24 14:42
274 查看
目的:用Saltstack工具去部署批量服务器,自动化安装(卸载)服务(比如MySQL)。
1.1)查看master状态信息:
1.3)查看minion状态信息:
1.4.1)常用cp模块介绍:(其它模块可看我其它相关博客)
cp.get_file 从主服务器下载目录
cp.get_dir 从主服务器下载文件
cp.get_url 从服务器下载指定URL文件
1.5.1)安装
![](https://s1.51cto.com/wyfs02/M02/8D/EE/wKioL1iv2Lbz90Q4AAAdlt58JhE197.png)
1.5.2)卸载:
[root@node2 ~]# ll 总用量 304228 -rw-r--r-- 1 root root 311516309 3月 10 2015 mysql-5.6.21-linux-glibc2.5-x86_64.tar.gz -rwxr-xr-x 1 root root 6628 3月 25 12:52 MySQL_二进制安装.sh -rwxr-xr-x 1 root root 590 3月 25 12:53 MySQL_二进制卸载.sh [root@node2 ~]#1、查看Master和minion状态。
Master | node2 | 192.168.1.221 |
minion | node4 | 192.168.1.223 |
[root@node2 ~]# netstat -atupn|grep --color -E '4505|4506' tcp 0 0 0.0.0.0:4505 0.0.0.0:* LISTEN 2897/python2.6 tcp 0 0 0.0.0.0:4506 0.0.0.0:* LISTEN 2915/python2.6 tcp 0 0 192.168.1.221:4505 192.168.1.223:58448 ESTABLISHED 2897/python2.6 tcp 0 0 192.168.1.221:4506 192.168.1.223:53904 ESTABLISHED 2915/python2.6 [root@node2 ~]#1.2)查看当前的salt key信息(minion)我只配置了一个:
[root@node2 ~]# salt-key -L Accepted Keys: node4 Denied Keys: Unaccepted Keys: Rejected Keys: [root@node2 ~]#
1.3)查看minion状态信息:
[root@node2 ~]# salt 'node4' cmd.run 'netstat -atupn|grep python' node4: tcp 0 0 192.168.1.223:53904 192.168.1.221:4506 ESTABLISHED 2846/python2.6 tcp 0 0 192.168.1.223:58448 192.168.1.221:4505 ESTABLISHED 2846/python2.6 [root@node2 ~]#1.4)分发Shell脚本和包并授权:
1.4.1)常用cp模块介绍:(其它模块可看我其它相关博客)
cp.get_file 从主服务器下载目录
cp.get_dir 从主服务器下载文件
cp.get_url 从服务器下载指定URL文件
[root@node2 ~]# salt 'node4' cp.get_file salt://mysql-5.6.21-linux-glibc2.5-x86_64.tar.gz /root/mysql-5.6.21-linux-glibc2.5-x86_64.tar.gz node4: /root/mysql-5.6.21-linux-glibc2.5-x86_64.tar.gz [root@node2 ~]# [root@node2 ~]# salt 'node4' cp.get_file salt://MySQL_install.sh /root/MySQL_install.sh node4: /root/MySQL_install.sh [root@node2 ~]# salt 'node4' cp.get_file salt://MySQL_remove.sh /root/MySQL_remove.sh node4: /root/MySQL_remove.sh [root@node2 ~]#1.4.2)minion查看;
[root@node4 ~]# ll 总用量 304232 -rw-r--r-- 1 root root 311516309 3月 25 14:06 mysql-5.6.21-linux-glibc2.5-x86_64.tar.gz -rw-r--r-- 1 root root 6628 3月 25 14:09 MySQL_install.sh -rw-r--r-- 1 root root 590 3月 25 14:10 MySQL_remove.sh [root@node4 ~]#1.4.3)脚本加权:
[root@node2 ~]# salt 'node4' cmd.run 'chmod +x /root/*.sh' node4: [root@node2 ~]#1.5)脚本安装:
1.5.1)安装
[root@node2 ~]# salt 'node4' cmd.run '/root/MySQL_install.sh' node4: ?[37;32m 开始MySQL的安装! ?[0m ?[37;32m MySQL安装目录已经创建完成![/usr/local/mysql下] ?[0m ########################################################! ?[37;32m MySQL需要的的用户和组创建完成! ?[0m ########################################################! 安装MySQL需要的基本依赖包! ?[37;32m MySQL需要的基本依赖包已安装完成! ?[0m ########################################################! 初始化MySQL! ?[37;32m MySQL初始化成功! ?[0m ########################################################! 更改MySQL权限属组权限 ?[37;32m 更改MySQL目录权限属组权限成功! ?[0m ########################################################! 创建并配置mysql的启动文件! ?[37;32m MySQL启动文件已经创建配置完成! ?[0m ########################################################! 导入优化好的my.cnf到/etc/下 ?[37;32m MySQL的配置文件已准备完毕! ?[0m ########################################################! 启动MySQL服务 ?[37;32m MySQL服务启动成功! ?[0m ########################################################! 配置MySQL的root账号密码! ?[37;32m MySQL的root默认账号密码是renzhiyuan ?[0m ########################################################! [root@node2 ~]#
![](https://s1.51cto.com/wyfs02/M02/8D/EE/wKioL1iv2Lbz90Q4AAAdlt58JhE197.png)
1.5.2)卸载:
[root@node2 ~]# salt 'node4' cmd.run '/root/MySQL_remove.sh' node4: ?[37;32m 开始MySQL卸载! ?[0m ########################################################! ?[37;32m MySQL卸载成功! ?[0m ########################################################! [root@node2 ~]#其实自动化可以放在一个脚本批量执行,博主只是为了更方便的分享知识,未免写的有点多,欢迎大家指正。
相关文章推荐
- Saltstack+Shell自动化分发脚本
- 2.8-saltstack远程执行shell脚本
- 开发自动化系统管理脚本(shell) 推荐
- 自动化运维工具Saltstack详细介绍 推荐
- 自动化运维神器之saltstack (二)文件服务器 推荐
- 用SHELL脚本自动化安装Nagios服务器端和客户端的 推荐
- 用SHELL脚本精准清除Squid缓存[更新版] 推荐
- 自动化备份远程服务器端的文件到本地的Shell脚本
- 利用shell脚本来监控linux系统的负载与CPU占用情况 推荐
- Shell脚本防攻击一例 推荐
- 一起学shell之(七)产生脚本以及Awk的惊人表现 推荐
- 用Shell脚本实现自动化完成属于自己的微型Linux!(二)
- 构建cacti监控平台, LAMP使用脚本自动化编译安装 推荐
- FTP自动化上传的Shell脚本
- 系统初始化SHELL脚本 推荐
- shell脚本学习指南――好书推荐
- 开发自动化系统管理脚本(shell)
- 使用getopt处理shell脚本的参数 推荐
- LAMP自动化安装脚本 推荐
- 利用shell脚本来监控linux系统的内存 推荐