salt 安装 以及salt-api使用

salt--master    和 salt-minion

控制端      被控制端

通过 salt-api 访问 salt-master  来控制salt-minion 执行 命令  返回结果

LINUX 服务器安装过程

master /api

yum install -y salt-master

yum install -y salt-api pyOpenSSL

pip install salt-api

pip install cherrypy==3.2.3

cd /etc/pki/tls/certs/

扫描二维码关注公众号,回复: 8329667 查看本文章

make testcert

  -->设置秘钥密码,(3次) ,剩下回车

cd ../private/

openssl rsa -in localhost.key -out localhost_nopass.key

chmod 755 /etc/pki/tls/certs/localhost.crt

chmod 755 /etc/pki/tls/private/localhost.key

chmod 755 /etc/pki/tls/private/localhost_nopass.key

useradd -M -s /sbin/nologin saltapi

passwd saltapi

sed -i '/#default_include/s/#default/default/g' /etc/salt/master

mkdir -p /etc/salt/master.d

cd /etc/salt/master.d

vim api.conf

  rest_cherrypy:

   port: 8001

  ssl_crt: /etc/pki/tls/certs/localhost.crt

  ssl_key: /etc/pki/tls/private/localhost_nopass.key

vim eauch.conf

  external_auth:

   pam:

   saltapi: # 用户

   - .* # 该配置文件给予saltapi用户所有模块使用权限,出于安全考虑一般只给予特定模块使用权限

   - '@runner'

   - '@wheel'

systemctl restart salt-master

systemctl start salt-api

minion

yum install -y salt-minion

vim /etc/salt/minion

写入一行 master: 主ip
ip:自己的id_name ip地址 写入 salt-master 的地址 

master 控制 minion  端的命令

salt-key -->
-L 列出所有
-a 允许一台minion(id)
-A 允许所有
-r 拒绝一台
-R 拒绝所有
-d 删除指定mini
-D 删除所有

测试

salt '*' test.ping

salt '*'  cmd.run 'ls /'

 ==============salt  file模块使用------------->推送文件

修改配置文件/etc/salt/master,打开以下6行的注释

416 file_roots:

417   base:

418     - /srv/salt

529 pillar_roots:

530   base:

531     - /srv/pillar

 mkdir -p /srv/salt/files

mkdir -p /srv/pillar

 cd /etc/salt

vim host_file.sls

/etc/hosts:
file.managed:
- source: salt://files/A.zip
- user: root
- group: root
- mode: 644

cd files

这里放 想要推送的包(多个包就把包 打成一个包)

A.zip

salt '*' state.sls  ./host_file  执行推送 

猜你喜欢

转载自www.cnblogs.com/netflix/p/12106220.html