linux有很多像這樣的群集,比如說LAMP,LNMP,那LNMP和LAMP有什么區別呢?
LNMP的是Nginx而LAMP的是Apache
1)相比 Apache,用 Nginx 作為 Web 服務器:使用資源更少,支持更多并發連接,效率更高。
2).作為負載均衡服務器:Nginx 既可在內部直接支持 Rails 和 php,也可支持作為 HTTP 代理服務器對外進行服務。Nginx 用 C 編寫而成,不論是系統資源開銷還是 CPU 使用效率都比 Perlbal 要好的多。
那LNMP都表示什么意思?
L表示Liunx操作系統也是一種Unix的操作系統,目前流行的操作系統是:centos,Ubuntu,mint等等一些系統。
N表示nginx是一種高性能的web服務,可以做反向代理等等
M表示MySQL是一種小型關系型數據庫管理系統
P表示PHP是一種在服務器執行的嵌入html的文檔腳本
下面我們來操作一下則么將LNMP分離部署在不同的服務器并且實現連通和訪問
我這里是用來三臺centos7.3的系統,三臺可以互相的連通
相信ping命令都會用
再看一下要用到的安裝包吧(綠色的)
第一臺配置nginx
1)先搭建一下nginx的環境,直接使用yum搭建。
2) 解壓軟件包并且編譯安裝
創建一個用戶
進入nginx文件編譯安裝
優化路徑(讓他可以直接啟動)
3)先安裝php依賴環境
解壓并且編譯安裝
出現Makefile編譯成功,下面執行安裝命令(時間可能稍微長一點)
4)編譯安裝完成之后,配置一下php的文件(php,fpm)
配置文件:php,fpm
cp php.ini-production /usr/local/php/php.ini
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf
啟動文件
cp /usr/src/php-7.1.6/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
chmod a+x /etc/init.d/php-fpm
路徑優化
ln –s /usr/local/php/bin/* /usr/local/bin
ln –s /usr/local/php/sbin/* /usr/local/sbin
修改配置文件
vi /usr/local/php/php.ini
default_charset = "UTF-8"
short_open_tag = On
vim/usr/local/php/etc/php-fpm.conf
pid = run/php-fpm.pid
vim/usr/local/php/etc/php-fpm.d/www.conf
listen = 0.0.0.0:9000
user = nginx
group = nginx
pm.max_children = 30
pm.start_servers = 10
pm.min_spare_servers = 5
pm.max_spare_servers = 12
啟動服務
service php-fpm start
5) 安裝mysql先安裝cmake
(直接編譯安裝)
6)解壓mysql,編譯,安裝(慢),授權,配置,
解壓編譯:
安裝:
配置:
ln -s /usr/local/mysql/bin/* /usr/local/bin
seradd -M -s /sbin/nologin mysql
chown -R mysql:mysql /usr/local/mysql/
初始化數據庫:
拷貝配置文件到/etc/my.cnf,考培啟動文件到/etc/init.d/mysql
cp /home/chenyang/mysql-5.6.36/support-files/my-default.cnf /etc/my.cnf
cp /home/chenyang/mysql-5.6.36/support-files/mysql.server /etc/rc.d/init.d/mysqld
給啟動腳本添加可執行權限
chmod a+x /etc/rc.d/init.d/mysqld
將mysqld添加到服務管理器
chkconfig --add mysqld
chkconfig mysqld on
開啟mysql服務
systemctl mysql start
授權:
6) 回到nginx寫一個小腳本配置一下主配置文件
最終效果