本文介紹K8s集群在不同階段需要注意的事項。
集群創建
此處僅介紹您在創建K8s集群時需要注意的事項。如需了解更多ACK Pro版集群信息,請參見ACK集群Pro版概述。
對于生產環境,建議使用ACK Pro托管版集群。
Pro版集群相對于標準版集群能提供更好的資源隔離特性和SLA,更多Pro版集群信息,請參見ACK集群Pro版概述。
對于生產環境,創建集群時使用Terway網絡插件。
設置網絡插件為Terway時,支持Pod實例獨占一個專有的彈性網卡,以獲得最佳的網絡性能。更多網絡插件信息,請參見創建ACK Pro版集群。
對于生產環境,創建集群時建議選用Alibaba Cloud Linux操作系統。
Alibaba Cloud Linux操作系統是ACK默認的操作系統,支持等保加固,可獲得更好的性能和長期的服務支持。更多操作系統信息,請參見使用操作系統Alibaba Cloud Linux 2。
對于生產環境,建議使用企業級安全組。
企業級安全組相比于普通安全組能支持更大的節點容量。更多關于安全組的信息,請參見安全組概述。
如果使用的是普通安全組,在進行應用擴容時遇到Node節點或Pod無法擴容,可檢查是否是安全組規格限制了節點容量而導致擴容失敗。
禁止修改容器服務和EDAS添加的安全組規則。
正常情況下,安全組被容器服務集群所托管,ECS、Pod的IP段等規則都已經完成初始配置。如果隨意修改或刪除安全組規則,可能會導致集群無法導入EDAS、Pod無法調度、Pod之間網絡不通、kubectl logs命令失效以及其他功能異常。
如果已經修改了安全組規則,請確保集群節點IP段已經加入了安全組規則。如何查看集群所屬安全組,請參見查看集群信息。
如果需要使用Ingress提供對外服務,需要為集群配置合理的Ingress Controller的Pod副本數。
Ingress Controller組件承載著外部訪問的流量,副本數不足將影響整體業務的吞吐量,您可在集群Prometheus監控視圖查看Ingress Controller的監控指標,確認負載情況,以便設置合理的Pod副本數。查看Ingress Controller的監控指標,請參見Nginx Ingress訪問日志分析與監控。
開啟CoreDNS,并為CoreDNS配置合理的Pod副本數。
調整CoreDNS副本數與集群節點數到合適比率有助于提升集群服務發現的性能,該比值推薦為1:8,即一個CoreDNS Pod支撐8個集群節點。如何配置CoreDNS的副本數,請參見DNS最佳實踐。
集群監控
此處僅介紹Prometheus監控、Node節點監控和收集集群日志,如需了解更多的集群監控相關信息,請參見可觀測性體系概述。
查看Prometheus監控指標,對節點和工作負載添加報警。
為Node節點開啟云監控,對ECS的資源使用率添加報警。
開啟集群日志收集功能,從日志服務SLS進行日志分析。
集群刪除
當您需要刪除K8s集群時,請在EDAS先刪除部署在K8s集群里的應用,然后再取消導入K8s集群,最后從容器服務ACK刪除集群。
如果未按照上述順序刪除集群,會造成資源遺留,會影響VPC資源的刪除。
相關文檔,請參見: