作者:菜鸟一号 | 来源:互联网 | 2023-05-28 01:53
负载均衡器可以是任何能够运行NGINX的主机。这些示例显示负载均衡器被配置为将流量定向到三个Rancher服务器节点。NGINX拥有适用于所有已知操作系统的软件包。有关安
NGINX配置为第4层负载平衡器(TCP ),用于将连接传输到Rancher节点之一。
在此配置中,负载平衡器位于节点前面。 负载平衡器是可以运行NGINX的任何主机。
警告:请勿将其中一个Rancher节点用作负载平衡器。
这些示例显示负载均衡器已将流量配置为指向三个Rancher服务节点。 如果Rancher安装在RKE Kubernetes群集上,则需要三个节点。 如果Rancher安装在K3s Kubernetes群集中,则只需要两个节点。
安装NGINX
首先,在要用作负载平衡器的节点上安装NGINX。 NGINX具有适用于所有已知操作系统的软件包。 测试的版本是1.14和1.15。 有关安装NGINX的信息,请参阅安装文档。
此流模块是必需的,并且在使用官方NGINX软件包时存在。 有关如何在操作系统上安装和启用NGINXstream模块的信息,请参阅操作系统文档。
创建NGINX配置
安装NGINX后,NGINX.conf必须使用节点的IP地址更新NGINX配置文件。
复制以下代码示例并将其粘贴到您喜欢的文本编辑器中。 将其另存为nginx.conf。
交换从nginx.conf出现两次(端口80和443 )和您的节点的IP地址。
笔记本:
有关所有配置选项的信息,请参阅NGINX文档《TCP和UDP负载平衡》。
示例NGINX配置
工作器_ processes 4;
worker_rlimit_nofile 40000;
事件{
worker_connections 8192;
}
流{
upstream rancher_servers_http {
least_conn;
server IP _ node _ 1336080 max _ fails=3fail _ time out=5s;
server IP _ node _ 2336080 max _ fails=3fail _ time out=5s;
server IP _ node _ :80 max _ fails=3fail _ time out=5s;
}
服务器{
listen 80
proxy_pass rancher_servers_http;
}
upstream rancher_servers_https {
least_conn;
server IP _ node _ 13360443 max _ fails=3fail _ time out=5s;
server IP _ node _ 23360443 max _ fails=3fail _ time out=5s;
server IP _ node _ :443 max _ fails=3fail _ time out=5s;
}
服务器{
listen 443
proxy _ pass rancher _ servers _ https;
}
}
nginx.conf以指向/etc/nginx/nginx.conf的路径保存在负载平衡器中。
运行以下命令将更新加载到NGINX配置中:
NGINX -s reload选项将nginx作为Docker容器运行
也可以作为Docker容器运行,而不是将NGINX作为软件包安装在操作系统上。 将编辑的示例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