Kubernetes功能和特点?

Kubernetes具体有什么功能特点呢:
1. 应用的定义
Kubernetes采用Pod作为应用调度的最小单元。要理解Kubernetes就需要先理解Pod的概念。Pod是一组位于同一节点的容器的结合。
如果把Docker容器比喻成葡萄的化,Docker引擎管理的是一颗颗晶莹剔透的葡萄,而Kubernetes管理的是一串串的葡萄。每个Pod就相当于一串葡萄,上面的每颗葡萄都连接在同一段的葡萄枝丫(相同的网络IP地址和Volune卷)上,而每段枝丫都生长在同一棵葡萄树(Node服务器)上。
通过Pod的统一管理,Kubernetes抽象了容器的细节,简化了编排的管理。
2. 应用的配置
Kubernetes的应用统一通过YAML文件进行各资源状态的描述,可以便利地进行状态的更新、回滚和弹性伸缩。
3. 高可用
Kubernetes通过etcd的集群,实现配置高可用管理;多个master节点,实现集群管理的高可用;应用的跨节点多副本负载均衡,实现业务的高可用。
4. 健康检查
Kubernetes通过readiness和liveness两层检查,确认是否对外提供网络服务和是否重启应用容器。
5. 存储
Kubernetes提供了存储的两级抽象:一级实现后台存储的供应抽象(如NFS,AWS EBS,Ceph等);一级是前台存储资源需求的抽象。方便将存储的系统配置和应用管理隔离开,方便开发和运维团队的分工合作。
6. 网络
Kubernetes采用扁平的网络架构实现Pod之间的通信,可以选择Overlay的大二层实现,也可以选择基于三层路由的网络框架,非常灵活。同时在内部网络互通的基础上,提供了基于Service和Ingress的服务发现功能,可以对外提供网络服务。
7. 监控
Kubernetes作为主流的容器编排手段,可以很好地和业界主流的监控手段配合,如何ELK(ElasticSearch、Logstash、Kibana)、EFK(ElasticSearch、Fluentd、Kibana)、Prometheus、Grafana等。

使用场景和动因

Kubernetes的使用场景有很多,我们来介绍两个最主要的使用动因吧:
如果想要寻找一款混合云(公有云和私有云混合)环境的容器编排技术,那Kubernetes将是您的不二选择,不管是全球互联网三大平台(亚马逊AWS、谷歌GCP、微软Azure),还是国内的云平台主流厂商(百度云、腾讯云)都对于Kubernetes有了天然的集成。很容易在企业内部建立一套用户认证、应用包管理、CI/CD部署、监控平台来统一管理公有云上租赁的和私有云环境自建的Kubernetes集群。
同时,作为当前排名第一的容器管理和编排技术,Kubernetes有最大量的文档和最完善的社区,让每一位技术爱好者很方便地徜徉其中。伴随着业务系统的微服务改造过程,应用被一个一个地迁移到Kubernetes集群实现容器化落地,我们的架构师和工程师们也很快地从容器新兵发展为成为编排大师,实现个人价值的一大飞跃。

小结

在本节课程中,我们学习了Kubernetes的功能特点和使用场景。接下来,我们将带着大家比较一下两款容器编排技术的主要区别。