技术笔记分享

自动装箱

kubernetes构建于容器之上,基于资源依赖及其它约束自动完成容器部署且不影响其可用性,同时,为了提高利用率和节省更多资源,将关键和最佳工作量结合在一起。

自我修复

支持容器故障后自动重启、节点故障后重新调度容器,以及其它可用节点,健康检测失败后关闭容器并重新创建灯自我修复机制。

水平扩展

支持通过简单命令或UI手动水平扩展,以及基于CPU等资源负载率的自动水平扩展机制。

服务发现和负载均衡

kubernetes通过附加组件之一的 KubeDNS/CoreDNS 为系统内置了服务发现功能,它会为每个Service配置DNS名称,并允许集群内的客户端直接使用此名称发出访问请求,而Service则通过iptables或ipvs内建了负载均衡机制。

自动发布和回滚

kubernetes支持 灰度 更新应用程序或配置信息,它会监控更新过程中应用程序的健康状态,以确保它不会在同一时间杀掉所有pods,而此过程中一旦有故障发生,就会立即自动执行回滚操作。

密钥和配置管理

kubernetes的Config Map实现了配置数据与Docker镜像解耦,需要时,仅对配置做出变更而无需重新构建Docker镜像,这为应用开发部署带来了很大的灵活性。刺猬,对于应用所依赖的一些敏感数据,如用户名和密码、令牌、密钥等信息,kubernetes专门提供了Secret对象为其解耦,即便利了应用快速开发和交付,又提供了一定程度上的安全保障。

存储编排

kubernetes 支持 pod 对象按需自动挂载不同类型的存储系统,这包括节点本地存储,网络存储,云存储等。

批量处理执行

除了服务器型应用,kubernetes还支持批处理作业及CI(持续集成),如果需要,一样可以实现容器故障后恢复。

发表评论

邮箱地址不会被公开。 必填项已用*标注