Nacos集群搭建+数据持久化

Nacos简介

前四个字母分别为Naming和Configuration的前两个字母,最后的s为Service,一个更易于构建云原生应用的动态服务发现,配置管理和服务管理中心,Nacos:Dynamic Naming and Configuration Service,Nacos就是注册中心+配置中心的组合,等价于Nacos = Eureka+Config+Bus,可以替代Eureka做服务注册中心,替代Config做服务配置中心,NacosGitHubNacos中文文档Spring Cloud Alibaba

Nacos下载

下载Nacos
Nacos集群搭建+数据持久化
选择版本,解压安装包,直接运行bin目录下的win系统startup.cmd,linux系统sh startup.sh
访问:http://localhost:8848/nacos
Nacos集群搭建+数据持久化
默认账号密码,nacos,nacos

Nacos集群搭建+数据持久化
单机版搭建完毕!

数据持久化

简单介绍
首先Nacos默认自带的是嵌入式数据库derby,但是由于微服务情况下保证高可用的情况下,Nacos一般都是采用集群的方式部署,那么这里Nacos在设计之初就考虑到了,如果集群中每台Nacos都使用独立的数据库那么这样数据同步来同步去太费事了,那么干脆使用同一数据源,也就是MySQL,当然了现在外部数据源也只能支持MySQL,而且Nacos也提供了艰苦建表的SQL文件
Nacos集群搭建+数据持久化
将此文件中的SQL复制到MySQL中执行
Nacos集群搭建+数据持久化
配置数据持久化
找到\conf目录下找到application.properties末尾添加下面配置
Nacos集群搭建+数据持久化

spring.datasource.platform=mysql
 
db.num=1
db.url.0=jdbc:mysql://192.168.0.177:3307/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user=root
db.password=root

重启Nacos,linux,关闭:sh shutdown.sh 启动sh startup.sh -m standalone

集群配置

1.修改/conf/cluster.conf文件
Nacos集群搭建+数据持久化
将这三台Nacos组成一个集群

2.修改启动脚本/bin/startup.sh
Nacos集群搭建+数据持久化

	case $opt in
        m)
            MODE=$OPTARG;;
        f)
            FUNCTION_MODE=$OPTARG;;
        s)
            SERVER=$OPTARG;;
		p)
			PORT=$OPTARG;;
        ?)
        echo "Unknown parameter"
        exit 1;;
    esac

Nacos集群搭建+数据持久化

nohup $JAVA -Dserver.port=${PORT} ${JAVA_OPT} nacos.nacos >> ${BASE_DIR}/logs/start.out 2>&1 &

这里就是为了启动脚本的时候能够添加端口参数启动罢了!

3.启动三台Nacos

sh startup.sh -p 3333 -m standalone
sh startup.sh -p 4444-m standalone
sh startup.sh -p 5555-m standalone

Nginx代理配置
这里关于Nginx的配置不过多介绍,只演示和Nacos集群代理的配置,我这里采用Docker的方式启动,修改ngixn,conf


	upstream cluster{                                                        
 
		server 192.168.0.177:3333;
		server 192.168.0.177:4444;
		server 192.168.0.177:5555;
	}
	server {
        listen 1111;
		server_name localhost;
		location /{
			 proxy_pass http://cluster;
															
		}
    }
	//省略........
	

Docker启动Nginx

docker run -d -p 1111:1111 --name nginx1111  -v /data/nginx/www:/usr/share/nginx/html -v /data/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /data/nginx/logs:/var/log/nginx nginx

访问测试
Nacos集群搭建+数据持久化
Nacos集群搭建+数据持久化
搞定,后面代码中配置就是将原来的8848端口切换为1111即可,后续会有文章单独介绍SpringCloud整合Nacos!

上一篇:Spring Cloud Alibaba Windows环境下Nacos安装启动


下一篇:Nacos注册中心 配置启动