容器编排工具鉴赏- docker-compose KubernetesOpenShiftDocker Swarm

Posted 博学谷狂野架构师

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了容器编排工具鉴赏- docker-compose KubernetesOpenShiftDocker Swarm相关的知识,希望对你有一定的参考价值。

任务编排工具

什么是任务编排

​ docker毫无疑问是一个优秀的开源工具。但是,仅靠docker引擎和容器就不能进行复杂的应用程序部署。对于部署复杂的应用程序体系结构的容器群集,必须进行适当的配置。容器化的应用程序应该能够根据应用程序资源需求进行扩展和缩小。

需要考虑的因素
  1. 联网
  2. 高可用性
  3. 易于部署
  4. 良好的服务发现。

常见的任务编排工具

docker-compose

​ docker-compose是基于docker的编排工具,使容器的操作能够批量的,可视的执行,是一个管理多个容器的工具,比如可以解决容器之间的依赖关系,当在宿主机启动较多的容器时候,如果都是手动操作会觉得比较麻烦而且容器出错,这个时候推荐使用 dockerd的单机编排工具 docker-compose。

Kubernetes

​ Kubernetes是一个开源的,开箱即用的容器集群管理器和业务流程。它具有出色的构建 调度器 和资源管理器,用于以更有效和高度可用的方式部署容器。Kubernetes已成为许多组织事实上的容器编排工具。kubernetes项目由google与世界各地的贡献者维护。它提供了本机Docker工具不提供的许多功能。而且,使用kubernetes很容易上手。

OpenShift

​ Openshift建立在kubernetes之上。Openshift项目由Redhat维护。它同时具有开源(openshift orgin)和企业版(openshift容器平台)。连同核心的Kubernetes功能,它提供了用于容器管理和编排的开箱即用组件。

Docker Swarm

​ Docker生态系统包括从开发到生产部署框架的工具。在该列表中,docker swarm适用于集群管理。可以使用docker-compose,swarm,overlay网络和良好的服务发现工具(例如etcd或consul)的组合来管理Docker容器集群。

​ 与其他开源容器集群管理工具相比,Docker swarm在功能方面仍日趋成熟。考虑到庞大的Docker贡献者,Docker swarm拥有其他工具拥有的所有最佳功能不会太久。Docker记录了在生产中使用docker swarm 的良好生产计划。

环境准备

搭建Horbor仓库

停止本地Harbor
 cd /usr/local/harbor/harbor/ && docker-compose down

清理Docker环境
清理本地环境
# 停止并删除所有容器
docker rm -f $(sudo docker ps -a -q)
# 删除所有镜像
docker rmi $(docker images -q)

查看本地环境
docker ps -a
docker images

删除网络配置
docker network rm learn-docker-network

修改Docker配置
修改daemon
# 修改daemon文件删除本地仓库地址
vi /etc/docker/daemon.json
"insecure-registries": ["manager-hongbaoyu-java.itheima.net:8443"],
查看修改
# 查看daemon配置
cat /etc/docker/daemon.json

重启Docker
systemctl daemon-reload
service docker restart
初始化镜像
docker pull mysql:5.7.33;\\
docker pull nacos/nacos-server;\\
docker pull manager-hongbaoyu-java.itheima.net:8443/library/learn-docker-web:1.0-SNAPSHOT;\\
docker pull manager-hongbaoyu-java.itheima.net:8443/library/learn-docker-gateway:1.0-SNAPSHOT;\\
docker pull manager-hongbaoyu-java.itheima.net:8443/library/learn-docker-storage:1.0-SNAPSHOT

以上是关于容器编排工具鉴赏- docker-compose KubernetesOpenShiftDocker Swarm的主要内容,如果未能解决你的问题,请参考以下文章

docker高级管理(docker-compose编排工具,consul架构)

Docker那些事儿之编排工具docker-compose

使用Docker-compose编排容器

docker-compose编排项目redis容器实现主从复制

docker-compose概述与编排部署

docker-compose概述与编排部署