Nginx安装以及LVS-DR集群搭建

Nginx安装

1.环境准备

yum insatall -y make gcc gcc-c++ pcre-devel

#pcre-devel -- pcre库

#安装openssl-devel

yum install -y openssl-devel

2.tar安装包

3.解压软件包并创建软连接

tar -xf nginx-1.22.0.tar.gz -C /usr/local/

ln -s /usr/local/nginx-1.22.0/ /usr/local/nginx

4、创建用户和组

groupadd -r nginx

useradd nginx -u 996 -r -g 996 -c "nginx user"

5.安装

复制代码
cd /usr/local/nginx-1.22.0/

./configure --user=nginx --group=nginx --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module

make && make install

6.创建服务脚本

复制代码
#vim /usr/lib/systemd/system/nginx.service
 
[Unit]
Description=nginx - high performance web server
Documentation=http://nginx.org/en/docs/
After=network.target remote-fs.target nss-lookup.target
 
[Service]
Type=forking
ExecStartPre=/usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/conf/nginx.conf
ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
 
[Install]
WantedBy=multi-user.target
 
#systemctl daemon-reload

7.开启nginx

LVS-DR集群搭建

1.环境规划

|-------|-----------------|--------|
| node1 | 192.168.227.134 | lsv服务器 |
| node2 | 192.168.227.135 | RS1 |
| node3 | 192.168.227.137 | RS2 |
| node4 | 192.168.227.138 | 测试主机 |

2.LSV配置

复制代码
1. 安装ipvsadm:
[root@node1 ~]# yum install ipvsadm -y
 
2. 添加虚拟IP(vip):
[root@node1 ~]# nmcli con modify ens33 +ipv4.addresses 192.168.227.100/24
 
3. 重启网卡ens33:
[root@node1 ~]# nmcli con up ens33
 
4. ipvsadm命令操作:
[root@node1 ~]# ipvsadm -C  ##清空ipvsadm配置
 
[root@node1 ~]# ipvsadm -At 192.168.227.100:80 -s rr [-p 20] ##配置LVS虚拟IP(VIP)
-p表示设置会话保持时间为20秒
 
[root@node1 ~]# ipvsadm -at 192.168.227.100:80 -r 192.168.227.135:80 -g [-w 2]
##配置后端真实服务器
 
[root@node1 ~]# ipvsadm -at 192.168.227.100:80 -r 192.168.227.137:80 -g
##配置后端真实服务器
 
[root@node1 ~]# ipvsadm -Ln  ##查看ipvsadm配置
 
[root@node1 ~]# ipvsadm -D -t 192.168.227.100:80 -s wrr  ##删除LVS虚拟IP配置
 
[root@node1 ~]# ipvsadm -d -t 192.168.227.100:80 -r 192.168.227.135:80
[root@node1 ~]# ipvsadm -d -t 192.168.227.100:80 -r 192.168.227.137:80
##删除后端真实服务器配置

3. 真实服务器配置:node2和node3两台真实服务器都要配置

复制代码
1. 配置web页面:
[root@node2 ~]# yum install httpd
[root@node2 ~]# echo "`hostname -I`" > /var/www/html/index.html
[root@node3 ~]# echo "`hostname -I`" > /var/www/html/index.html
[root@node2 ~]# systemctl start httpd
 
2. 手工在RS端绑定VIP:将vip绑定在lo的子接口上:
[root@node2 ~]# ifconfig lo:100 192.168.227.100 netmask 255.255.255.255 up
 
3. 添加本机访问VIP的路由
[root@node2 ~]# route add -host 192.168.227.100 dev lo:100
 
4. 配置arp抑制:
[root@node2 ~]# echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignore 
 
[root@node2 ~]# echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce 
 
[root@node2 ~]# echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore 
 
[root@node2 ~]# echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce

4.测试

复制代码
[root@node4 ~]# for ((i=0;i<10;i++)); 
do 
curl 192.168.227.100; 
done;
 
192.168.227.13 
192.168.227.12 
192.168.227.13 
192.168.227.12 
192.168.227.13 

Nginx负载均衡搭建

1.准备一台装有Nginx的主机

2.两台web服务器

3.修改Nginx配置文件

root@localhost conf# vim nginx.conf

复制代码
[root@localhost conf]# more my_w_config.conf 
upstream backend {
    server 192.168.227.137:80 weight=1;
    server 192.168.227.138:80 weight=1;
}
 
server {
    listen 80;
    server_name www.myname.com;
 
    location / {
      proxy_pass http://backend;
    }
}

重启nginx服务

systemctl restart nginx

4.配置本地解析文件

5.测试

相关推荐
Web极客码14 分钟前
抹平首包开销:我用 Claude 调优 Nginx 的 Brotli 与 Gzip 动态压缩,平衡 CPU 与网络吞吐
服务器·agent 工作流·agent 图
云杂项1 小时前
tmux指南:安装、配置与高效使用(Ubuntu上)
linux·服务器·ubuntu
泡海椒2 小时前
趋势分析报表:jquick-pdf折线图PDF生成实战
java·大数据·运维·服务器·前端·pdf
qq_394562002 小时前
【在Linux上升级nginx】
linux·服务器·nginx
丸子君君2 小时前
【以麒麟服务器时间为准,定时请求时间同步】
运维·服务器·单片机
Tairitsu_H2 小时前
[Linux系统] 基础IO核心 | 系统接口 | 文件描述符 | 重定向
linux·服务器·文件操作
事已至此先睡覺吧3 小时前
(三)Linux 基础指令(二):基础常用的一些指令
linux·运维·服务器
不会写DN3 小时前
Go日志库工程选型与逃逸分析评测报告
java·服务器·golang
鬼手点金4 小时前
Claude Code示范案例-常用快捷命令
java·服务器·前端·计算机视觉·前向传播
阿钱真强道4 小时前
12 嵌入式操作系统 | UDP 服务器编程
服务器·网络协议·udp