<svg xmlns="http://www.w3.org/2000/svg" style="display: none;"> <path stroke-linecap="round" d="M5,0 0,2.5 5,5z" id="raphael-marker-block" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"></path> </svg> <h4>Rancher 上操作的k8s容器网络配置总结</h4>
讯享网
要在 Rancher 中配置Spring Boot 应用 服务,正确的配置方式如下:
1. 应用程序监听端口
在 文件中,配置的应用监听端口是 ,并且应用的上下文路径是 。也就是说,Spring Boot 应用在容器内部的 端口上运行,并将所有 API 请求映射到 。
讯享网
2. Dockerfile 的 声明
在 中,尽管 声明了 端口,这只是告知 Docker 哪个端口准备接受连接,但并不影响实际应用监听的端口。因为应用实际监听的端口是 ,在 Kubernetes 配置中,我们需要使用 端口作为容器内部的端口,而不需要更改 。可以多申明几个。
3. Kubernetes Deployment 配置
在 中,需要明确指定容器运行的端口 ,即应用程序实际监听的端口。你可以通过 Rancher UI 或者 YAML 配置来定义 :
讯享网
在 Rancher 的 UI 中,可以直接通过 “容器端口” 设置 端口。容器之间可以通信。

4. Kubernetes Service 配置
为了让其他服务或外部访问到该服务,需要使用 Kubernetes 对象。你可以选择 (只在集群内部访问),或者 (通过集群节点暴露外部访问),甚至 (通过云提供商的负载均衡器对外暴露)。

- ClusterIP:如果不需要外部访问,仅供集群内部其他服务访问。
- NodePort:用于将服务通过集群节点对外暴露。
- LoadBalancer:如果你有云提供商的负载均衡器,可以对外暴露服务。
在 Rancher UI 中,具体操作步骤:
- 选择 ClusterIP 或 NodePort。
- 设置 私有容器端口 为 ,这个是实际应用监听的端口。
- 如果是 ,可以手动设置 NodePort 为 ,这样外部访问时,可以通过 访问服务。
5. 访问服务
根据需求,以下两种方式可以访问服务:
- 集群内部访问:
如果使用 类型,集群内的其他服务可以通过服务名称和端口 访问:讯享网
- 外部访问(使用 NodePort 或 LoadBalancer):
如果你使用 或 ,可以通过外部的节点 IP 和 端口访问:
总结:
- Spring Boot 应用监听端口:10001(在 中配置)。
- 容器声明的 EXPOSE 端口:31002(无需修改 ,仅为声明)。
- Kubernetes 部署:在 中,确保 设置为 ,即应用程序实际监听的端口。
- Kubernetes 服务类型:
- ClusterIP:内部服务访问。
- NodePort:外部通过 访问,映射到应用的 端口。
- LoadBalancer:通过负载均衡器暴露外部访问。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/166606.html