文章目录
1.Nacos集群和持久化
Nacos默认有自带嵌入式数据库derby,但是如果做集群模式的话,就不能使用自己的数据库不然每个节点一个数据库,那么数据就不统一了,需要使用外部的mysql
2.持久化
2.1.切换数据库
修改conf/application.properties文件,增加支持mysql数据源配置(目前只支持mysql,版本要求:5.6.5+)
### If use MySQL as datasource:
spring.datasource.platform=mysql
### Count of DB:
db.num=1
### Connect URL of DB:
db.url.0=jdbc:mysql://192.168.126.129:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user.0=root
db.password.0=1111
2.2.初始化数据库
创建nacos数据库并导入sql
2.3.测试
重启nacos测试nacos所有写到嵌入式数据库的数据是否都写到了mysql:
3.集群
3.1.部署架构图
3.2.节点规划
节点 | 端口 |
---|---|
192.168.204.156 | 8848 |
192.168.204.156 | 8849 |
192.168.204.156 | 8850 |
3.3.集群搭建
- 找到conf/cluster.conf.example ,将其改名为 conf/cluster.conf ,并将内容改为如下:
# ip:port
192.168.209.129:8848
192.168.209.129:8849
192.168.209.129:8850
- 复制三份Nacos
[root@localhost bin]# cd /usr/local
[root@localhost java]# mkdir nacos_cluster
[root@localhost java]# cp -r nacos nacos_cluster/nacos_8848
[root@localhost java]# cp -r nacos nacos_cluster/nacos_8849
[root@localhost java]# cp -r nacos nacos_cluster/nacos_8850
- 将
conf/application.properties
中的端口号分别改为:
server.port=8848
server.port=8849
server.port=8850
4.配置代理服务
4.1.安装nginx
- 安装nginx的依赖库
yum -y install gcc pcre pcre-devel zlib zlib-devel openssl openssl-devel
- 下载nginx
wget -c https://nginx.org/download/nginx-1.12.0.tar.gz
- 解压安装包
tar -zxvf nginx-1.12.0.tar.gz
配置nginx安装包
cd nginx-1.12.0
./configure --prefix=/usr/local/nginx
注意:./configure配置nginx安装到/usr/java/nginx目录下
- 编译并安装
make && make install
4.2.配置nginx代理nacos
upstream nacosList {
server 192.168.209.129:8848;
server 192.168.209.129:8849;
server 192.168.209.129:8850;
}
server {
listen 80;
server_name localhost;
location / {
proxy_pass http://nacosList ;
}
}