gpt4 book ai didi

kubernetes - Kubernetes 中的服务位于何处?

转载 作者:行者123 更新时间:2023-12-04 13:56:51 25 4
gpt4 key购买 nike

我正在学习 Kubernetes,目前正在深入研究高可用性,虽然我知道我可以使用本地(或远程)etcd 以及一组高可用性的控制平面(API 服务器、 Controller 、调度程序)来设置minions(通过 Kubernetes 本身),我仍然不确定这个概念中服务的位置。

如果它们位于控制平面中:很好,我可以将它们设置为高可用性。

如果他们住在某个节点上:好的,但是如果该节点出现故障或以任何其他方式变得不可用会发生什么?

据我所知,需要服务来将我的 pod 公开到互联网以及负载平衡。因此,没有 HA 服务,我的应用程序将面临无法访问的风险(即使它对于系统的任何其他方面都可能具有超高的可用性)。

最佳答案

Kubernetes Service 是 k8s 集群中的另一个 REST 对象。有以下类型是服务。它们中的每一个在集群中都有不同的用途。

  • 集群IP
  • 节点端口
  • 负载均衡器
  • headless

  • 服务的基本目的
  • 为 Pod 提供单点网关
  • 对 Pod 进行负载平衡
  • Inter Pods 通讯
  • 提供稳定性,因为 pod 可能会以不同的 Ip 死亡和重新启动
  • 更多

  • 这些对象是 存储在 etcd 因为它是集群中的唯一真实来源。

    Kube-proxy 负责创建这些对象。它使用选择器和标签。

    例如,每个 pod 对象都有标签,因此服务对象有选择器来匹配这些标签。此外,每个 Pod 都有端点,所以基本上 kube-proxy 为这些端点 (IP:Port) 分配服务 (IP:Port)。Kube-proxy 使用 IP-Tables 规则来完成这个魔术。

    Kube-Proxy 作为 DaemonSet 部署在每个集群节点中,因此它们通过使用 etcd 相互了解。

    关于kubernetes - Kubernetes 中的服务位于何处?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47941012/

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