近些年云计算最火的领域围绕PaaS层级,向下PaaS平台能部署标准云计算IaaS资源或者自建机房的基础硬件建设,向上利用PaaS微服务架构特点快速构建SaaS应用。而基于容器编排技术的Kubernetes,已然成为业界事实标准,容器化,云原生一跃成为近几年云计算领域最火的关键字,是企业数字化转型过程中的重要技术选型环节。
利用k8s平台快速部署应用大体上分为5步:
1、开发应用
2、利用Docker技术打包应用
3、创建一个kubernetes集群
4、部署容器化应用到k8s集群中
5、服务暴露、按需扩展集群
粗粒度上我们可以根据应用类型分为无状态应用(Stateless Services)和有状态应用(Stateful Services)。无状态应用较于容易横向扩展,如下图横向增加配置好的Web服务并注册到Nginx代理,即可增加客户端访问流量。
有状态服务通常是云平台建设的难点,例如分布式的关系型数据库一般大于3节点,某个时间段内Primary node提供可读写的权限,其他节点只提供只读权限,当Primary Node发生异常就需要进行高可用切换或者选主过程。