生产环境上搭建nacos集群的步骤

要在三台机器上搭建Nacos集群并连接到同一个MySQL数据库,我们需要为每台机器准备一个docker-compose.yml文件。每个文件将稍有不同,主要是服务的名称和端口映射,以确保它们可以在各自的机器上独立运行,并通过内部或外部网络互相通信。

以下是针对三台机器的docker-compose.yml文件示例,考虑到Nacos服务的默认端口已经更改为8898:

Machine 1 (IP: 10.206.0.13)

version: '3'
services:
  nacos1:
    image: nacos/nacos-server:latest
    environment:
      - MODE=cluster
      - NACOS_SERVERS=10.206.0.13:8898,10.206.0.8:8898,10.206.0.4:8898
      - SPRING_DATASOURCE_PLATFORM=mysql
      - MYSQL_SERVICE_HOST=10.206.0.7
      - MYSQL_SERVICE_DB_NAME=nacos_config
      - MYSQL_SERVICE_PORT=3396
      - MYSQL_SERVICE_USER=shtcetcmysql
      - MYSQL_SERVICE_PASSWORD=Shtcetc@2024
    ports:
      - "8898:8848"
    restart: on-failure

Machine 2 (IP: 10.206.0.8)

version: '3'
services:
  nacos2:
    image: nacos/nacos-server:latest
    environment:
      - MODE=cluster
      - NACOS_SERVERS=10.206.0.13:8898,10.206.0.8:8898,10.206.0.4:8898
      - SPRING_DATASOURCE_PLATFORM=mysql
      - MYSQL_SERVICE_HOST=10.206.0.7
      - MYSQL_SERVICE_DB_NAME=nacos_config
      - MYSQL_SERVICE_PORT=3396
      - MYSQL_SERVICE_USER=shtcetcmysql
      - MYSQL_SERVICE_PASSWORD=Shtcetc@2024
    ports:
      - "8898:8848"
    restart: on-failure

Machine 3 (IP: 10.206.0.4)

version: '3'
services:
  nacos3:
    image: nacos/nacos-server:latest
    environment:
      - MODE=cluster
      - NACOS_SERVERS=10.206.0.13:8898,10.206.0.8:8898,10.206.0.4:8898
      - SPRING_DATASOURCE_PLATFORM=mysql
      - MYSQL_SERVICE_HOST=10.206.0.7
      - MYSQL_SERVICE_DB_NAME=nacos_config
      - MYSQL_SERVICE_PORT=3396
      - MYSQL_SERVICE_USER=shtcetcmysql
      - MYSQL_SERVICE_PASSWORD=Shtcetc@2024
    ports:
      - "8898:8848"
    restart: on-failure

这些文件应该在各自的机器上部署和运行。请注意以下几点:

  • 每个服务都配置为参与到相同的Nacos集群中,通过NACOS_SERVERS环境变量列出了集群中所有实例的地址和端口。
  • 端口映射将容器内的8848端口(Nacos默认端口)映射到宿主机的8898端口上,以符合新的默认端口配置。请确保这不会与宿主机上的其他服务冲突。
  • 请根据实际部署情况调整MYSQL_SERVICE_HOSTMYSQL_SERVICE_DB_NAMEMYSQL_SERVICE_PORTMYSQL_SERVICE_USERMYSQL_SERVICE_PASSWORD环境变量,以确保能够成功连接到MySQL数据库。
  • restart: on-failure策略确保了在服务因为错误退出时能够自动重启。

部署前,请确认每台机器的Docker和Docker Compose都已安装且更新到最新版本,且网络配置允许这些机器相互通信。

  • 9
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

MonkeyKing.sun

对你有帮助的话,可以打赏

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值