3.1平台系统架构
最常见的kubernetes集群部署方式是一个master节点加若干node节点,这种方式虽然能实现快速部署及弹性伸缩,但如果master节点发生故障,会发生单点故障导致整个集群瘫痪。本文提出了一种高可用的k8s系统架构,当某个master节点发生故障时,由备份master节点接替其工作保障集群继续正常运行。一个Kubernetes集群常规架构。
实现系统的高可用性需要通过增加master节点,并将集群中的master节点构造为主备模式并能够实现负载均衡。本文提出的高可用架构可以通过增加master物理节点数量实现,也可以在原有系统基础上,利用kubernetes的分布式特性让node兼具master节点功能,例如,原系统为1master+2nodes的架构,优化后为master1+master2(node)+master3(node)的架构,这样在避免增加成本的同时实现高可用。高可用、负载均衡功能采用经典的keepalived+haproxy的方式实现,系统平台采用自动化部署的方式,运维人员只需要提供master节点的IP地址即可实现一键部署。