一、RPM安装篇

使用salt-ssh功能要求客户端系统python版本2.6+

1.salt-minion端环境:

  系统:CentOS 6.5 64bit

  python版本:2.6.6    

2.配置/etc/salt/roster

例:

10.10.10.30:
host: 10.10.10.30
user: syspub    #普通用户,有无密码sudo权限
passwd: 123456aa
sudo: True
timeout: 15

当客户端数量较多时,手工配置/etc/salt/roster比较繁琐,这里写一个简单脚本供参考

vim ip.sh
#!/bin/bash
for i in `cat /root/gg`
do
echo "$i:" >> /etc/salt/roster
echo " host: $i" >> /etc/salt/roster
echo " user: syspub" >> /etc/salt/roster
echo " passwd: 123456aa" >> /etc/salt/roster
echo " sudo: True" >> /etc/salt/roster
echo " timeout: 15" >> /etc/salt/roster
done

其中/root/gg为客户端IP表,例:

10.10.10.30
10.10.10.31
10.10.10.32

3.编写state.sls文件

路径:/srv/salt/minions/

目录树结构如下:

|conf
|---minion
|install.sls
|yum.repos.d          #yum源可自制本地源
|---CentOS-Base.repo      
|---epel.repo

a.编写/srv/salt/minions/install.sls

#salt_minion_install
minion_yum:
file.recurse:
- name: /etc/yum.repos.d
- source: salt://minions/yum.repos.d
- user: root
- group: root
- file_mode: 644
- dir_mode: 755
- include_empty: True
minion_install:
pkg.installed:
- pkgs:
- salt-minion
- require:
- file: minion_yum
- unless: rpm -qa | grep salt-minion
minion_conf:
file.managed:
- name: /etc/salt/minion
- source: salt://minions/conf/minion
- user: root
- group: root
- mode: 640
- template: jinja
- defaults:
minion_id: {{ grains['fqdn_ip4'][0] }}        #要求客户端/etc/hosts中绑定其IP及主机名,不绑定主机名在127.0.0.1
- require:
- pkg: minion_install
minion_service:
service.running:
- name: salt-minion
- enable: True
- require:
- file: minion_conf

b.minion文件为salt-minion版本自带默认minion文件

4.部署salt-minion

salt-ssh端执行如下命令:

salt-ssh -i '*' state.sls minions.install

验证:

salt-ssh -ir '*' 'ps aux | grep salt' | grep salt | grep -v grep | wc -l

对比与/root/gg中IP数目是否相等

最新文章

  1. lucky 的 时光助理(2)
  2. 【python坑记录】
  3. 11、ASP.NET MVC入门到精通——AspnetMVC分页
  4. 【Android端 APP 内存分析】使用工具进行APP的内存分析
  5. oracle全文检索
  6. Swig 使用指南
  7. MongoDB数据备份与恢复
  8. C++ STL 简单记录
  9. input value的值不可改变
  10. CSU1326+背包+并查集
  11. python之6-1常用函数
  12. PHP结合Linux的cron命令实现定时任务
  13. Unity3D游戏开发之连续滚动背景
  14. 解决easyui datagrid load时缓存问题
  15. 阿里云CentOS安装firefox闪退
  16. QT修改UI和源码后,程序页面还是原来页面的解决方法
  17. Phoenix与Hive学习资料
  18. stringify 字符串转化成json方法
  19. Django中的视图(view)
  20. springboot 整合redis redis工具类

热门文章

  1. HTC VIVE SDK 中的例子 hellovr_opengl 程序流程分析
  2. 使用webpack构建本地服务器
  3. Docker与PAAS
  4. diamond淘宝框架使用
  5. oracle调优 浅析有效的游标管理
  6. html的小例子
  7. DriverStore文件夹特别大,能删除吗?
  8. HDU 4632 Palindrome subsequence(区间dp)
  9. 解决安装Ubuntu之后找不到无线网卡驱动的问题
  10. mysql select *... where id in (select 字符串 from ... )查询结果问题?