Kubernetes是一个开源的容器管理平台,简称k8s,用于管理多个主机上的容器化应用程序;提供应用程序的快速部署,维护和扩展的基本机制;Kubernetes提供了应用程序的快速部署、扩缩容,升级的能力,利用service可以实现服务注册和发现以及转发,通过ingress可以实现七层负载均衡等功能;Kubernetes这个名字源于希腊语,意思是舵手或飞行员。谷歌在2014年开放了Kubernetes项目.Kubernetes建立在谷歌拥有大量运行生产工作量的十五年经验的基础上,结合了社区中的最佳创意和实践,社区活跃度很高。
Kubernetes容器编排工具的优势
灵活部署
kubernetes支持在多种平台部署,支持私有云,公有云,混合云下部署
安全高效
基于rbac做认证授权,精确控制对k8s资源的操作权限
负载均衡
service四层负载均衡
ingress七层负载均衡
kubernetes的功能
1)多租户网络隔离,namespace
2)高可用,高可扩展性
3)节省资源,优化硬件资源的使用
kubernetes应用场景
1)DevOps开发运维一体化
2)微服务
Kubernetes特点
1)可移植:
支持公有云,私有云,混合云,多重云(multi-cloud)
2)可扩展
模块化, 插件化, 可挂载, 可组合
3)自愈
自动布置,自动重启,自动复制,自动扩展
Kubernetes可以满足很多运行环境中应用的需求
比如:
进程协同,利用复合应用保证应用和容器一对一的模型。
存储系统挂载
分发密钥
应用健康检测
应用实例复制
水平自动扩展
命名和发现
负载均衡
滚动更新
资源监控
日志访问
自检和调试
识别和认证
这为PaaS提供了IaaS层的便利,提供了基础设施提供者间的可移植性