持久化
在nacos目录下的conf里面,有一个nacos-mysql.sql文件,在mysql上的数据库执行,会在mysql数据库中生成nacos相关的表。
在nacos/conf下,有一个application.properties文件,在文件末尾配置数据库的连接信息
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user=root
db.password=123456
这样就完成了linux上的持久化操作,后续操作数据会全部存到mysql上,完成持久化。
集群部署
将conf里面的cluster.conf.example文件复制出来,命名为cluster.conf,在里面加上ip和端口,这里的ip和端口就是集群化的各个入口
编辑Nacos的启动脚本startup.sh,使它能够接受不同的启动端口
将上面的原配置修改为下面的新配置
while getopts ":m:f:s:" opt
do
case $opt in
m)
MODE=$OPTARG;;
f)
FUNCTION_MODE=$OPTARG;;
s)
SERVER=$OPTARG;;
?)
echo "Unknown parameter"
exit 1;;
esac
done
###################################
while getopts ":m:f:s:P:" opt
do
case $opt in
m)
MODE=$OPTARG;;
f)
FUNCTION_MODE=$OPTARG;;
s)
SERVER=$OPTARG;;
s)
PORT=$OPTARG;;
?)
echo "Unknown parameter"
exit 1;;
esac
done
#start
echo "$JAVA ${JAVA_OPT}" > ${BASE_DIR}/logs/start.out 2>&1 &
nohup $JAVA ${JAVA_OPT} nacos.nacos >> ${BASE_DIR}/logs/start.out 2>&1 &
############################################################################
# start
echo "$JAVA ${JAVA_OPT}" > ${BASE_DIR}/logs/start.out 2>&1 &
nohup $JAVA -Dserver.port=${PORT} ${JAVA_OPT} nacos.nacos >> ${BASE_DIR}/logs/start.out 2>&1 &
在执行的时候,需要在命令后面加上端口
./startup.sh -p 3333
到这里就可以执行nacos的启动命令了,开启nacos集群
然后需要用Nginx做负载均衡
修改Nginx的配置文件nginx.conf
upstream cluster{
server 127.0.0.1:3333;
server 127.0.0.1:4444;
server 127.0.0.1:5555;
}
server {
listen 1111;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
#root html;
#index index.html index.htm;
proxy_pass http://cluster;
}
然后启动
./nginx -c /usr/local/nginx/conf/nginx.conf
截止到此处,1个Nginx+3个nacos注册中心+1个mysql成功配置。