3.为什么要使用 Kubernetes

从生态圈的角度来看:

  • Google 的业内最成熟的容器编排管理经验的输出
  • 2017 年战胜 Docker Swarm 和 Apache Mesos,成为云原生应用唯一值得绑定的容器编排管理平台
  • 传统云平台提供商的全面支持:Google k8s engine、Red Hat 的 OpenShift、Microsoft 的 Azure container service、IBM 的 cloud container service 等

从云应用角度来看:

  • 容器管理、调度和编排的事实标准:摆脱锁定,支持跨云
  • 先进的 Workload 管理之经验模型:Pod 和 Controllers
  • 原生支持微服务抽象:服务注册、服务发现和自动负载均衡

在生产环境中使用 Kubernetes 的主要优势在于它提供了在物理机或虚拟机集群上调度和运行容器的平台。更宽泛地说,它能帮你在生产环境中实现可以依赖的基于容器的基础设施。而且,由于 Kubernetes 本质上就是运维任务的自动化平台,你可以执行一些其它应用程序平台或管理系统支持的操作,只不过操作对象变成了容器。

有了 Kubernetes,你可以:

跨主机编排容器
更充分地利用硬件资源来最大化地满足企业应用的需求
控制与自动化应用的部署与升级
为有状态的应用程序挂载和添加存储器
线上扩展或裁剪容器化应用程序与它们的资源
声明式的容器管理,保证所部署的应用按照我们部署的方式运作
通过自动布局、自动重启、自动复制、自动伸缩实现应用的状态检查与自我修复

然而 Kubernetes 依赖其它项目来提供完整的编排服务。结合其它开源项目作为其组件,你才能充分感受到 Kubernetes 的能力。这些必要组件包括:

仓库:Atomic Registry、Docker Registry 等
网络:OpenvSwitch 和智能边缘路由等
监控:Heapster、Kibana、Hawkular 和 Elastic
安全:LDAP、SELinux、 RBAC 与 支持多租户的 OAUTH
自动化:通过 Ansible 的 playbook 进行集群的安装和生命周期管理
服务:大量事先创建好的常用应用模板

原文地址:https://www.cnblogs.com/jasonwu/p/13886505.html