专注Java教育14年 全国咨询/投诉热线:444-1124-454
赢咖4LOGO图
始于2009,口口相传的Java黄埔军校
首页 hot资讯 设置Nginx负载均衡器

设置Nginx负载均衡器

更新时间:2021-09-22 10:28:35 来源:赢咖4 浏览942次

NGINX 将被配置为第 4 层负载均衡器 (TCP),它将连接转发到您的 Rancher 节点之一。

在此配置中,负载均衡器位于您的节点之前。负载均衡器可以是任何能够运行 NGINX 的主机。

一个警告:不要使用您的 Rancher 节点之一作为负载均衡器。

这些示例显示负载均衡器被配置为将流量定向到三个 Rancher 服务器节点。如果 Rancher 安装在 RKE Kubernetes 集群上,则需要三个节点。如果 Rancher 安装在 K3s Kubernetes 集群上,则只需要两个节点。

安装 NGINX

首先在要用作负载均衡器的节点上安装 NGINX。NGINX 拥有适用于所有已知操作系统的软件包。测试的版本是1.14和1.15。有关安装 NGINX 的帮助,请参阅他们的安装文档。

该stream模块是必需的,在使用官方 NGINX 包时存在。请参阅您的操作系统文档,了解如何在您的操作系统上安装和启用 NGINXstream模块。

创建 NGINX 配置

安装 NGINX 后,您需要nginx.conf使用节点的 IP 地址更新 NGINX 配置文件。

将下面的代码示例复制并粘贴到您喜欢的文本编辑器中。将其另存为nginx.conf.

从nginx.conf,更换两次出现的(端口80和443) ,和与你的节点的IP地址。

笔记:

有关所有配置选项,请参阅NGINX 文档:TCP 和 UDP 负载平衡。

示例 NGINX 配置

worker_processes 4;
worker_rlimit_nofile 40000;
events {
    worker_connections 8192;
}
stream {
    upstream rancher_servers_http {
        least_conn;
        server <IP_NODE_1>:80 max_fails=3 fail_timeout=5s;
        server <IP_NODE_2>:80 max_fails=3 fail_timeout=5s;
        server <IP_NODE_3>:80 max_fails=3 fail_timeout=5s;
    }
    server {
        listen 80;
        proxy_pass rancher_servers_http;
    }
    upstream rancher_servers_https {
        least_conn;
        server <IP_NODE_1>:443 max_fails=3 fail_timeout=5s;
        server <IP_NODE_2>:443 max_fails=3 fail_timeout=5s;
        server <IP_NODE_3>:443 max_fails=3 fail_timeout=5s;
    }
    server {
        listen     443;
        proxy_pass rancher_servers_https;
    }
}

nginx.conf在以下路径保存到您的负载均衡器:/etc/nginx/nginx.conf.

通过运行以下命令将更新加载到 NGINX 配置中:

# nginx -s reload

选项 - 将 NGINX 作为 Docker 容器运行

与其将 NGINX 作为软件包安装在操作系统上,您还可以将其作为 Docker 容器运行。将编辑过的示例 NGINX 配置另存为/etc/nginx.conf并运行以下命令以启动 NGINX 容器:

docker run -d --restart=unless-stopped \
  -p 80:80 -p 443:443 \
  -v /etc/nginx.conf:/etc/nginx/nginx.conf \
  nginx:1.14

如果大家对Java技术感兴趣,不妨来关注一下赢咖4Java视频教程页面,里面有从入门到精通的全套教程可以免费下载学习,还有相关配套的学习文档供大家参考,希望对大家能够有所帮助。

提交申请后,顾问老师会电话与您沟通安排学习

免费课程推荐 >>
技术文档推荐 >>