by kowen 2018.01.30
Kubernetes是什么
Kubernetes是一个对容器化应用的自动部署、伸缩和管理的开源系统。
Kubernetes 英文意思舵手、驾驭者,在官方网站上的标题是工业级(Production-Grade)容器编排(Orchestration),副标题是自动化容器部署、伸缩(scaling)和管理。
为了方便管理和发现,它把组成一个应用的多个容器划分为不同的逻辑单元,它基于谷歌15年处理工作负载的经验,同时也结合了来自社区的最佳想法和经验。
- 设计遵循了一套原则,这套原则给予了谷歌一周能够运行数以亿计的容器,这种扩展无需扩充运维团队
- 不论是本地测试还是运行全球企业,不管你的需求多么复杂,Kubernetes可以灵活的增长以即时方便的交付你的应用
- Kubernetes是开源的,可以自由的利用定制的、混合的或者公共云基础设施,让你不费吹灰之力将工作负载配备到你认为最重要的地方
特性
自动装箱
自动根据资源需求等限制放置容器,而且不会牺牲性能。混合关键和尽力而为的工作负载,以提高利用率降低资源消耗。
强大的伸缩性
通过命令行、操作界面或者自动基于CPU利用率轻松扩展或者缩减应用。
自动发布和回滚
Kubernetes渐进式的执行程序和配置的更改,同时监控程序的健康状态保证不会误杀。一旦发生错误,Kubernetes将会自动回滚。
存储编排
根据你的选择自动加载存储系统,包括本地系统,GCP和AWS等云存储,以及NFS、iSCSI、Gluster等网络存储系统。
自愈机制
自动重启死掉的容器,当节点死掉后替换或者重新调度容器,根据自定义健康检查杀死失去响应的容器,只在容器服务准备完毕后才允许访问。
服务发现和负载均衡
Kubernetes沿用目前的服务发现机制,因此无需修改应用。Kubernetes给每个容器分配单独的IP地址,给一组容器同一个DNS名称并实现负载均衡。
保密性和配置管理
部署和升级安全配置和应用配置时,不用重新生成镜像,也不会暴露保密信息。
批处理
除了服务之外,Kubernetes还可以管理您的批处理和CI工作负载,并根据需要替换失败的容器。
网友评论