Kubernetes 集群使用指南:从基础到高级操作
1. 节点状态与复制控制器
在 Kubernetes 集群中,主节点可能无法确定某个节点的状态,该节点可能正在运行,也可能没有运行。如果在另一台机器上重启相同的 Pod,可能会出现两个具有相同名称和标识的 Pod 同时运行的情况,这会引发各种问题。例如,分布式日志可能会从多个位置写入,且都使用相同的 Pod ID 作为键;或者 Pod ID 用于主选举系统,客户端可能会混淆哪个 Pod 才是真正的主节点。
为了可靠地运行工作负载,需要使用复制控制器(Replication Controller)。复制控制器会获取一个 Pod 模板,并确保始终有特定数量的 Pod 运行以完成任务。当主节点无法与某个节点通信时,复制控制器负责启动新的 Pod 来替换丢失的 Pod;若通信恢复,复制控制器会删除多余的 Pod 之一。
2. 容器网络连接
2.1 问题描述
你希望控制网络流量如何定向到在 Kubernetes 集群中调度的容器。
2.2 解决方案
使用为每个容器分配独立 IP 地址的网络子系统,以便直接对每个容器进行寻址。Kubernetes 附带了一组脚本,便于在各种云环境中启动。许多集群部署系统会自动为你正确设置网络。若你想深入了解细节,CoreOS 的 Flannel 是一个不错的入门选择。其他可选方案如下:
- 为你运行的云环境构建内部网络路由,支持 GCE 和 Amazon EC2。
- 对于大型裸机部署,可使用 Project Calico。
- 若需要跨广域加密的解决方案,可选择 Weave。
Kub
超级会员免费看
订阅专栏 解锁全文
904

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



