nginx: [emerg] stream directive is duplicate in /etc/nginx/nginx.conf:56

背景:

在维护paas平台的时候发现一个web前端容器服务运行报错,提示如下:

问题分析:

根据日志的内容,发现是nginx.conf配置文件的stream模块配置存在问题导致的。需要查看一下nginx.conf配置文件的内容:

注:这里使用的是k8s云原生的configmap组件的功能

bash 复制代码
stream {
	upstream stream_rabbitmq_backend {    
		server 172.20.66.240:31502;
	}
	server {            
		listen 31502;         
		proxy_pass stream_rabbitmq_backend;    
	}
}

stream {
	upstream mysql_4a {    
		server 10.36.6.188:3306;
	}
	
	server {            
		listen 34306;         
		proxy_pass mysql_4a; 		
	}
}

发现存在两个stream模块配置,这个是不合理的,只要一个stream模块就可以的,

问题处理:

解决访问就是只要一个stream模块就可以,修改后如下:

bash 复制代码
stream {
	upstream stream_rabbitmq_backend {    
		server 172.20.66.240:31502;
	}
	server {            
		listen 31502;         
		proxy_pass stream_rabbitmq_backend;    
	}
	
	server {            
		listen 34306;         
		proxy_pass 10.36.6.188:3306;    
	}
}

然后重启一下pod服务即可,

总结:

stream模块是用于反向代理的四层代理使用。切记!!!!

相关推荐
分布式存储与RustFS2 小时前
镜像仓库的层别堆本地盘:用 RustFS 给 Docker Registry 当 S3 后端
运维·云原生·开源·对象存储·分布式存储·s3·性能基准
陈希1232 小时前
Linux 防火墙配置实战:firewalld、iptables 与云安全组
linux·运维·服务器
@兽血沸腾4 小时前
Windows系统安装Jenkins部署应用至远程Windows服务器操作指南
运维·服务器·jenkins
闲云自留地9 小时前
K8s 的记忆大脑!ETCD 集群部署、etcdctl 命令与备份恢复全通关
容器·kubernetes·etcd
讯捷蓝达9 小时前
戴尔R720xd服务器卡死在 “Configuring Memory...Done“,换了内存还是卡?问题根本不在内存
运维·服务器
weirong11 小时前
Operator 上生产前补的 6 件事,和 5 件我明确不做的
kubernetes
爱和冰阔落11 小时前
【Linux网络】TCP 服务器如何并发处理多个客户端?从 fork、僵尸进程到双重 fork
linux·运维·服务器·网络
陈希12312 小时前
Nginx 从入门到能扛事:反向代理、负载均衡与 HTTPS 实战
nginx·https·负载均衡
lisanmengmeng12 小时前
alertmanger 标签 rules 打上分组标签
linux·运维·服务器
Android系统攻城狮13 小时前
Linux FFmpeg深度解析之av_write_frame调用流程与实战(三十三)
linux·运维·服务器·ffmpeg·音视频进阶·ffmpeg音视频