Linux实训3

要求:实现负载均衡nginx状态监控(负载均衡类型为反向代理负载均衡)

一、准备

  1. 一台本地主机
    1. 用于验证web负载均衡
    2. 本地主机IP地址为固定IP地址 172.16.123.100/24
  2. 一台代理服务器
    1. 使用本地虚拟机
    2. 配置有两块网卡,其一为桥接网络,其二为内部网络
    3. 桥接网络IP地址为 172.16.123.106/24
    4. 配置桥接网络的网关为172.16.123.1 DNS为8.8.8.8
    5. 内部网络IP地址为 10.0.0.254/24
    6. 不配置内部网络的网关和DNS信息
  3. 一台内部网络服务器
    1. 使用本地虚拟机
    2. IP地址为 10.0.0.1/24
    3. 不配置此服务器的网关和DNS信息
  4. 一台内部网络服务器
    1. 使用本地虚拟机
    2. IP地址为 10.0.0.2/24
    3. 不配置此服务器的网关和DNS信息

二、配置代理服务器的桥接网络

  1. 通过复制虚拟机的方式得到本虚拟机
  2. 在管理界面配置两块网卡,分别为桥接网络和内部网络
  3. 登录虚拟机后配置设备可以连接到互联网
    1. 编辑 /etc/sysconfig/network-scripts/ifcfg-enp0s3 文件
    2. 按照第一点中修改IP地址、网关、DNS等信息
  4. yum update #更新系统
  5. yum install -y nginx #安装nginx服务
  6. setenforce 0
  7. 编辑 /etc/selinux/config 文件,将 SELINUX对应值由enforcing 修改为 disable #关闭selinux

三、配置代理服务器的内部网络

  1. 通过 nmcli 命令可以看到目前有两块网卡,enp0s3和enp0s8,我们已经通过enp0s3的配置文件配置完成了桥接网络,接下来需要配置enp0s8网卡对应的内部网络
  2. enp0s8没有对应的配置文件,我们可以使用 nmtui 命令通过可视化的方式配置enp0s8网卡
  3. nmtui 进入界面,add、Ethernet、Profile name和Device配置为enp0s8、下方IPv4地址处配置IP地址信息 10.0.0.254/24,保存退出,重启设备
  4. 重启后使用 nmcli 命令查看发现两块网卡均已启用

四、配置内部服务器

  1. 通过复制虚拟机模板的方式得到内部服务器-1
  2. 首先设置本虚拟机的上网方式为桥接网络
    1. 设置桥接网络的目的为连接到互联网以达到更新、在线安装服务的目的
    2. yum update #更新系统
    3. yum install -y httpd #安装apache服务
    4. systemctl start httpd #开启apache服务
    5. systemctl enable httpd #配置apache服务随开机启动
    6. echo “<h1>site-1</h1>” > /var/www/html #创建网页文件
    7. systemctl stop firewalld #临时关闭防火墙
    8. systemctl disable firewalld #关闭防火墙开机自启动功能
    9. setenforce 0 #临时关闭selinux
    10. 编辑 /etc/selinux/config 文件,将 SELINUX对应值由enforcing 修改为 disable #关闭selinux
  3. 重启设备并将上网方式修改为内部网络
    1. 重启并修改为内部网络
    2. 编辑配置文件 /etc/sysconfig/network-scripts/ifcfg-enp0s3 ,删除DNS、网关的配置信息,修改IP地址为 10.0.0.1,掩码 prefix 为 24
    3. 内部服务器-1配置完成
  4. 通过复制虚拟机内部服务器-1的方式得到内部服务器-2
    1. 登入系统,修改IP地址为10.0.0.2
    2. 修改网页文件内容为 <h1>site-2</h1>

五、配置代理服务器以开启负载均衡

  1. 编辑 /etc/nginx/nginx.conf 文件,红色部分为增加内容:
    include /etc/nginx/conf.d/*.conf;
    upstream load1{
                server 10.0.0.1:80 weight=1;	#weight为权重,此处代表权重为1/2,可根据服务器负载能力配置
                server 10.0.0.2:80 weight=1;
        }
    server {
        listen       80 default_server;
        listen       [::]:80 default_server;
        server_name  _;
        root         /usr/share/nginx/html;
        # Load configuration files for the default server block.
        include /etc/nginx/default.d/*.conf;
        location / {
                proxy_pass http://load1;	#将请求转发到自定义服务器组 load1
        }
        error_page 404 /404.html;
    }
  1. 保存并退出,执行 systemctl relaod nginx 来重载nginx服务
  2. 此时在本地主机浏览器访问代理服务器IP地址,即172.16.123.106,成功访问
  3. 不断刷新浏览器,可以看到内容显示为 “site-1” 或者 “site-2” ,web负载均衡成功

六、简单实现nginx监控

  1. 编辑 /etc/nginx/nginx.conf 文件,红色部分为增加内容:
    server {
        listen       80 default_server;
        listen       [::]:80 default_server;
        server_name  _;
        root         /usr/share/nginx/html;
        # Load configuration files for the default server block.
        include /etc/nginx/default.d/*.conf;
        location / {
                proxy_pass http://load1;	
                allow 172.16.123.1/24;	#限制访问IP范围
                deny all;
        }
        location /status{
                stub_status;
        }
        error_page 404 /404.html;
    }
  1. 在本地主机浏览器访问 http://172.16.123.106/status ,可看到当前状态

原创文章,作者:witersen,如若转载,请注明出处:https://www.witersen.com

(0)
witersen的头像witersen
上一篇 2019年10月20日 下午6:53
下一篇 2019年10月23日 上午11:01

相关推荐

发表回复

登录后才能评论