搜ijsio 发表于 2018-1-3 19:42:30

saltstack之nginx、php的配置

mkdir /srv/salt/prod/libmcrypt  
mkdir /srv/salt/prod/libmcrypt/files
  
# ll
  
total 512
  
-rw-r--r-- 1 root root 523321 Oct 11 20:13 libmcrypt-2.5.7.tar.gz
  
# pwd
  
/srv/salt/prod/libmcrypt/files
  
# pwd
  
/srv/salt/prod/libmcrypt
  
# tree
  
.
  
├── files
  
│   └── libmcrypt-2.5.7.tar.gz
  
└── install.sls
  
# cat install.sls
  
libmcrypt-install:
  file.managed:
  - name: /usr/local/src/libmcrypt-2.5.7.tar.gz
  - source: salt://libmcrypt/files/libmcrypt-2.5.7.tar.gz
  - user: root
  - group: root
  - mode: 755
  cmd.run:
  - name: cd /usr/local/src/ && tar xf libmcrypt-2.5.7.tar.gz && cd libmcrypt-2.5.7 && ./configure && make && make install
  - unless: test -d /usr/local/src/libmcrypt-2.5.7
  - require:
  - file: /usr/local/src/libmcrypt-2.5.7.tar.gz
  
5.2编译安装php
  
# cat install.sls
  
pkg-php:                                 编写依赖包状态配置
  pkg.installed:
  - names:
  - libxml2
  - libxml2-devel
  - bzip2
  - bzip2-devel
  - libjpeg-turbo
  - libjpeg-turbo-devel
  - libpng
  - libpng-devel
  - freetype
  - freetype-devel
  - zlib
  - zlib-devel
  - libcurl
  - libcurl-devel
  

  
php-install:                        php编译安装状态配置
  file.managed:
  - name: /usr/local/src/php-5.6.30.tar.bz2
  - source: salt://php/files/php-5.6.30.tar.bz2
  - user: root
  - group: root
  - mode: 755
  cmd.run:
  - name: cd /usr/local/src/ && tar xf php-5.6.30.tar.bz2 && cd php-5.6.30 && ./configure --prefix=/usr/local/php --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --with-mysql=mysqlnd --with-openssl --enable-mbstring --with-freetype-dir --with-jpeg-dir --with-png-dir --with-mcrypt --with-zlib --with-libxml-dir=/usr --enable-xml--enable-sockets --enable-fpm --with-config-file-path=/usr/local/php/etc --with-bz2 --with-gd && make && make install
  - unless: test -d /usr/local/php
  - require:
  - pkg: pkg-php                   由于上面安装的依赖于是基于pkg模式
  - file: /usr/local/src/php-5.6.30.tar.bz2
  

  
pdo-plugin:                        php插件pdo_mysql状态配置
  cmd.run:
  - name: cd /usr/local/src/php-5.6.30/ext/pdo_mysql && /usr/local/php/bin/phpize && ./configure --with-php-config=/usr/local/php/bin/php-config && make&& make install
  - unless: test -f /usr/local/php/lib/php/extensions/*/pdo_mysql.so
  - require:
  - file: php-install
  

  
php-ini:                                  提供php的php-ini配置文件
  file.managed:
  - name: /usr/local/php/etc/php.ini
  - source: salt://php/files/php.ini-production
  - user: root
  - group: root
  - mode: 644
  

  
php-fpm:                                 提供php-fpm的配置文件
  file.managed:
  - name: /usr/local/php/etc/php-fpm.conf
  - source: salt://php/files/php-fpm.conf.default
  - user: root
  - group: root
  - mode: 644
  

  
php-service:                           将php-fpm服务添加到系统服务中
  file.managed:
  - name: /etc/init.d/php-fpm
  - source: salt://php/files/init.d.php-fpm
  - user: root
  - group: root
  - mode: 755
  cmd.run:
  - name: chkconfig --add php-fpm
  - unless: chkconfig --list|grep php-fpm
  - require:
  - file: /etc/init.d/php-fpm
  service.running:
  - name: php-fpm
  - enable: True
  - require:
  - cmd: php-service
  - watch:
  - file: php-ini
  - file: php-fpm
  
页: [1]
查看完整版本: saltstack之nginx、php的配置