Java培训机构logo图

首页 课程 师资 教程 报名

Docker集群管理工具

  • 2021-09-28 11:06:56
  • 234次 动力节点

Docker集群管理工具太多,将其分为三类:用于存储和管理Docker映像的存储库工具 ,用于在其生命周期中定义,启动和管理Docker容器的管理框架 ,以及一些命令行和配置自动化管理工具 。

1.图像注册 (1. Image Registries)

Docker集线器 (Docker Hub)

对于大多数人来说,查找Docker映像的显而易见的第一位是Docker Hub,它是包含用于运行容器的操作系统和软件的软件包。 Docker Hub由Docker本身提供,其中包含大量映像,这些映像已预先加载以支持各种应用程序项目。 您可以在hub.docker.com网站上找到并研究图像,然后将其直接拉入您自己的Docker Engine环境。

$ docker pull ubuntu

一旦开始创建自己的映像,就可以在Docker Hub上的公共存储库中安全地存储任意数量的映像。 此外,他们将免费为您提供一个私人存储库,每个存储库的费用约为一美元。 也许Docker Hub最好的地方就是它可以与连接到Docker的所有其他设备无缝地工作,包括AWS等公共云提供商和Docker Cloud等基础架构管理服务。

单独的Docker Store服务允许您发布预认证的映像和插件,以满足对可信资源访问的需求。

EC2容器注册表(ECR) (EC2 Container Registry (ECR))

亚马逊的AWS充分了解Docker的功能和潜力,并希望参与其中。 作为他们努力向尽可能多的Docker业务开放云生态系统的努力的一部分,他们建立了自己的注册表以与EC2容器服务平台:ECR一起使用。 可以通过AWS GUI或CLI工具推,拉和管理图像。 权限策略可以仅对所选人员严格控制图像访问。

显然,ECR被设计为与在基于AWS的服务(例如ECS和Elastic Beanstalk)上运行的基础架构最佳配合。

Docker注册表 (Docker Registry)

如果出于安全或实际原因需要将图像维护得离家更近一些,那么您将需要了解Docker免费提供的Docker Registry。 您可以指定一个可以访问其他网络资产或从中访问其他网络资产的注册表服务器,安装并启用docker-registry程序包,标记映像,以便它们指向您的本地注册表,您便拥有了一个真实的,实时的私有存储库。

$ dpkg -i docker-registry_2.4.1~ds1-2_amd64.deb$ systemctl enable docker-registry$ docker tag hello-world localhost:5000/hello-world:latest

映像本身存储在服务器上的文件系统中,但是可以通过与Docker Hub上相同的CLI工具来使用它们。 担心保护您的图像? Docker Registry允许您通过对站点执行登录身份验证来应用SSL / TLS证书并控制访问。

2.行政框架 (2. Administration Frameworks)

即使您已经毕业了,但仍可能希望在本地进行活动的Docker部署:也许您的客户端都是本地的,或者您的计划工作量并不那么繁重。 也许您只是对安全性抱有偏执。 当然,“对安全性抱有偏执”的意思是“充分了解网络漏洞的当前状态”。

一种“留在本地”的方法是继续做到现在为止。 只要考虑到资源安全性和容量方面的考虑,就没有理由放弃已经安装好的旧版Community Edition Docker Engine。

但是,如果您认为将要面对的复杂性水平让您感到有些迷失,那么您可能要考虑升级到商业环境,该环境与持续的支持一起可以提供基于浏览器的管理控制台。 无论哪种方式,您都需要提供自己的托管环境,容器将在其中运行。 可能是您的本地服务器,或者是在AWS或Azure这样的公共云中运行的虚拟机。

Docker数据中心 (Docker Datacenter)

您可以通过在本地服务器上下载并安装常规Docker Engine以及第二个名为Docker Universal Control Plane(UCP)的软件包来设置Datacenter(现已作为Docker Enterprise Edition的一部分出售)。 UCP提供了一个浏览器界面,该界面允许对构成基础结构的所有图像,应用程序和网络进行集中管理。 安全性也通过接口处理。

Docker云 (Docker Cloud)

就像Docker Datacenter(这也是Docker的正式产品)一样,Docker Cloud提供了一个基于GUI的基于浏览器的控制台,用于管理Docker部署的各个方面。 这包括对在公共云中运行的主机节点的管理。 最大的区别在于,与Datacenter不同,Docker Cloud管理服务是从cloud.docker.com网站托管的:没有服务器软件可安装在您自己的设备上。

它可以通过为您的云提供商帐户(例如AWS)输入身份验证信息来工作,或者通过在运行于具有网络连接性的任何Linux或Windows计算机上安装Docker Cloud Agent来工作。 单击“节点群集”窗口中的“自带节点”按钮,将显示一个Linux命令来下载和安装代理,该代理可能类似于以下内容:

$ curl -Ls https://get.cloud.docker.com/ | sudo -H sh -s 90b501cb04e344bfbf76890a09362c39

Docker Cloud将资源组织到节点群集中,节点群集是作为单个服务的一部分进行管理的单个节点的组,所有这些都致力于统一的部署目标。

AWS EC2容器服务(ECS) (AWS EC2 Container Service (ECS))

除了ECR映像注册表外,AWS还创建了自己的完整基础架构来托管和管理Docker容器集群。 ECS的工作方式是为既定目的的EC2实例配置Docker Engine和ECS代理。 使用ECS控制台或AWS CLI,您可以在该EC2实例上定义,启动和管理容器。

$ aws ecs describe-clusters

3.管理工具 (3. Management tools)

Docker Swarm模式 (Docker Swarm Mode)

尽管现在它已成为Docker Engine的一部分,但也许是因为它仍在不断变化中,但是Docker群模式在某种程度上具有独立产品的风格。 这个想法是,您可以将其中一台服务器(称为节点)指定为管理器:

$ docker swarm init

…以及其他作为客户端的服务器:

$ docker swarm join

从那里开始,使用管理器中的“ docker service”命令将Docker容器集群作为服务创建和管理,并自动高效地将容器分布在所有可用服务器之间,无论它们位于何处。 您应该为运行一个简单的“服务规模”命令而感到兴奋,并神奇地看到适当数量的容器并立即在您的网络中出现,这应该让您自己尝试一下。

$ docker service create -p 80:80 --name webserver nginx$ docker service scale webserver=5

通过上述大家对Docker集群管理工具已经有所了解,想了解更多相关知识,不妨关注动力节点Docker菜鸟教程,内容通俗易懂,适合小白学习,希望对大家有所帮助。

选你想看

你适合学Java吗?4大专业测评方法

代码逻辑 吸收能力 技术学习能力 综合素质

先测评确定适合在学习

在线申请免费测试名额
价值1998元实验班免费学
姓名
手机
提交