Kubernetes Endpoint Slices

网友投稿 540 2022-10-22

本站部分文章、图片属于网络上可搜索到的公开信息,均用于学习和交流用途,不能代表睿象云的观点、立场或意见。我们接受网民的监督,如发现任何违法内容或侵犯了您的权益,请第一时间联系小编邮箱jiasou666@gmail.com 处理。

Kubernetes Endpoint Slices

Endpoint Slices

在Kubernetes v1.17 [beta]版本中 Endpoint Slices 提供了一种简单的方法来跟踪 Kubernetes 集群中的网络端点(network endpoints)。它们为 Endpoints 提供了一种可伸缩和可拓展的替代方案。

Endpoint Slice 资源

在 Kubernetes 中,EndpointSlice 包含对一组网络端点的引用。指定选择器后,EndpointSlice 控制器会自动为 Kubernetes 服务创建 EndpointSlice。这些 EndpointSlice 将包含对与服务选择器匹配的所有 Pod 的引用。EndpointSlice 通过唯一的服务和端口组合将网络端点组织在一起。

Kubernetes服务 example 的示例 EndpointSlice 资源。

apiVersion: discovery.k8s.io/v1beta1kind: EndpointSlicemetadata: name: example-abc labels: kubernetes.io/service-name: exampleaddressType: IPv4ports: - name: http protocol: TCP port: 80endpoints: - addresses: - "10.1.2.3" conditions: ready: true hostname: pod-1 topology: kubernetes.io/hostname: node-1 topology.kubernetes.io/zone: us-west2-a

默认情况下,由 EndpointSlice 控制器管理的 Endpoint Slice 将有不超过 100 个 endpoints。低于此比例时,Endpoint Slices 应与 Endpoints 和服务进行 1:1 映射,并具有相似的性能。

当涉及如何路由内部流量时,Endpoint Slices 可以充当 kube-proxy 的真实来源。启用该功能后,在服务的 endpoints 规模庞大时会有可观的性能提升。

地址类型

EndpointSlice 支持三种地址类型:

IPv4IPv6FQDN (完全合格的域名)

动机

Endpoints API 提供了一种简单明了的方法在 Kubernetes 中跟踪网络端点。不幸的是,随着 Kubernetes 集群与服务的增长,该 API 的局限性变得更加明显。最值得注意的是,这包含了扩展到更多网络端点的挑战。

由于服务的所有网络端点都存储在单个 Endpoints 资源中,因此这些资源可能会变得很大。这影响了 Kubernetes 组件(尤其是主控制平面)的性能,并在 Endpoints 发生更改时导致大量网络流量和处理。Endpoint Slices 可帮助您缓解这些问题并提供可扩展的 附加特性(例如拓扑路由)平台。

上一篇:鲁股观察 |6月28日:市场正 “逐渐走出大跌思维” ,迈赫股份领衔山东188只个股上涨
下一篇:外交部:中方始终坚持维护国际核不扩散体系
相关文章

 发表评论

暂时没有评论,来抢沙发吧~