Nacos.2.2.3集群安装-docker模式
1. 说明
版本信息:2.2.3
nacos 的集群需要 3 台机器,假定机器上 Docker 环境已安装
IP 分别为 192.168.50.9、192.168.50.18、192.168.50.245,最终部署图如下:

2. Nacos 集群安装
2.1. 初始化 Nacos 数据库
将 Nacos 提供的数据库脚本 mysql-schema.sql 找任意数据库进行导入。
2.2. 启动集群
根据实际部署,调整 NACOS_SERVERS 配置,以及连接的 MySQL配置,使用的网络模式是 host,这样 Nacos 之间通讯就解决了。 3 台机器分别执行如下命令:
docker run -d
-v /home/nacos/logs:/home/nacos/logs
-v /etc/hosts:/etc/hosts
-e MODE=cluster
-e NACOS_SERVERS="192.168.50.9:8848 192.168.50.18:8848 192.168.50.245:8848"
-e SPRING_DATASOURCE_PLATFORM=mysql
-e NACOS_AUTH_ENABLE=true
-e NACOS_AUTH_IDENTITY_KEY=linxxx
-e NACOS_AUTH_IDENTITY_VALUE=linxxx
-e NACOS_AUTH_TOKEN=linxxxlinxxxlinxxxlinxxxlinxxxlinxxxlinxxxlinxxxlinxxxlinxxx
-e MYSQL_SERVICE_HOST=192.168.50.123
-e MYSQL_SERVICE_PORT=23306
-e MYSQL_SERVICE_DB_NAME=nacos_config
-e MYSQL_SERVICE_USER=root
-e MYSQL_SERVICE_PASSWORD=3er4#ER$
--restart unless-stopped --net=host --name nacos-cluster nacos/nacos-server:v2.2.3
2.3. 验证
需要 3 台同时启动,等待集群通讯完成后可以使用如下命令查看日志
docker logs nacos-cluster

2.4. Nginx 的配置
由于是 tcp 的连接,所以需要 stream 模块。
stream {
upstream nacos-cluster {
server 192.168.50.9:9848;
server 192.168.50.18:9848;
server 192.168.50.245:9848;
}
server{
listen 8800;
proxy_connect_timeout 20s;
proxy_timeout 5m;
proxy_pass nacos-cluster;
}
}
server {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
listen 7800;
upstream nacosserver {
server 192.168.50.9:8848;
server 192.168.50.18:8848;
server 192.168.50.245:8848;
}
location /nacos/ {
proxy_pass http://nacosserver/nacos/;
}
}
配置文件说明,对于 8800 端口的 Tcp 监听是由于有客户端使用 grpc 跟 nacos 进行连接,由于这边 http 监听的是 7800 端口,根据 Nacos 的+1000 原则所以是配置了 8800。
3. 最后说明
对于 2.2.3 的 nacos 连接,客户端需要在连接时候指定账密了,否则会出现连接失败的。

© 版权声明
文章版权归作者所有,未经允许请勿转载。
相关文章
暂无评论...


