gpt4 book ai didi

azure - 如何将 Kubernetes 服务公开到互联网?

转载 作者:行者123 更新时间:2023-12-01 12:29:54 24 4
gpt4 key购买 nike

我正在 Azure 上运行一个具有 1 个主节点(也是一个节点)和 2 个节点的 kubernetes 集群。我正在使用带有 Flannel 覆盖网络的 Ubuntu。到目前为止一切进展顺利。我遇到的唯一问题是将服务暴露在互联网上。

我正在 azure 子网上运行集群。主设备附有一个具有公共(public) IP 的 NIC。这意味着如果我运行一个监听端口 80 的简单服务器,我可以使用域名访问我的服务器(Azure 提供了为公共(public) IP 提供域名的选项)。

我还可以通过一些 hack 访问 kubernetes 留言簿前端服务。我所做的是检查主服务器上的所有监听端口,并使用公共(public) IP 尝试每个端口。我能够访问 kubernetes 服务并得到响应。根据我的理解,这是直接进入在主节点(也是一个节点)上运行的 Pod,而不是通过服务 IP(这将在任何 Pod 之间实现负载平衡)。

我的问题是如何将外部IP映射到服务IP?我知道 kubernetes 有一个仅适用于 GCE 的设置(我现在无法使用)。但是有没有一些巧妙的方法告诉 etcd/flannel 执行此操作?

最佳答案

如果您使用kubectl公开命令:

--external-ip="": External IP address to set for the service. The service can be accessed by this IP in addition to its generated service IP.

或者,如果您从 jsonyaml 文件创建,请使用 spec/externalIPs数组。

关于azure - 如何将 Kubernetes 服务公开到互联网?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35275315/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com