Kubernetes 有状态应用管理及访问控制与授权最佳实践
在 Kubernetes 环境中,有状态应用的管理以及对 API 的访问控制和授权是保障集群安全、高效运行的关键。下面将详细介绍有状态集(StatefulSet)和操作符(Operator)的最佳实践,以及准入控制和授权的相关内容。
有状态集和操作符最佳实践
大型分布式有状态应用在管理和配置操作上较为复杂,Kubernetes 的有状态集和操作符能为其带来显著优势。不过,在使用时有以下最佳实践需要遵循:
1. 谨慎使用有状态集 :有状态应用通常需要更深入的管理,而编排器目前还难以很好地处理。未来操作符可能会解决 Kubernetes 在这方面的不足。
2. 手动创建无头服务 :有状态集的无头服务不会自动创建,必须在部署时手动创建,以便将 Pod 作为独立节点进行寻址。
3. 并非都需要持久卷 :应用需要顺序命名和可靠扩展时,不一定意味着需要分配持久卷。
4. 处理无响应节点上的 Pod :如果集群中的某个节点无响应,有状态集中的 Pod 不会自动删除,而是在宽限期后进入终止或未知状态。清除这些 Pod 的方法有:从集群中移除节点对象、kubelet 恢复工作并直接删除 Pod,或使用操作符强制删除 Pod。强制删除应作为最后手段,要特别注意避免已删除 Pod 的节点重新上线,以免集群中出现同名的两个 Pod。可使用以下命令强制删除 Pod:
kubectl delete p
超级会员免费看
订阅专栏 解锁全文
2024

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



