Инициализация кластера Docker Swarm
На этом шаге вы инициализируете кластер Docker Swarm на виртуальной машине LabEx. Кластер Docker Swarm представляет собой группу (кластер) узлов Docker, работающих в режиме swarm. Режим swarm позволяет управлять кластером узлов Docker как единым виртуальным системой.
Перед инициализацией кластера проверим текущую версию Docker, установленную на виртуальной машине.
docker version
Вы должны увидеть вывод, похожий на следующий, который указывает на то, что версия Docker - 20.10.21:
Client: Docker Engine - Community
Version: 20.10.21
API version: 1.41
Go version: go1.18.9
Git commit: baeda1f
Built: Tue Oct 25 18:01:18 2022
OS/Arch: linux/amd64
Context: default
Experimental: true
Server: Docker Engine - Community
Engine:
Version: 20.10.21
API version: 1.41 (minimum version 1.12)
Go version: go1.18.9
Git commit: 363bd3a
Built: Tue Oct 25 17:59:35 2022
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.6.10
GitCommit: b4bd5d2bb63a5d10182b7e90689158e7c7b9b06b
runc:
Version: 1.1.4
GitCommit: v1.1.4-0-g5fd4c4d
docker-init:
Version: 0.19.0
GitCommit: de40ad0
Теперь инициализируем кластер Docker Swarm. При инициализации кластера текущий узел становится первым управляющим узлом. Управляющие узлы выполняют задачи управления кластером, такие как сохранение состояния кластера, планирование сервисов и предоставление API режима swarm.
Используйте команду docker swarm init
для инициализации кластера. Мы укажем адрес для объявления (advertise address), чтобы другие узлы могли присоединиться к кластеру с использованием IP - адреса виртуальной машины. Замените YOUR_VM_IP_ADDRESS
на фактический IP - адрес вашей виртуальной машины LabEx. Вы можете найти этот IP - адрес в деталях среды LabEx.
docker swarm init --advertise-addr YOUR_VM_IP_ADDRESS
После выполнения команды вы увидите вывод, который указывает, что кластер был инициализирован, и предоставляет команду для присоединения других узлов к кластеру в качестве рабочих узлов. Сохраните эту команду для присоединения, так как вам понадобится в следующем шаге.
Swarm initialized: current node (xxxxxxxxxxxx) is now a manager.
To add a worker to this swarm, run the following command on the worker node:
docker swarm join --token SWMTKN-1-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx-xxxxxxxxxxxxxxxxxxxxxxxx YOUR_VM_IP_ADDRESS:2377
To add a manager to this swarm, run 'docker swarm join-token manager' and follow the instructions.