Saltstack快速入门

安装

1.只需要安装一台master即可,其他都安装minion客户端

  master:yum -y install salt-master salt-minion          systemctl enable salt-master.service

  minion:yum -y install salt-minion          systemctl enable salt-minion.service

 

  systemctl start salt-master.service 启动即可

2.现在先不要启动minion。还需要配置minion,因为客户端现在还不知道master的地址

  vim /etc/salt/minion

  #16行

  master: 192.168.73.128            #这里域名也行,如果是域名这样的会方便。 

  id                                         #这里配置是用python来获取主机的FQN名称,也就是主机名,主机名必须事先写好

 可以在目录中看到等待同意的主机 在  minions_pre  目录下

[root@linux-node1 pki]# pwd
/etc/salt/pki
[root@linux-node1 pki]# tree
.
├── master
│   ├── master.pem
│   ├── master.pub
│   ├── minions
│   ├── minions_autosign
│   ├── minions_denied
│   ├── minions_pre
│   │   ├── linu-node2.com
│   │   └── linux-node1.com
│   └── minions_rejected
└── minion
    ├── minion.pem
    └── minion.pub

7 directories, 6 files

 salt-key

[root@linux-node1 pki]# salt-key
Accepted Keys:
Denied Keys:
Unaccepted Keys:
linu-node2.com
linux-node1.com
Rejected Keys:
[root@linux-node1 pki]# salt-key -a linu*
The following keys are going to be accepted:
Unaccepted Keys:
linu-node2.com
linux-node1.com
Proceed? [n/Y] y
Key for minion linu-node2.com accepted.
Key for minion linux-node1.com accepted.

[root@linux-node1 pki]# tree
.
├── master
│   ├── master.pem
│   ├── master.pub
│   ├── minions
│   │   ├── linu-node2.com
│   │   └── linux-node1.com
│   ├── minions_autosign
│   ├── minions_denied
│   ├── minions_pre
│   └── minions_rejected
└── minion
├── minion.pem
└── minion.pub

这时你看客户端会偷偷的保存了一份master的公钥

[root@linux-node2 pki]# tree
.
└── minion
    ├── minion_master.pub
    ├── minion.pem
    └── minion.pub

1 directory, 3 files

简单的操作

salt是一个命令, * 是所有,,发送一个消息,看minion是否能回复。

test是一个模块,ping是一个方法

[root@linux-node1 pki]# salt '*' test.ping
linux-node1.com:
    True
linu-node2.com:
    True

调用cmd模块

[root@linux-node1 pki]# salt '*' cmd.run 'uptime'
linux-node1.com:
     23:43:38 up 12 min,  1 user,  load average: 0.00, 0.04, 0.05
linu-node2.com:
     23:43:38 up 12 min,  1 user,  load average: 0.00, 0.06, 0.10

修改配置文件

vim /etc/salt/master

查找file_roots

  修改注释

file_roots:
  base:
    - /srv/salt

  这里配置的意思:指定base路径,默认必须有base环境

  mkdir -p /srv/salt/

  ###切记勿使用tab键!!!

 修改完配置文件,必须要重启salt-master服务!!!

状态配置文件

##编写状态文件需注意:

##空格!!!

##编写的一个状态,一定要支持多次执行!!!

实验安装编写一个安装apache.sls    这是必须的格式

[root@linux-node1 salt]# pwd
/srv/salt
[root@linux-node1 salt]# vim apache.sls

编写apache状态 内容:

apache-install:$
  pkg.installed:$         #这个一个模块,installed是方法
    - names:$            
      - httpd$        #安装这2个包。。用yum帮你安装,如果你是ubantu,会用apt-get帮你装上。。内部已经封装好了
      - httpd-devel$
$
apache-service:$        #这个名称是自己起的
  service.running:$      #这是一个方法
    - name: httpd        #这是进程名称
    - enable: True$       #开机自动启动 
    - reload: True    $      #可以重载
~                                                                                                               
~                                                                                                                                                                                                                    
~                                                                                                               
~                                                                                                               
:set list    

 

salt '*' state.sls apache  #去执行  state是一个模块,这个模块有一个sls方法,然后附加一个参数是apache   。  ##这里的apache也就是apache.sls    所以你的后缀不能是别的

##如果报错!一定是状态文件没有写对!!!!,修改文件后,必须重启

这时候。

netstat -tnlp  就可以看到http启动

 

然后你在随便一台机器上查看后台进程

[root@linux-node2 pki]# ps -aux |  grep yum
root       2431 25.7  3.7 291376 70140 ?        S    23:59   0:01 /usr/bin/python /usr/bin/yum -y install httpd-devel

 

posted @ 2017-03-06 00:08  所有的梦想都画在墙上  阅读(130)  评论(0)    收藏  举报