1)軟件下載
[admin@master files]$ pwd
/srv/salt/prod/keepalived/files
[admin@master files]$ sudo wget http://www.keepalived.org/software/keepalived-1.4.0.tar.gz
--2018-01-29 18:00:05-- http://www.keepalived.org/software/keepalived-1.4.0.tar.gz
Resolving www.keepalived.org (www.keepalived.org)... 37.59.63.157, 2001:41d0:8:7a9d::1
Connecting to www.keepalived.org (www.keepalived.org)|37.59.63.157|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 731936 (715K) [application/x-gzip]
Saving to: ‘keepalived-1.4.0.tar.gz’
100%[==============================================>] 731,936 735KB/s in 1.0s
2018-01-29 18:00:07 (735 KB/s) - ‘keepalived-1.4.0.tar.gz’ saved [731936/731936]
一般情況找一臺機器手工安裝一下keepalived,然后把配置文件和啟動腳本拷貝到/srv/salt/prod/keepalived/files
配置文件和啟動腳本,默認在這個目錄里:
[admin@proxy02 etc]$ pwd
/usr/local/src/keepalived-1.4.0/keepalived/etc
[admin@proxy02 etc]$ ll
total 64
drwxrwxr-x. 2 1000 1000 4096 Feb 3 16:56 init
drwxrwxr-x. 2 1000 1000 4096 Feb 3 16:55 init.d
drwxrwxr-x. 2 1000 1000 4096 Dec 11 19:16 keepalived
-rw-r--r--. 1 root root 18459 Feb 3 16:55 Makefile
-rw-rw-r--. 1 1000 1000 181 Dec 11 19:16 Makefile.am
-rw-rw-r--. 1 1000 1000 18206 Dec 30 02:00 Makefile.in
drwxrwxr-x. 2 1000 1000 4096 Dec 11 19:16 openrc
drwxrwxr-x. 2 1000 1000 4096 Dec 11 19:16 sysconfig
[admin@proxy02 src]$ cd /usr/local/keepalived/etc/sysconfig/
[admin@proxy02 sysconfig]$ ll
total 4
-rw-r--r--. 1 root root 667 Feb 3 16:56 keepalived
2)創建目錄
[admin@master ~]$ sudo mkdir /srv/salt/prod/keepalived
[admin@master ~]$ sudo mkdir /srv/salt/prod/keepalived/files
總之要有下面幾個文件
[admin@master files]$ ll
total 728
-rw-r--r--. 1 root root 731936 Dec 30 02:02 keepalived-1.4.0.tar.gz
-rw-r--r--. 1 root root 3550 Jan 29 18:22 keepalived.conf
-rwxr-xr-x. 1 root root 1335 Jan 29 18:26 keepalived.init
-rwxr-xr-x. 1 root root 667 Jan 29 18:36 keepalived.sysconfig
更改一下腳本:
~~~
start() {
echo -n $"Starting $prog: "
daemon /usr/local/keepalived/sbin/keepalived ${KEEPALIVED_OPTIONS}
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/$prog
}
~~~
3)編寫keepalived的sls文件
~~~
include:
- pkg.pkg-init
Dependency_package_installation:
pkg.installed:
- names:
- libnl-devel
- libnfnetlink-devel
keepalived-install:
file.managed:
- name: /usr/local/src/keepalived-1.4.0.tar.gz
- source: salt://keepalived/files/keepalived-1.4.0.tar.gz
- user: root
- group: root
- mode: 755
cmd.run:
- name: cd /usr/local/src && sudo tar xf keepalived-1.4.0.tar.gz && cd keepalived-1.4.0 && sudo ./configure --prefix=/usr/local/keepalived && sudo make && sudo make install
- unless: test -d /usr/local/keepalived
- require:
- pkg: pkg-init
- pkg: Dependency_package_installation
- file: keepalived-install
keepalived-init:
file.managed:
- name: /etc/init.d/keepalived
- source: salt://keepalived/files/keepalived.init
- user: root
- group: root
- mode: 755
cmd.run:
- name: chkconfig --add keepalived
- unless: chkconfig --list|grep keepalived
- require:
- file: keepalived-init
/etc/sysconfig/keepalived:
file.managed:
- source: salt://keepalived/files/keepalived.sysconfig
- user: root
- group: root
- mode: 644
/etc/keepalived:
file.directory:
- user: root
- group: root
- mode: 755
~~~
- 第一章:saltstack的基本介紹
- 第二章:saltstack的安裝部署
- 第一節:在centos7系統上安裝saltstack工具
- 第二節:在windows server 2008上安裝salt-minion
- 第三章: saltstack的配置管理
- 第一節:salt-master配置
- 第二節:salt-minion配置
- 第三節:了解YAML
- 第四節:salt-master配置文件詳解
- 第五節:了解Jinja2
- 第六節:配置普通用戶可以運行saltstack的模塊
- 第四章:遠程執行
- 第一節:遠程執行基礎介紹
- 第二節:目標定位
- 一、全局及正則表達式匹配
- 二、列表匹配
- 三、Grains
- 四: Pillar
- 五:subnet and ip
- 六:組合匹配
- 七: node group
- 第三節:常用模塊
- 一、查看幫助
- 二、Network模塊
- 三、Service模塊
- 四:State模塊
- 五、Cron模塊
- 六、File模塊
- 七、iptables模塊
- 八、pkg包管理
- 第四節:Salt其他命令
- 一、salt-cp(拷貝文件)
- 二、salt-ssh
- 三、salt-key
- 第五節:saltstack返回程序
- 第一節:返回保持到數據庫(mysql)
- 第五章:配置管理
- 第一節:簡單入門
- 第二節:狀態間關系
- 第六章:數據系統
- 第一節:grains
- 第二節:pillar
- 第七章:saltstack配置管理
- 第一節:系統初始化操作
- 第二節:功能模塊
- 一、haproxy模塊
- 二、keepalived模塊
- 三、nginx模塊
- 四: pcre模塊
- 五: zlib模塊
- 六:user模塊
- 七:php模塊
- 第三節:業務模塊
- 第一節:haproxy代理
- 第二節:keepalived業務
- 第八章:自動化管理工具saltstack
- 第一節:文件管理
- 第二節:軟件管理
- 第三節:服務管理
- 第四節:sysctl模塊管理