docker nacos 集群部署
1.準備機器3台(由於宿主機8848埠佔用,所以nacos埠使用8748)
192.168.101.14
192.168.101.15
192.168.101.16
2.初始化sql(如果我們要搭建集群的話,那麼肯定是不能用內嵌的資料庫,不然數據無法共享。集群搭建的時候我們需要將Nacos對接Mysql進行數據存儲)
sql腳本入口: //github.com/alibaba/nacos/blob/master/distribution/conf/nacos-mysql.sql
3.提前創建Nacos的宿主機工作目錄
// 每個節點都創建
mkdir -p /home/nacos-server
mkdir -p /home/nacos-server/env
mkdir -p /home/nacos-server/logs
mkdir -p /home/nacos-server/init.d
調整custom.properties
vim /home/nacos-server/init.d/custom.properties
// 添加以下配置
#spring.security.enabled=false
#management.security=false
#security.basic.enabled=false
#nacos.security.ignore.urls=/**
#management.metrics.export.elastic.host=//localhost:9200
#metrics for prometheus management.endpoints.web.exposure.include=*
#metrics for elastic search #management.metrics.export.elastic.enabled=false
#management.metrics.export.elastic.host=//localhost:9200
#metrics for influx #management.metrics.export.influx.enabled=false
#management.metrics.export.influx.db=springboot
#management.metrics.export.influx.uri=//localhost:8086 #management.metrics.export.influx.auto-create-db=true
#management.metrics.export.influx.consistency=one #management.metrics.export.influx.compressed=true
調整nacos-hostname.env
vim /home/nacos-server/env/nacos-hostname.env
#nacos dev env
# 首選主機模式 #
PREFER_HOST_MODE=hostname
# 當前主機的IP #
NACOS_SERVER_IP=192.168.101.14
# 集群的各個節點
NACOS_SERVERS=192.168.101.14:8748 192.168.101.15:8748 192.168.101.16:8748
# 資料庫的配置
MYSQL_SERVICE_HOST=192.168.101.20
MYSQL_SERVICE_DB_NAME=zg_nacos
MYSQL_SERVICE_PORT=3306
MYSQL_SERVICE_USER=root
MYSQL_SERVICE_PASSWORD=root@800
# 從節點 這裡就使用單節點,因此就不配置從節點
#MYSQL_SLAVE_SERVICE_HOST=xxx
#MYSQL_SLAVE_SERVICE_PORT=3306
# JVM參數 默認是2G 如果使用虛擬機,記憶體沒有2G,就需要調整這裡的參數,否則將無法啟動
# JVM_XMS=256m
# JVM_XMX=256m
# JVM_XMN=256m
4.將配置文件拷貝到其他兩台機器
scp -r /home/nacos-server/env/nacos-hostname.env [email protected]:/home/nacos-server/env/nacos-hostname.env
scp -r /home/nacos-server/init.d/custom.properties [email protected]:/home/nacos-server/init.d/custom.properties
scp -r /home/nacos-server/env/nacos-hostname.env
[email protected]:/home/nacos-server/env/nacos-hostname.env
scp -r /home/nacos-server/init.d/custom.properties [email protected]:/home/nacos-server/init.d/custom.properties
5.docker啟動(3個節點)
docker run -p 8748:8848 –restart=always –name nacos-node –env-file=/home/nacos-server/env/nacos-hostname.env -v /home/nacos-server/logs:/home/nacos/logs -v /home/nacos-server/init.d/custom.properties:/home/nacos/init.d/custom.properties -d nacos/nacos-server
測試
訪問任意節點的8748埠; 如: 192.168.101.14:8748/nacos 默認用戶名和密碼為: nacos/nacos