河南省网站建设_网站建设公司_会员系统_seo优化
2026/1/16 10:52:07 网站建设 项目流程

文章目录

      • 核心前提:Swarm 本身已内置负载均衡
    • 方案1:最简方案(利用Swarm原生VIP,单节点入口)
      • 原理
      • 验证操作
      • 优点
      • 缺点
    • 方案2:DNS轮询(域名入口,解析到多节点IP)
      • 原理
      • 实现步骤
        • 方式1:本地DNS(/etc/hosts,测试/小规模集群)
        • 方式2:DNS服务器(Bind/CoreDNS,生产环境)
      • 优点
      • 缺点
    • 方案3:反向代理(Nginx/HAProxy,灵活可控,生产推荐)
      • 原理
      • 实现步骤(以Nginx代理为例)
        • 步骤1:创建Nginx代理配置
        • 步骤2:部署代理服务(运行在swarm41,Drain状态不影响)
        • 步骤3:验证(访问代理入口swarm41的IP)
      • 进阶优化(生产级)
      • 优点
      • 缺点
    • 方案对比与选型建议
      • 最终推荐

在 Docker Swarm 集群中实现「访问单个入口(IP/域名)轮询后端三个Worker节点」,有3种递进方案(从简单到灵活),适配你的IP场景(192.168.90.242/swarm42、243/swarm43、245/harborbj245),以下是具体实现:

核心前提:Swarm 本身已内置负载均衡

你当前的nginx-prod服务通过--publish published=80,target=80开启了Swarm Ingress Network—— 集群所有节点的80端口会被Ingress网络接管,访问任意节点的80端口(比如 192.168.90.242:80),Swarm 内置的负载均衡器会自动轮询后端3个nginx副本(swarm42/swarm43/harborbj245上的容器),这是最基础的能力,无需额外配置!

方案1:最简方案(利用Swarm原生VIP,单节点入口)

原理

访问任意一个Worker节点的IP(如 192.168.90.242)的80端口,Swarm Ingress Network 会自动将请求轮询转发到后端3个nginx副本(不管请求发往哪个节点,Swarm都会做负载均衡)。

验证操作

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询