1、编写一个configMap的配置文件
events {
worker_connections 1024; # 定义每个worker进程的最大连接数
}
http {
# 定义通用代理参数(替代proxy_params文件)
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_connect_timeout 5s;
proxy_read_timeout 10s;
proxy_send_timeout 10s;
proxy_next_upstream error timeout http_500 http_502 http_503 http_504;
proxy_next_upstream_tries 3;
upstream backend {
#ip_hash; # 基于客户端IP的会话保持
server 172.16.45.33:8081 max_fails=3 fail_timeout=30s;
server 172.16.45.33:8084 max_fails=3 fail_timeout=30s;
}
server {
listen 8045;
location / {
proxy_pass http://backend;
# 如果不需要单独的proxy_params文件,可以在这里直接包含参数
# 或者保留include指令但确保文件存在
}
# 添加健康检查端点
location = /health {
access_log off;
return 200 "OK";
add_header Content-Type text/plain;
}
}
}
如下,key为nginx.conf


2、把该configMap的配置文件映射到容器的/ect/nginx/目录下

3、点击保存,后会启动nginx的服务。
4、访问http://ip:8045会路由到不同的后端服务。