Nacos安装
安装环境: centos7
官网地址
发行包下载地址
这里选择下载tar包 nacos-server-1.2.1.tar.gz
Nacos部署
nacos占用8848端口,所以要确保开放8848端口
单机部署
- 创建存放入径
mkdir /home/software
- 上传包至/home/software并解压
tar -zxvf nacos-server-1.2.1.tar.gz
- 进入目录 cd nacos/bin并执行
sh startup.sh -m standalone
standalone代表着单机模式运行,非集群模式
集群部署
- 准备三台服务器(P1、P2、P3),分别完成nacos的上传和解压操作
P1: 192.168.0.101
P2:192.168.0.102
P2:192.168.0.103
- 在P1在创建数据库nacos_config
注:确保P1已安装Mysql(版本5.7以上),并且P2和P3可访问P1的数据库
CREATE DATABASE IF NOT EXISTS nacos_config DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
- 将/home/software/nacos/conf 下的sql导入数据库中
mysql -uroot -p nacos_config < /home/software/nacos/conf/nacos-mysql.sql
- 通过拷贝创建集群配置文件
cp cluster.conf.example cluster.conf
- 配置cluster.conf文件,写入内容
192.168.0.101:8848
192.168.0.102:8848
192.168.0.103:8848
- 在application.properties配置数据库
#*************** Config Module Related Configurations ***************#
### If user MySQL as datasource:
spring.datasource.platform=mysql
### Count of DB:
db.num=1
### Connect URL of DB:
db.url.0=jdbc:mysql://192.168.0.100:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user=root
db.password=123456
#*************** Naming Module Related Configurations ***************#
- P2和P3同样完成步骤4、5、6
- 分别给P1、P2、P3三台服务器的nginx添加配置
upstream nacosserver {
server 192.168.0.101:8848;
server 192.168.0.102:8848;
server 192.168.0.103:8848;
}
location /nacos {
proxy_pass http://nacosserver;
}
- 依次启动nacos
sh startup.sh
- 访部管理后台
http://192.168.0.101/nacos
初始账号和密码均为:nacos
异常情况
- 创建nacos_config数据库的P1启动nacos正常,其他主机nacos启动失败。
可能是P2和P3无法远程连接P1的数据库,导致启动失败 - nacos默认用的是主机第一张网卡的IP,当有多张网卡并第一张网卡的IP不是你集群配置的IP时,需要在启动时把集群配置的IP指定为注册IP。指定IP可以通过修改启动脚本来实现。脚本路径:/home/software/nacos/bin/startup.sh
# 设置本机ip地址
JAVA_OPT="${JAVA_OPT} -Dnacos.server.ip=192.169.0.101"
spring boot使用nacos
- yml文件配置
spring:
application:
# 在nacos注册的服务名称
name: spring-boot-nacos-consumer
cloud:
nacos:
discovery:
server-addr: 192.168.0.101:8848,192.168.0.102:8848,192.168.0.103:8848
ps:第一次写文章,花了些时间,内容有不当之处,望指正。