一、安装基础:
1.导入SaltStack仓库key:
wgethttps://repo.saltstack.com/yum/rhel7/SALTSTACK-GPG-KEY.pub rpm--importSALTSTACK-GPG-KEY.pub rm-fSALTSTACK-GPG-KEY.pub
2.创建新的YUM源文件并“/etc/yum.repos.d/saltstack.repo”编辑如下内容
[saltstack-repo] name=SaltStackrepoforRHEL/CentOS7 baseurl=https://repo.saltstack.com/yum/rhel7 enabled=1 gpgcheck=1 gpgkey=https://repo.saltstack.com/yum/rhel7/SALTSTACK-GPG-KEY.pub
3.安装SaltStack软件
yumcleanexpire-cache yumupdate 安装salt-minion,salt-master yuminstallsalt-master yuminstallsalt-minion
minion: vi/etc/salt/minion master:11.1.0.44 cat/etc/salt/minion|grep"^master" master:11.1.0.44 打开该文件,这里有两项是必须配置项。其一、找到如下行 #resolved,thentheminionwillfailtostart. #master:salt 在其下增加master主机的配置 #resolved,thentheminionwillfailtostart. #master:salt master:11.1.0.44 这里直接配置的是IP地址,也可以配置成主机名,如果配置成主机名的话,需要在/etc/hosts文件中master主机对应的IP, 如果使用内部DNS的例外,可以在内部DNS上的统一配置。 其二、找到如下段部分 RejectedKeys:在其下增加一行内容 id:host111 这里是指定当前主机的id号,这在后面master认证和master调用命令执行时显示的名称,可以根据实际识别需要填写。 另外需要注意的是,以上两处配置冒号后面都需要有一个空格,不然会报如下错误: master: vi/etc/salt/master interface:11.1.0.44 cat/etc/salt/master|grep"^interface" interface:11..1.0.44 注意:master和interface前面有两个空格,如果没有启动的时候回出现错误;
5.启动服务:
Master chkconfigsalt-masteron systemctlrestartsalt-master.service Minion chkconfigsalt-minionon systemctlrestartsalt-minion.service
6,测试saltstack
查看minion列表: [root@salt-master~]#salt-key-L AcceptedKeys: DeniedKeys: UnacceptedKeys: host111 RejectedKeys: 接收所有key: salt-key-A 在这个过程中会提示Y确认,确认即可; 显示结果: Keyforminionhost111accepted. [root@salt-master~]#salt-key-L AcceptedKeys: host111 DeniedKeys: UnacceptedKeys: RejectedKeys:
如果对客户端信任,可以让master自动接受请求,在端/etc/salt/master配置
auto_accept:True
注:可以通过以下方法确认具体的版本: [root@salt-master~]#salt'*'test.versions_report host111: SaltVersion: Salt:2016.3.4 DependencyVersions: cffi:NotInstalled cherrypy:NotInstalled dateutil:NotInstalled gitdb:NotInstalled gitpython:NotInstalled ioflo:NotInstalled Jinja2:2.7.2 libgit2:NotInstalled libnacl:NotInstalled M2Crypto:NotInstalled Mako:NotInstalled msgpack-pure:NotInstalled msgpack-python:0.4.6 MysqL-python:NotInstalled pycparser:NotInstalled pycrypto:2.6.1 pygit2:NotInstalled Python:2.7.5(default,Nov202015,02:00:19) python-gnupg:NotInstalled PyYAML:3.11 PyZMQ:15.3.0 RAET:NotInstalled smmap:NotInstalled timelib:NotInstalled Tornado:4.2.1 ZMQ:4.1.4 SystemVersions: dist:centos7.2.1511Core machine:x86_64 release:3.10.0-327.el7.x86_64 system:Linux version:CentOSLinux7.2.1511Core
二、命令执行
1、测试和minion之间的通信是否正常
[root@salt-master~]#salt'*'test.ping
host111: True True代表正常,*代表所有主机,也可以选择单台或者按组及正则进行匹配等, 这个可以参看下官方相关文档。其默认执行的正则是shell正则,也可以使用其他正则或组等,如下: salt'shell正则'命令 salt-E'prel正则' salt-N$group命令 salt-L'server_id1,server_id2,server_id3'命令
2、执行命令操作
常用的操作类似如下 salt'*'cmd.run"ab-n10-c2http://www.111cn.net/" salt'*'grains.ls查看grains分类 salt'*'grains.items查看grains所有信息 salt'*'grains.itemosrelease查看grains某个信息 salt'*'cmd.run"/App/Nginx/sbin/Nginx-v"命令执行使用cmd.run参数,由于输出内容较多, 不再一一列出,这里只列出一台查看Nginx版本的: [root@salt-master~]#salt'*'cmd.run'Nginx-v' host111: Nginxversion:Nginx/1.10.2原文链接:https://www.f2er.com/centos/379837.html