nginxs

运维博客

centos5 安装saltstack

2016/04/02 14:41 于 安全 0

微信 微博 豆瓣 人人

saltstack是一款批量管理操作服务状态的工具,他越来越流行源于他简单的配置和快速的操作。
因为saltstack出现的比较晚,centos的早起版本的网络仓库都没有,
因此写这篇文档方便新手操作,这里都是经过我亲自操作的。

快速安装脚本:https://github.com/bashhu/shell/blob/master/salt/startshell/salt-install.sh如果想体验安装中乐趣请继续下文

MASTER服务

 mkdir -p /etc/salt/state
vim / etc/salt/master
timeout: 60
state_top: top.sls
file_roots:
base:
- /etc/salt/states/base

minion节点:

vim /etc/salt/minion
master: 192.168.1.2 #master的IP或者域名

微信扫描二维码了解更多 ->

[运维博客]
[运维博客](http://nginxs.blog.51cto.com/

saltstackRHEL5安装saltstacksaltstack安装saltstack快速安装saltstack快速安装脚本

salt教程

2016/03/10 00:01 于 系统 0

微信 微博 豆瓣 人人

介绍
这个教程是我中秋休息的时候所做,为大家学习了解saltstack。
SaltStack名字是由它的故乡美国盐城。
SaltStack是为我们批量管理千万台机器的基础工具,拓展起来也十分方便。SaltStack可以进行动态的编辑,配置管理,远程执行命令等等。
Saltstack包括master和minion,master是控制端,minion是被管理节点。
这里先不废话,简单介绍安装(下面说到的salt就是咱们所说的SaltStack).

这里有两个节点
salt-master:10.0.0.11
salt-minion:10.0.0.21

这里先给两个节点安装个epel源,方便salt网络安装。
[root@salt-master ~] rpm -ivh http://mirrors.ustc.edu.cn/centos/6/extras/x86_64/Packages/epel-release-6-8.noarch.rpm

10.0.0.11(master)节点操作
安装salt-master,暂时不需要配置。
[root@salt-master ~]# hostname
salt-master
[root@salt-master ~]# yum -y install salt salt-master salt-minion
安装配置salt-minion
[root@salt-master ~]# egrep -v '^#|^$' /etc/salt/minion
master: 10.0.0.11
[root@salt-master ~]# /etc/init.d/salt-minion start
Starting salt-minion daemon: [确定]

10.0.0.21节点操作
安装配置salt-minion
[root@salt-minion1 ~]# hostname
salt-minion1
[root@salt-master ~]# yum -y install salt salt-minion
[root@salt-master ~]# egrep -v '^#|^$' /etc/salt/minion
master: 10.0.0.11
[root@salt-minion1 ~]# /etc/init.d/salt-minion start
Starting salt-minion daemon: [确定]

10.0.0.11(master)节点操作
查看salt-master接收到的密钥,分别是“10.0.0.11”和“10.0.021”,master通过这些密钥
salt-key -L 查看当前密钥
-A 接受所有来自客户端密钥
--accept=example.com 接受指定的密钥

[root@salt-master ~]# salt-key -L
Accepted Keys:
Denied Keys:
Unaccepted Keys:
salt-master
salt-minion1
Rejected Keys:

[root@salt-master ~]# salt-key -A
The following keys are going to be accepted:
Unaccepted Keys:
salt-master
salt-minion1
Proceed? [n/Y] y
Key for minion salt-master accepted.
Key for minion salt-minion1 accepted.

验证salt-master是否可以控制各个minion节点(查看本机的IP)
[root@salt-master ~]# salt '*' network.ip_addrs
salt-master:


  • 10.0.0.11
  • 172.17.42.1
    salt-minion1:
  • 10.0.0.21

添加salt-master配置
刚刚只是把salt-minion加入到了salt-master管理,就像老板招聘了一群员工现在老板可以向员工发号命令了,如果老板有一部分多步骤且重复的指令,老板一般就会用到邮件和文档来让员工操作了,
salt-master是通过写sls配置管理minion上重复指令的,服务状态等等。这里需要先配置一下:

创建配置文件目录
[root@salt-master srv]# mkdir -p /srv/salt/base
在master配置里面指定配置文件目录
[root@salt-master ~]# vim /etc/salt/master
file_roots:
base:


  • /srv/salt/base
    [root@salt-master ~]# /etc/init.d/salt-master restart
    Stopping salt-master daemon: [确定]
    Starting salt-master daemon: [确定]

salt-master默认会读取上面指定配置目录下的top.sls。(这个是在master配置文件下的state_top: top.sls决定的)
现在写一个

[root@salt-master base]# tree
.
├── system
│   ├── files
│   │   └── hosts
│   └── hosts.sls
└── top.sls

2 directories, 3 files
[root@salt-master base]# cat top.sls

base: #这里指定的环境是base,所以这个top.sls在/srv/salt/base目录下
"": # “”是所有主机的意思,指定单个主机直接写“salt-minion1”


  • system.hosts # 这里指调用了那些sls配置文件,“点”在这里是目录分级

    也就是system没有可以下的hosts.sls配置文件

[root@salt-master base]# cat system/hosts.sls
/etc/hosts: #这个是配置ID和文件存放位置,是不可重复的
file.managed: #这里调用了“file.managed”salt的文件管理模块


  • source: salt://system/files/hosts #source是指定文件源,“salt://”是指salt项目下文件
  • mode: 644 #文件权限644
  • user: root #文件用户属主
  • group: root #文件的用户组

下面执行一下上面的配置文件状态
[root@salt-master system]# salt 'salt-minion1' state.highstate #salt “执行节点” 执行模块

下面是执行结果
salt-minion1: #执行节点

      ID: /etc/hosts                                             #配置ID
Function: file.managed #模块
Result: True #执行结果True为成功
Comment: File /etc/hosts updated #文件执行操作【更新】
Started: 14:15:55.120499 #执行命令开始时间
Duration: 24.284 ms #执行的时长
Changes: #是否产生更改
----------
diff:
---
阅读更多...

saltstacksaltstack入门

管理