您的位置:首页 > 运维架构 > Linux

saltstack学习一:安装与升级

2014-04-09 18:19 387 查看
由于我的服务器是centos5,安装后还要把zeromq升级,有点蛋疼

一:服务端的安装:
rpm -Uvh http://mirror.pnl.gov/epel/5/i386/epel-release-5-4.noarch.rpm yum install salt-master
chkconfig salt-master on
service salt-master start


二、客户端的安装:
rpm -Uvh http://mirror.pnl.gov/epel/5/i386/epel-release-5-4.noarch.rpm yum install salt-minion
chkconfig salt-minion on
#修改/etc/salt/minion配置:
master: 192.168.1.100   #服务端IP
id: 192.168.1.101       #标识,我用本机IP做标识
service salt-minion start


起始以为就这样快乐的安装完了,但测试过程中发现minion端会产生一个僵尸进程,问了群上的大神绿肥才知道这是一个BUG,要把minion端升级到2014.1.1版本:
yum --enablerepo=epel-testing install salt-minion
service salt-minion restart
这样僵尸进程的BUG总算解决了,后来网上一看原来centos5安装salt还有一个BUG,就是zeromq的版本太低,还需要升级一下,于是又找到这个办法来升级:
wget -O /etc/yum.repos.d/ownsource.repo http://www.comingchina.com:8080/testing/ownsource/ownsource.repo yum clean all
yum update zeromq libzmq3 python26-zmq
service salt-minion restart
检查一下版本:
[root@localhost Server]# salt-minion  --versions-report
Salt: 2014.1.1
Python: 2.6.8 (unknown, Nov  7 2012, 14:47:45)
Jinja2: unknown
M2Crypto: 0.21.1
msgpack-python: 0.1.12
msgpack-pure: Not Installed
pycrypto: 2.3
PyYAML: 3.08
PyZMQ: 13.1.0
ZMQ: 3.2.2
确实是升级成功了,于是后面就想用salt的state功能来完成剩下机器的升级,可是不会弄呀,果断网上抄一份配置:
getownsourcerepo:
cmd.run:
- name: wget -O /etc/yum.repos.d/ownsource.repo http://www.comingchina.com:8080/testing/ownsource/ownsource.repo - unless: test -f /etc/yum.repos.d/ownsource.repo

zeromqs:
pkg.installed:
- pkgs:
- zeromq
- libzmq3
- python26-zmq
- require:
- cmd: getownsourcerepo

salt-minion:
service.running:
- enable: True
- watch:
- pkg: zeromqs
放在/etc/salt/updatezeromq.sls,然后先找一台机器测试一下:
salt '192.168.1.102' state.sls updatezeromq
哇,好神奇,这样就可以更新了,等命令跑完,看一下版本,还是没变,擦,这是什么情况,认真看了一下日志,是zeromq python26-zmq这两个包已经存在,没有升级,于是找了一下文档,看看pkg.installed 怎么升级软件,突然发现原来还可以指定版本的,果断把sls文件改成:
getownsourcerepo:
cmd.run:
- name: wget -O /etc/yum.repos.d/ownsource.repo http://www.comingchina.com:8080/testing/ownsource/ownsource.repo - unless: test -f /etc/yum.repos.d/ownsource.repo
zeromqs:
pkg.installed:
- pkgs:
- zeromq: 3.2.2-13.1
- libzmq3
- python26-zmq: 13.1.0-1
- require:
- cmd: getownsourcerepo
salt-minion:
service.running:
- enable: True
- watch:
- pkg: zeromqs
再来一次:
[root@localhost salt]# salt  '192.168.1.102' state.sls updatezeromq
192.168.1.102:
----------
ID: getownsourcerepo
Function: cmd.run
Name: wget -O /etc/yum.repos.d/ownsource.repo http://www.comingchina.com:8080/testing/ownsource/ownsource.repo Result: True
Comment: Command "wget -O /etc/yum.repos.d/ownsource.repo http://www.comingchina.com:8080/testing/ownsource/ownsource.repo" run
Changes:
----------
pid:
29228
retcode:
0
stderr:
--2014-04-09 17:35:22--  http://www.comingchina.com:8080/testing/ownsource/ownsource.repo Resolving www.comingchina.com... 202.103.191.13
Connecting to www.comingchina.com|202.103.191.13|:8080... connected.
HTTP request sent, awaiting response... 200 OK
Length: 150 [text/plain]
Saving to: `/etc/yum.repos.d/ownsource.repo'

0K                                                       100% 14.3M=0s

2014-04-09 17:35:23 (14.3 MB/s) - `/etc/yum.repos.d/ownsource.repo' saved [150/150]
stdout:

----------
ID: zeromqs
Function: pkg.installed
Result: True
Comment: 3 targeted packages were installed/updated.
Changes:
----------
libzmq3:
----------
new:
3.2.2-13.1
old:

python26-zmq:
----------
new:
13.1.0-1
old:
2.1.9-3.el5
zeromq:
----------
new:
3.2.2-13.1
old:
2.2.0-4.el5
----------
ID: salt-minion
Function: service.running
Result: True
Comment: Service restarted
Changes:
----------
salt-minion:
True
Summary
------------
Succeeded: 3
Failed:    0
------------
Total:     3
终于顺利升级成功!感觉玩这东西还真不容易。。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  state centos5 salt