当前位置:首页 > Debian > 正文

Debian集群容器编排实战指南(手把手教你搭建高可用Docker Swarm集群)

在现代云计算和微服务架构中,容器编排已成为部署和管理应用的核心技术。对于使用 Debian 系统的用户来说,搭建一个稳定、高效的Debian集群容器编排环境不仅能提升资源利用率,还能增强服务的高可用性。本教程将带你从零开始,使用 Docker Swarm 在多台 Debian 服务器上构建一个简单的容器编排集群——即使你是初学者,也能轻松上手!

Debian集群容器编排实战指南(手把手教你搭建高可用Docker Swarm集群) Debian集群容器编排  Docker Swarm 容器编排教程 Debian服务器集群 第1张

一、准备工作

在开始之前,请确保你有以下条件:

  • 至少两台运行 Debian 11(Bullseye) 或更高版本的服务器(一台作为管理节点,其余为工作节点)
  • 每台服务器拥有独立的公网或内网 IP 地址
  • 具有 sudo 权限的非 root 用户
  • 服务器之间网络互通(建议关闭防火墙或开放必要端口:2377/tcp、7946/tcp/udp、4789/udp)

二、在所有节点安装 Docker

首先,在每台 Debian 服务器上安装 Docker 引擎。执行以下命令:

# 更新系统包索引sudo apt update# 安装必要依赖sudo apt install -y ca-certificates curl gnupg lsb-release# 添加 Docker 官方 GPG 密钥curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg# 添加 Docker APT 仓库echo \  "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian \  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null# 再次更新并安装 Dockersudo apt updatesudo apt install -y docker-ce docker-ce-cli containerd.io# 将当前用户加入 docker 组(避免每次使用 sudo)sudo usermod -aG docker $USER# 重新登录或执行以下命令激活组权限newgrp docker

三、初始化 Docker Swarm 集群

选择其中一台服务器作为 管理节点(Manager)。假设其 IP 为 192.168.1.10,执行以下命令初始化 Swarm:

docker swarm init --advertise-addr 192.168.1.10

成功后,你会看到类似如下的输出:

Swarm initialized: current node (xxxxxx) is now a manager.To add a worker to this swarm, run the following command:    docker swarm join --token SWMTKN-1-xxxxxxxxxx 192.168.1.10:2377

复制最后那行 docker swarm join ... 命令,稍后在工作节点上使用。

四、将工作节点加入集群

登录到其他 Debian 服务器(工作节点),粘贴刚才复制的 docker swarm join 命令:

docker swarm join --token SWMTKN-1-xxxxxxxxxx 192.168.1.10:2377

如果看到 This node joined a swarm as a worker.,说明加入成功!

五、验证集群状态

回到管理节点,运行以下命令查看集群成员:

docker node ls

你应该能看到类似输出:

ID        HOSTNAME     STATUS    AVAILABILITY   MANAGER STATUSxxxxxx *  debian-mgr   Ready     Active         Leaderyyyyyy    debian-wk1   Ready     Activezzzzzz    debian-wk2   Ready     Active

六、部署第一个服务(可选)

现在,你可以部署一个测试服务来验证编排功能。例如,部署一个 Nginx 服务并设置副本数为 3:

docker service create \  --name my-web \  --publish published=80,target=80 \  --replicas 3 \  nginx:latest

然后检查服务状态:

docker service lsdocker service ps my-web

此时,Nginx 容器会在多个节点上自动调度运行,实现负载均衡与高可用。

七、总结

通过本教程,你已经成功搭建了一个基于 DebianDocker Swarm 容器编排集群。这种轻量级、原生集成的编排方案非常适合中小规模应用场景。无论是学习 容器编排教程,还是构建生产级的 Debian服务器集群,这都是一个坚实的第一步。

后续你可以探索更多高级功能,如滚动更新、服务回滚、自定义网络、Secrets 管理等。希望这篇 Debian集群容器编排 指南对你有所帮助!