linux有很多像这样的群集,比如说LAMP,LNMP,那LNMP和LAMP有什么区别呢?
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写一个小脚本配置一下主配置文件
最终效果