【发布时间】:2019-03-21 10:12:22
【问题描述】:
我刚刚了解了 Kubernetes 中的 ReplicaSet 和服务。我知道 ReplicaSets 中期望状态的概念,这意味着如果我们的一个 pod 发生故障,它将被重新调度以保持所需的副本数量。
但是如果服务出现故障/失败会发生什么?有什么补救措施吗?
【问题讨论】:
标签: kubernetes
我刚刚了解了 Kubernetes 中的 ReplicaSet 和服务。我知道 ReplicaSets 中期望状态的概念,这意味着如果我们的一个 pod 发生故障,它将被重新调度以保持所需的副本数量。
但是如果服务出现故障/失败会发生什么?有什么补救措施吗?
【问题讨论】:
标签: kubernetes
Kubernetes 服务是一种抽象,它定义了一组逻辑 Pod 和访问它们的策略 - 有时称为微服务。服务所针对的 Pod 集(通常)由标签选择器确定(请参阅下文了解为什么您可能需要没有选择器的服务)。 service
k8s 服务是一个抽象概念,它不会像 pod 那样消耗任何 cpu/memory,所以如果它宕机也没有意义。如果您删除它然后将其删除,则没有活动的具体对象。
其中一个功能是提供静态 IP(集群 IP)和 DNS 记录,以便其他 pod 可以与其通信,集群间通信。 DNS record
kube-proxy 的主要职责之一是编写实现服务的 iptables 规则。节点具有相同的 iptables 规则,这些规则由 kube-proxy 同步。
【讨论】:
服务中断的主要原因之一是,如果您弄乱了主机上的 ip 表规则。 Kubernetes 中的服务对象不消耗任何集群资源。它只是让 kube proxy 为服务选择的 Pod 定义路由规则。
如果服务不存在,可以验证并创建服务
【讨论】: