xlfm22 发表于 2018-1-3 17:44:37

saltstack的部署安装[一]

  这次试验使用的环境如下
  

# cat /etc/redhat-release
  
CentOS>6.8 (Final)  

  下载的慢可以使用下面这个源
  

#优化epel源  
sed
-i 's/mirrors.aliyun.com/mirror.tuna.tsinghua.edu.cn/g' /etc/yum.repos.d/*.repo  

  安装Saltstack在node3上安装master、minion在node4上安装minion
  

# yum install -y salt-master salt-minion  
[iyunv@linux
-node4 ~]# yum install -y salt-minion  

  安装后查看安装了什么软件
  

# rpm -qa|grep salt  
salt
-master-2015.5.10-2.el6.noarch  
salt
-2015.5.10-2.el6.noarch  
salt
-minion-2015.5.10-2.el6.noarch  
[iyunv@linux
-node4 ~]# rpm -qa|grep salt  
salt
-minion-2015.5.10-2.el6.noarch  
salt
-2015.5.10-2.el6.noarch  

  配置minion
  

# vim /etc/salt/minion  

16 master: 192.168.56.13  

  启动前与启动后
  

# cd /etc/salt/  
[iyunv@linux
-node3 salt]# tree  
.
  
├── master
  
└── minion
  

  

0 directories, 2 files  
[iyunv@linux
-node3 salt]# salt-key    #  
Accepted Keys:
  
Denied Keys:
  
Unaccepted Keys:
  
Rejected Keys:
  
[iyunv@linux
-node3 salt]# tree  
.
  
├── master
  
├── minion
  
└── pki
  └── master
  ├── minions
  ├── minions_pre
  └── minions_rejected
  

  

5 directories, 2 files  
[iyunv@linux
-node3 salt]# salt-key -A    #  
The following keys are going to be accepted:
  
Unaccepted Keys:
  
linux
-node3.example.com  
linux
-node4.example.com  
Proceed
? y  
Key
for minion linux-node3.example.com accepted.  
Key
for minion linux-node4.example.com accepted.  

  
[iyunv@linux
-node3 salt]# tree  
.
  
├── master
  
├── minion
  
├── minion.d
  
│   └── _schedule.conf
  
├── minion_id
  
└── pki
  
├── master
  
│   ├── master.pem
  
│   ├── master.pub
  
│   ├── minions
  
│   │   ├── linux
-node3.example.com  
│   │   └── linux
-node4.example.com  
│   ├── minions_autosign
  
│   ├── minions_denied
  
│   ├── minions_pre
  
│   └── minions_rejected
  
└── minion
  
├── minion_master.pub
  
├── minion.pem
  
└── minion.pub
  

  

9 directories, 11 files  

  

  
[iyunv@linux
-node3 salt]# /etc/init.d/salt-minion start  
Starting salt
-minion daemon:                                 
[iyunv@linux
-node3 salt]# /etc/init.d/salt-master start  
Starting salt
-master daemon:                                 
[iyunv@linux
-node3 salt]# tree  
.
  
├── master
  
├── minion
  
├── minion.d
  
├── minion_id
  
└── pki
  ├── master
  │   ├── master.pem
  │   ├── master.pub
  │   ├── minions
  │   ├── minions_autosign
  │   ├── minions_denied
  │   ├── minions_pre
  │   └── minions_rejected
  └── minion
  ├── minion.pem
  └── minion.pub
  

  

9 directories, 7 files  

  
[iyunv@linux
-node4 salt]# tree  
.
  
└── minion
  

  

0 directories, 1 file  
[iyunv@linux
-node4 salt]# tree  
.
  
└── minion
  

  

0 directories, 1 file  
[iyunv@linux
-node4 salt]# /etc/init.d/salt-minion start  
Starting salt
-minion daemon:                                 
[iyunv@linux
-node4 salt]# tree  
.
  
├── minion
  
├── minion.d
  
├── minion_id
  
└── pki
  └── minion
  ├── minion.pem
  └── minion.pub
  

  

3 directories, 4 files  

  查看一下salt监听的端口
  

# lsof -n -i:4505
  
COMMAND    PID USER   FD   TYPE DEVICE>/OFF NODE NAME  
salt
-mini 1392 root   24uIPv418133      0t0TCP 192.168.56.13:45305->192.168.56.13:4505 (ESTABLISHED)  
salt
-mast 1429 root   12uIPv415166      0t0TCP *:4505 (LISTEN)  
salt
-mast 1429 root   14uIPv418134      0t0TCP 192.168.56.13:4505->192.168.56.13:45305 (ESTABLISHED)  
salt
-mast 1429 root   15uIPv418159      0t0TCP 192.168.56.13:4505->192.168.56.14:48246 (ESTABLISHED)  

  如果更改配置需要如下的步骤:
  1.停止salt-minion
  2.salt-key 删除老的id
  3.删除/etc/salt/minion_id
  4.删除minion端/etc/salt/pki
  5.修改id
  6.启动
  7.重新salt-key加入
  部署成功
  

# salt '*' test.ping  
linux
-node4.example.com:  True
  
linux
-node3.example.com:  True
  

  创建目录
  

# pwd  

/etc/salt  
[iyunv@linux
-node3 salt]# vim master  

416 file_roots:  

417   base:  

418   - /srv/salt/base  
419   dev:
  
420   - /srv/salt/dev
  
421   test:
  
422   - /srv/salt/test
  
423   prod:
  
424   - /srv/salt/prod
  

  
# mkdir -pv /srv/salt/{base,dev,test,prod}
  
mkdir: created directory `/srv/salt'
  
mkdir: created directory `/srv/salt/base'
  
mkdir: created directory `/srv/salt/dev'
  
mkdir: created directory `/srv/salt/test'
  
mkdir: created directory `/srv/salt/prod'
  

  使用top.sls
  

# cat /srv/salt/base/top.sls  

base:'linux-node1.example.com':- web.lamp'linux-node2.example.com':- web.lamp  

  执行
  

# salt 'linux-node2*' state.highstate  
linux
-node2.example.com:  

----------  ID: lamp
-install  Function: pkg.installed
  Result: True
  Comment: All specified packages are already installed.
  Started:
14:32:53.065023  Duration:
684.053 ms  Changes:
  

----------  ID: apache
-config  Function: file.managed
  Name:
/etc/httpd/conf/httpd.conf  Result: True
  Comment: File
/etc/httpd/conf/httpd.conf is in the correct state  Started:
14:32:53.751241  Duration:
8.392 ms  Changes:
  

----------  ID: apache
-conf  Function: file.recurse
  Name:
/etc/httpd/conf.d  Result: True
  Comment: The directory
/etc/httpd/conf.d is in the correct state  Started:
14:32:53.759716  Duration:
11.675 ms  Changes:
  

----------  ID: apache
-auth  Function: pkg.installed
  Name: httpd
-tools  Result: True
  Comment: Package httpd
-tools is already installed.  Started:
14:32:53.771477  Duration:
0.361 ms  Changes:
  

----------  ID: apache
-auth  Function: cmd.run
  Name: htpasswd
-bc /etc/httpd/conf/htpasswd_file admin admin  Result: True
  Comment: unless execution succeeded
  Started:
14:32:53.772457  Duration:
5.783 ms  Changes:
  

----------  ID:
/etc/php.ini  Function: file.managed
  Result: True
  Comment: File
/etc/php.ini is in the correct state  Started:
14:32:53.778364  Duration:
3.226 ms  Changes:
  

----------  ID: lamp
-service  Function: service.running
  Name: httpd
  Result: True
  Comment: Service httpd
is already enabled, and is in the desired state  Started:
14:32:53.782599  Duration:
127.184 ms  Changes:
  

  
Summary
  

------------  
Succeeded:
7  
Failed:
0  
------------
  
Total states run:   7
  
页: [1]
查看完整版本: saltstack的部署安装[一]