格式:for i in do done;$是调用前面的变量i,把后面的ip赋给前面的i
目录
需求
安装LNMP
web1和web2都要做,这里只演示web2
[root@web2 ~]# tar -xf nginx-1.12.2.tar.gz(先解压)
使用yum安装基础依赖包
1. [root@web2 ~]# yum -y install gcc openssl-devel pcre-devel
安装MariaDB
1. [root@web2 ~]# yum -y install mariadb mariadb-server mariadb-devel
php和php-fpm
1. [root@web2 ~]# yum -y install php php-mysql
2. [root@web2 ~]# yum -y install php-fpm
进入解压后的nginx,执行./configure,添加两个模块。
[root@web2 nginx-1.12.2]# make && make install(编译安装)
[root@web1 nginx-1.12.2]# vim /usr/local/nginx/conf/nginx.conf(进入配置文件修改配置)
修改之后的配置文件(动静分离)
添加状态模块(并发连接数)
[root@web2 ~]# systemctl enable mariadb --now(启动数据库并设置开机自启)
[root@web1 nginx-1.12.2]# ss -antlp(查看端口的命令)
查看user表里面的内容。
创建PHP测试页面,连接并查询MariaDB数据库。在web1的html下面创建一个test.php
curl 一下的结果就是显示数据库user表里面的东西,说明lnmp架构能解析到mysql数据库。
七层代理(在两台代理服务器上做)
1. [rootagent ~]# cd nginx-1.12.2
[root@agent nginx-1.12.2]# ./configure(只需执行这个)
[root@agent nginx-1.12.2]# make && make install
在配置文件里添加http{upstream是个参数 后面是起了个名字,大括号里面写的是两台web服务器}
proxy_pass是调度,七层代理属于应用层,只能负载网站,所以后面写调用webserver
[root@agent ~]# /usr/local/nginx/sbin/nginx(启动nginx)
测试
区分两个为不同的页面
[root@web2 html]# echo "BBB" > /usr/local/nginx/html/index.html
[root@web1 ~]# echo "AAA" > /usr/local/nginx/html/index.html
可以看到curl与两台web后端服务器不同的网段,实现了负载均衡。