中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

ansible自動(dòng)化安裝lnmp-創(chuàng)新互聯(lián)

今天嘗試用ansible自動(dòng)化編譯安裝了lnmp環(huán)境,是以把自己的見(jiàn)解和大家分享,不足之處還望大家指正。

成都創(chuàng)新互聯(lián)是一家專(zhuān)業(yè)從事網(wǎng)站建設(shè)、網(wǎng)站制作、網(wǎng)頁(yè)設(shè)計(jì)的品牌網(wǎng)絡(luò)公司。如今是成都地區(qū)具影響力的網(wǎng)站設(shè)計(jì)公司,作為專(zhuān)業(yè)的成都網(wǎng)站建設(shè)公司,成都創(chuàng)新互聯(lián)依托強(qiáng)大的技術(shù)實(shí)力、以及多年的網(wǎng)站運(yùn)營(yíng)經(jīng)驗(yàn),為您提供專(zhuān)業(yè)的成都網(wǎng)站建設(shè)、營(yíng)銷(xiāo)型網(wǎng)站建設(shè)及網(wǎng)站設(shè)計(jì)開(kāi)發(fā)服務(wù)!

lnmp的構(gòu)成

lnmp = linux + nginx + mysql + php/python/perl

下面給大家介紹下我的安裝步驟

系統(tǒng):linux7

首先下載lnmp環(huán)境所需模塊,創(chuàng)建ansible角色

# mkdir -pv /tmp/roles/{mysql,php,nginx}/{files,vars,templates,tasks,handlers,meta}

# cd /tmp/roles/mysql/

第一步:安裝mysql,我安裝的版本是5.6.x

編寫(xiě)腳本

vim /tmp/roles/mysql/files/mysql.sh

#!/bin/bash mount -o loop /dev/sr0 /yum yum clean all yum list #導(dǎo)入lnmp環(huán)境所需依賴(lài)包 yum install cmake* gcc gcc-c++ ncurses-devel perl libxml* libcurl* libjpeg* libpng* freetype* sleep 10 #解壓mysql壓縮包 tar xzf /root/Downloads/bag/11-mysql-5.6.26.tar.gz -C /usr/src cd /usr/src/mysql-5.6.26 cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=gbk,gb2312 -DENABLED_LOCAL_INFILE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 && make && make install #安裝后,編寫(xiě)mysql配置文件 #1,手動(dòng)編寫(xiě)my.cnf配置文件 mkdir /usr/local/mysql/etc cat > /usr/local/mysql/etc/my.cnf << EOF [mysqld] port=3307 datadir=/data56 pid-file=/var/run/mysqld/mysql56.pid socket=/tmp/mysql.sock log-error=/var/log/mysqld/mysql56-err.log user=mysql [client] port=3307 socket=/tmp/mysql.sock EOF #2:創(chuàng)建mysql相關(guān)目錄,并修改權(quán)限 useradd -u 27 mysql  mkdir /data56 /var/run/mysqld /var/log/mysqld  chown mysql.mysql /data56 /var/run/mysqld /var/log/mysqld /usr/local/mysql/   -R #3:初始化數(shù)據(jù)庫(kù) /usr/local/mysql/scripts/mysql_install_db --defaults-file=/usr/local/mysql/etc/my.cnf --basedir=/usr/local/mysql --user=mysql #--拷貝服務(wù)啟動(dòng)腳本 cp /usr/local/mysql/support-files/mysql.server  /etc/init.d/mysql56 cp /usr/local/mysql/bin/mysql /usr/bin/

保存退出

創(chuàng)建yml文件

touch tasks/main.yml handlers/main.yml vars/main.yml

編輯任務(wù)

vim tasks/main.yml

- name: copy tar   copy: src=/run/media/zsy/KINGSTON/運(yùn)維資料/20-Nginx(web服務(wù)器、反向代理負(fù)>載均衡、LNMP)/Nginx-軟件包/bag dest=/root/Downloads/   tags:   - tar - name: copy mysql.sh to dbserver   copy: src=mysql.sh dest=/tmp/ - name: bash mysql.sh   shell: /bin/bash /tmp/mysql.sh   tags:   - sh - name: install configure   template: src=mysql dest=/etc/init.d/mysql56   tags:   - tem   notify:   - restarted mysql

保存退出

創(chuàng)建site.yml

#vim /tmp/site.yml

- hosts: dbserver   remote_user: root   roles:   - mysql

至此完成數(shù)據(jù)庫(kù)的安裝

第二步:安裝PHP,我這安裝的是5.6.x版本

# cd /tmp/roles/php/

創(chuàng)建yml

# touch tasks/main.yml handlers/main.yml vars/main.yml

編寫(xiě)腳本

vim files/php.sh

#!/bin/bash #安裝個(gè)大模塊 #1,安裝libiconv-1.13.tar.gz  --語(yǔ)言編碼轉(zhuǎn)換 install_libiconv(){ tar xzf /root/Downloads/bag/4-libiconv-1.13.tar.gz -C /usr/src cd /usr/src/libiconv-1.13/ ./configure && make && make install echo /usr/local/lib  > /etc/ld.so.conf.d/lnmp.conf /sbin/ldconfig } #2.安裝mhash-0.9.9.9.tar.bz2 install_mhash-0.9.9.9(){         tar xf /root/Downloads/bag/7-mhash-0.9.9.9.tar.bz2 -C /usr/src         cd /usr/src/mhash-0.9.9.9/         ./configure && make && make install         /sbin/ldconfig } #3.安裝libmcrypt-2.5.8.tar.bz2 install_libmcrypt-2.5.8(){         tar xf /root/Downloads/bag/5-libmcrypt-2.5.8.tar.bz2 -C /usr/src         cd /usr/src/libmcrypt-2.5.8/         ./configure && make && make install         /sbin/ldconfig } #4.安裝mcrypt-2.6.6.tar.gz install_mcrypt-2.6.6(){         tar xzf /root/Downloads/bag/6-mcrypt-2.6.6.tar.gz -C /usr/src         cd /usr/src/mcrypt-2.6.6         ./configure && make && make install         /sbin/ldconfig } #5.安裝pcre-7.9.tar.gz--perl兼容正則表達(dá)式,--或者使用rpm自帶的也可以(yum install pcre pcre-devel -y) install_pcre-7.9(){     tar xzf /root/Downloads/bag/8-pcre-7.9.tar.gz -C /usr/src/     cd /usr/src/pcre-7.9/     ./configure && make && make install     /sbin/ldconfig } #6.編譯安裝php install_php(){     tar xf /root/Downloads/bag/12-php-5.6.12.tar.bz2 -C /usr/src/     cd /usr/src/php-5.6.12/     ln -s /usr/local/mysql/lib/libmysqlclient.so /usr/lib/     ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib/libmysqlclient.so.18     echo '/usr/local/lib' >> /etc/ld.so.conf     /sbin/ldconfig     ./configure --prefix=/usr/local/php/ --with-config-file-path=/usr/local/php/etc --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-iconv-dir=/usr/local --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath  --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl  --enable-mbregex --enable-fpm --enable-mbstring  --enable-ftp --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets  --with-xmlrpc --enable-zip --enable-soap --with-gettext --enable-mysqlnd --with-pcre-dir=/usr/local/ --with-mcrypt=/usr/local/ --with-pdo-mysql=/usr/local/mysql --enable-opcache=no && make ZEND_EXTRA_LIBS='-liconv' && make install } #7.安裝緩存模塊memcache install_memcache(){     tar xf /root/Downloads/bag/10-memcache-2.2.7.tgz -C /usr/src/     cd /usr/src/memcache-2.2.7/     /usr/local/php/bin/phpize     ./configure --with-php-config=/usr/local/php/bin/php-config && make && make install     echo /usr/src/memcache-2.2.7/modules/ >> /etc/ld.so.conf.d/lnmp.conf     /sbin/ldconfig } #8.安裝繪圖引擎模塊p_w_picpathmagick,與GD類(lèi)似 install_p_w_picpathmagick(){     tar xzf /root/Downloads/bag/2-ImageMagick-6.7.8-9.tar.gz -C /usr/src/     cd /usr/src/ImageMagick-6.7.8-9/     ./configure     make;make install     /sbin/ldconfig } #9.安裝imagick(連接php與p_w_picpathmagick的通道) install_imagick(){     tar xf /root/Downloads/bag/3-imagick-3.1.2.tgz -C /usr/src/     cd /usr/src/imagick-3.1.2/     /usr/local/php/bin/phpize     ./configure --with-php-config=/usr/local/php/bin/php-config     make;make install     echo /usr/src/imagick-3.1.2/modules >> /etc/ld.so.conf.d/lnmp.conf     /sbin/ldconfig } install_libiconv && install_mhash-0.9.9.9 && install_libmcrypt-2.5.8 && install_mcrypt-2.6.6 && install_pcre-7.9 && install_php && install_memcache && install_p_w_picpathmagick && install_imagick && cp /usr/src/php-5.6.12/php.ini-production /usr/local/php/etc/php.ini

注:如PHP版本小于5.6還需安裝php的緩存加速器opcache

編輯任務(wù)

#vim tasks/main.yml

- name: copy shell   copy: src=php.sh dest=/tmp/ - name: bash shell   shell: /bin/bash /tmp/php.sh - name: install configure   template: src=php.ini dest=/usr/local/php/etc/php.ini   tags:   - ini

把角色加到site.yml中

#vim /tmp/site.yml

- hosts: dbserver   remote_user: root   roles:   - mysql   - php

至此可完成PHP的安裝

第三步:編譯安裝nginx,版本1.13.x

#cd /tmp/roles/nginx

編寫(xiě)腳本

#vim files/nginx.sh

install_nginx(){ #新建nginx用戶(hù) useradd nginx tar xzf /root/Downloads/bag/1-nginx-1.8.1.tar.gz -C /usr/src cd /usr/src/nginx-1.8.1/ ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_gzip_static_module  --with-http_stub_status_module  --with-http_ssl_module && make && make install } install_nginx #配置php-fpm配置文件 (配置fastcgi) mv /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf mkdir /var/run/fastcgi chown nginx.nginx /var/run/fastcgi/ mkdir /lnmp/web -p ulimit -SHn 65535 >> /etc/rc.local

創(chuàng)建yml文件

# touch tasks/main.yml handlers/main.yml vars/main.yml

創(chuàng)建任務(wù)

# vim tasks/main.yml

- name: copy shell    copy: src=nginx.sh dest=/tmp/ - name: bash shell   shell: /bin/bash /tmp/nginx.sh - name: change php-fpm.conf   template: src=php-fpm.conf dest=/usr/local/php/etc/php-fpm.conf - name: change nginx.conf   template: src=nginx.conf dest=/usr/local/nginx/conf/nginx.conf - name: change files open   command: ulimit -SHn 65535

把任務(wù)加到site.yml中

# vim /tmp/site.yml

- hosts: dbserver   remote_user: root   roles:   - mysql   - php   - nginx

最后執(zhí)行ansible-playbook /tmp/site.yml

執(zhí)行過(guò)程比較久,需耐心等待。至此ansible自動(dòng)化搭建lnmp環(huán)境圓滿(mǎn)結(jié)束。

以上屬個(gè)人搭建步驟,其中有些小步驟沒(méi)有寫(xiě)上,如模版的配置,畢竟大家所需模版的配置不一。

如有更好的建議,請(qǐng)留下你珍貴的一言,謝謝。

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性?xún)r(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專(zhuān)為企業(yè)上云打造定制,能夠滿(mǎn)足用戶(hù)豐富、多元化的應(yīng)用場(chǎng)景需求。

標(biāo)題名稱(chēng):ansible自動(dòng)化安裝lnmp-創(chuàng)新互聯(lián)
標(biāo)題URL:http://www.rwnh.cn/article20/dghgjo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器App設(shè)計(jì)、定制網(wǎng)站面包屑導(dǎo)航、企業(yè)網(wǎng)站制作微信小程序

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設(shè)
洮南市| 义马市| 诸暨市| 呼图壁县| 福建省| 淮阳县| 育儿| 安新县| 松江区| 察哈| 彭泽县| 都安| 柳河县| 滁州市| 新干县| 宜章县| 阿合奇县| 新田县| 佛学| 绵阳市| 旌德县| 沙湾县| 临邑县| 神农架林区| 临湘市| 喀喇| 澄迈县| 呼图壁县| 分宜县| 大田县| 汤阴县| 南丰县| 普格县| 新邵县| 新丰县| 西乌| 肥西县| 前郭尔| 黄骅市| 惠水县| 乌兰察布市|