Kubernetes服务与节点特性选择详解
1. Kubernetes服务概述
Kubernetes提供了多种工具,用于创建、发现、连接和暴露多个服务,以满足超出单个容器承载能力的需求。具体如下:
- 内部服务 :可连接各种不同语言编写、发布计划不同或需要独立扩展的工作负载。它能通过私有集群IP暴露,供集群内其他服务调用。
- 服务发现 :Kubernetes提供两种服务发现形式来查找内部服务IP,分别是环境变量和DNS。
- Ingress :可使用单个IP将多个内部服务暴露到互联网,通过路径和/或主机名进行路由。它是一种“L7”HTTP负载均衡器,还能处理HTTPS连接和TLS终止。在负载均衡器层执行TLS终止,可节省应用程序的配置工作并降低CPU开销。
2. 节点特性选择的背景
在云计算中,即使使用能处理大部分底层计算资源调配的抽象平台(如Kubernetes),我们仍可能关注实际运行工作负载的服务器特性。不同计算节点存在差异,如CPU架构(x86、Arm)、操作系统(Linux、Windows)、是否挂载特殊硬件(GPU)以及是否采用低成本的“Spot”供应模式(可能会突然终止)等。此外,Kubernetes会在同一节点上运行多个Pod(即binpacking),虽能降低成本,但存在单点故障风险,不过Kubernetes提供了Pod Spread Topology等方法来避免同一Pod在节点上过度集中。
超级会员免费看
订阅专栏 解锁全文
699

被折叠的 条评论
为什么被折叠?



