1、下载nacos
http://t.csdn.cn/ejfu9
2、配置Nacos
进入nacos的conf目录,修改配置文件cluster.conf.example,重命名为cluster.conf:
然后添加内容:
添加的内容是你要启动的多台nacos的IP和端口
127.0.0.1:8845
127.0.0.1:8846
127.0.0.1:8847
然后修改application.properties文件,添加数据库配置
spring.datasource.platform=mysql #指定数据库类型
db.num=1 #声明数据库的数量,如果是集群有几个写几个
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user.0=root
db.password.0=root
如果机器上有多个IP,可以指定使用哪一个IP:
nacos.inetutils.ip-address=127.0.0.1 #一定用此ip,防止各种异常
3、启动nacos
建议查看nacos的端口号,防止冲突:
修改文件夹中的application.properties
server.port=8845
改nacos堆内存,防止占用内存过多 ( bin/startup.cmd ):(改不改都可)
NACOS_JVM_OPTS=-server -Xms2g -Xmx2g -Xmn1g
分别启动三个nacos节点:
startup.cmd
注:nacos集群启动异常的主要解决方法:
ip问题导致
观察nacos启动日志: Console: http://127.0.0.1:8845/nacos/index.html (日志中显示的ip就是nacos所用ip,采用日志中显示的ip)
jvm版本导致
jdk8+
64位
要确保JAVA_HOME 指向的jdk,是64位的(机器上安装了2个jdk时,需要注意)
mysql是否正常
jdbc:mysql://localhost:3306/nacos
确认mysql服务是否正常、能否登录
4、配置nginx反向代理
修改conf/nginx.conf文件,配置如下
#user nobody;
worker_processes 1;
error_log logs/error.log;
pid logs/nginx.pid;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
#gzip on;
# 配置nacos的集群
upstream nacos-cluster {
server 127.0.0.1:8845;
server 127.0.0.1:8846;
server 127.0.0.1:8847;
}
server {
listen 80;
server_name localhost;
# 负载均衡
location /nacos {
proxy_pass http://nacos-cluster;
}
}
}
nginx命令参考:
start nginx.exe //启动nginx
nginx.exe -s reload //重启nginx (用于:改完配置后的重启)
nginx.exe -s stop //停止nginx
taskkill /f /t /im nginx.exe //如果不是通过start方式启动的nginx,可用此命令彻底停止nginx
代码中application.yml文件配置如下:
spring:
cloud:
nacos:
server-addr: localhost:80 # Nacos地址