saltstack之多節點nginx安裝配置
阿新 • • 發佈:2017-05-09
saltstack 多節點 highstate nginx
多節點nginx安裝配置
定義多節點
cd /srv/salt
vim top.sls
base:
‘server4.lalala.com‘:
- nginx.install
‘server1.lalala.com‘:
- nginx.install
把要共享的文件放在指定目錄
[[email protected] files]# pwd
/srv/salt/nginx/files
[[email protected] files]# ls n
ginx-1.10.1.tar.gz
vim /srv/salt/nginx/install.sls
nginx-install:
pkg.installed: #安裝包的依賴性
- pkgs:
- gcc
- pcre-devel
- openssl-devel
file.managed:
- name: /mnt/nginx-1.10.1.tar.gz #安裝在客戶端的位置
- source: salt://nginx/files/nginx-1.10.1.tar.gz #服務器共享文件的位置
cmd.run:
- name: cd /mnt;tar zxf nginx-1.10.1.tar.gz;cd nginx-1.10.1;./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_stub_status_module --with-file-aio --with-threads &> /dev/null && make &> /dev/null && make install &> /dev/null
高級狀態的執行(多節點)
[[email protected] nginx]# salt ‘‘ state.highstate test=True
[[email protected] nginx]# salt ‘‘ state.highstate
vim install.sls
include:
- pkg.install
- user.nginx
nginx-source:
file.managed:
- name: /mnt/nginx-1.10.1.tar.gz
- source: salt://nginx/files/nginx-1.10.1.tar.gz
nginx-install:
cmd.run:
- name: cd /mnt;tar zxf nginx-1.10.1.tar.gz;cd nginx-1.10.1;./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_ssl_module --with-http_stub_status_module --with-file-aio --with-threads &> /dev/null && make &> /dev/null && make install &> /dev/null
- creates: /usr/local/nginx
- require:
- pkg: pkg-install
- file: nginx-source
- user: nginx-user
vim service.sls
include:
- nginx.install
nginx-config:
file.managed:
- name: /usr/local/nginx/conf/nginx.conf
- source: salt://nginx/files/nginx.conf
nginx-init:
file.managed:
- name: /etc/init.d/nginx
- source: salt://nginx/files/nginx
- mode: 755
cmd.run:
- name: chkconfig --add nginx
- unless: chkconfig --list nginx #如果不存在,就執行以上語句
- require:
- file: nginx-init
service.running:
- name: nginx
- enable: True
- reload: True
- watch:
- file: nginx-config
需要推給客戶端信息
[[email protected] files]# ls nginx nginx-1.10.1.tar.gz nginx.conf [[email protected] files]#
編輯啟動腳本
vim nginx
36 nginx=${NGINX-/usr/local/nginx/sbin/nginx}
37 prog=`/bin/basename $nginx`
38 conffile=${CONFFILE-/usr/local/nginx/conf/nginx.conf}
39 lockfile=${LOCKFILE-/var/lock/subsys/nginx}
40 pidfile=${PIDFILE-/usr/local/nginx/logs/nginx.pid}
編輯主配置文件
vim nginx.conf
user nginx nginx;
listen 8000;
檢測
[[email protected] files]# salt ‘*‘ state.sls nginx.service
可以看到,1,3主機 的8000端口,被打開被nginx占用
[[email protected] files]# lsof -i :4505 -n
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
salt-mast 2339 root 16u IPv4 14683 0t0 TCP *:4505 (LISTEN)
salt-mast 2339 root 18u IPv4 53804 0t0 TCP 172.25.88.3:4505->172.25.88.1:49253 (ESTABLISHED)
salt-mast 2339 root 19u IPv4 37637 0t0 TCP 172.25.88.3:4505->172.25.88.4:59132 (ESTABLISHED)
消息隊列,長連接方式,一直保持established,不用請求和回復,所以快
kafka zeromq rabbitmq
req系統 4506 請求響應
本文出自 “12049878” 博客,謝絕轉載!
saltstack之多節點nginx安裝配置