Kubernetes和Apache,还有不少的容器编排工具供企业选择

Kubernetes是当下最流行的容器编排平台 , 不管是生产环境的采用率 , 还是云原生生态都很强大 。 但Kubernetes并不是企业唯一的选择 , 还有不少的容器编排工具供企业选择 , 这些容器编排工具适合不同的基础架构环境 。 其中不少 , 已经获得了用户极高的认可和采用 , 比如OpenShift、AWS EKS、Docker Swarm等等 。 本文就帮大家梳理一下这些容器编排平台 。
OpenShift
红帽的OpenShift容器平台即服务(PaaS)是目前混合云环境中的安全和可扩展资源上的自动化应用程序 。 它提供了用于构建 , 部署和容器化应用程序的企业级平台 。
【Kubernetes和Apache,还有不少的容器编排工具供企业选择】
Kubernetes和Apache,还有不少的容器编排工具供企业选择
文章图片
它基于红帽企业版Linux和Kubernetes引擎而构建 。 Openshift具有多种功能 , 可通过UI和CLI集群 。 此外 , 红帽还提供了Openshift的两个变种 , Openshift Online是软件即服务产品;OpenShift Dedicated是托管服务产品 。
Openshift Origin(Origin Community Distribution)是一个开源上游社区项目 , 用于Openshift容器平台Openshift Online和OpenShift Dedicated 。
Nomad
Nomad是一个简单、灵活且易于使用的工作负载协调器 , 可在内部部署和云范围内大规模部署和容器和非容器化应用程序 。 Nomad以单个二进制文件的形式运行 , 占用资源少仅35MB , 并在macOS , Windows和Linux上可用 。
Kubernetes和Apache,还有不少的容器编排工具供企业选择
文章图片
【Kubernetes和Apache,还有不少的容器编排工具供企业选择】用户可使用声明性基础架构代码(IaC)来部署其应用程序 , 并定义应如何部署应用程序 。 Nomad会自动从故障中恢复应用程序 。
Nomad组织了任何类型的应用程序(不仅仅是容器)它为Docker、Windows、Java、VM等提供了一流的支持 。
此外 , Nomad可使旧版应用程序现代化 , 而无需重写;可轻松实现多云 , 与Terraform , Consul和Vault的本机集成 。
Docker Swarm
Docker Swarm使用声明性模型 , 可以定义服务的所需状态 , Docker将维护这个状态 。 Docker企业版本已将Kubernetes与Swarm集成在一起 , 而且Docker现在提供了编排引擎选择的灵活性 。Docker engine CLI用于创建大量Docker引擎 , 可在其中部署应用程序服务 。
Kubernetes和Apache,还有不少的容器编排工具供企业选择
文章图片
Docker命令用于与集群进行交互 。 加入集群的机器称为节点 , 而Swarm处理集群的活动 。
Docker Swarm由两个主要组件组成 , Manager器节点将任务分配给集群中的Worker Node 。 根据Raft一致性算法选举领导者 。 领导者负责处理所有集群和集群的任务编排决策 。 Worker Node从从节点接收任务并执行它们 。
Docker Swarm的功能也很强大 , 它与Docker Engine集成进行集群;采用分布式设计;声明式服务模型;也包括如多主机联网、服务发现、负载均衡、滚动更新等功能特征 。
Docker Compose
Docker Compose用于定义和运行可协同工作的多容器应用程序 。 Docker Compose描述了相互共享的服务组 , 这些服务组共享软件依赖关系 , 并被编排和缩放 。
可以使用YAML文件(dockerfile)配置应用程序的服务 。 使用docker-compose up命令 , 从配置中创建并启动所有服务 。
Docker Engine可以是配备有Docker Machine或整个Docker Swarm集群的独立实例 。


推荐阅读