nacos 看这篇就够了(初探、爬坑、启动样例、单机模式)

1 环境及材料

官网:https://nacos.io/zh-cn/
JDK 1.8+
请用这个软件包
下载安装包链接:https://pan.baidu.com/s/1IqX0P0DCFp0S1Cwn5japeA 提取码:xk3z

2 启动前

1 放置对应项目后进入conf目录执行nacos-mysql.sql初始化文件
2 修改application.properties文件的数据库连接

3 服务启动

进入bin目录执行:sh startup.sh -m standalone &
-m standalone 单机模式
&后台运行

遇坑一 这个问题会导致项目连接失败
单机模式但是报错了,运行内存也是2g,单机模式应该是512M
startup.sh: 78: startup.sh: [[: not found
nacos 看这篇就够了(初探、爬坑、启动样例、单机模式)_第1张图片
链接:https://pan.baidu.com/s/12aAFBaJLYXgZDC5JKdjPyQ 提取码:iy8s
下载已修改好的startup.sh文件替换当前文件
再次运行如图
nacos 看这篇就够了(初探、爬坑、启动样例、单机模式)_第2张图片

浏览器访问localhost:8848
账号/密码 nacos/nacos
nacos 看这篇就够了(初探、爬坑、启动样例、单机模式)_第3张图片

下载官网的git样例项目
git clone https://github.com/nacos-group/nacos-examples.git

基本按照样例项目配置参数然后运行
动态修改配置就不介绍了
主要有有坑的点是nacos-spring-cloud-discovery-example
spring.cloud.nacos.discovery.server-addr=localhost:8848
nacos 看这篇就够了(初探、爬坑、启动样例、单机模式)_第4张图片
nacos 看这篇就够了(初探、爬坑、启动样例、单机模式)_第5张图片
项目正式监听和请求成功

遇坑二,在服务端启动时候如果不是单机模式会导致项目也无法连接,前面有替换startup.sh文件所以就不会遇到,这个问题原因就是单机模式启动失败

java.lang.IllegalStateException: failed to req API:/nacos/v1/ns/instance after all servers([127.0.0.1:8848]) tried
	at com.alibaba.nacos.client.naming.net.NamingProxy.reqAPI(NamingProxy.java:335) ~[nacos-client-0.6.2.jar:na]
	at com.alibaba.nacos.client.naming.net.NamingProxy.reqAPI(NamingProxy.java:267) ~[nacos-client-0.6.2.jar:na]
	at com.alibaba.nacos.client.naming.net.NamingProxy.registerService(NamingProxy.java:167) ~[nacos-client-0.6.2.jar:na]
	at com.alibaba.nacos.client.naming.NacosNamingService.registerInstance(NacosNamingService.java:170) ~[nacos-client-0.6.2.jar:na]

服务端/log/naming-raft.log

2019-06-04 08:19:30,003 WARN [IS LEADER] no leader is available now!

服务端/log/nacos.log

2019-06-04 08:20:45,001 ERROR Unexpected error occurred in scheduled task.
java.lang.IllegalStateException: unable to find local peer: 127.0.0.1:8848, all peers: [127.0.0.1:8848]
	at com.alibaba.nacos.naming.consistency.persistent.raft.RaftPeerSet.local(RaftPeerSet.java:211)
	at com.alibaba.nacos.naming.monitor.PerformanceLoggerThread.collectmetrics(PerformanceLoggerThread.java:123)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.springframework.scheduling.support.ScheduledMethodRunnable.run(ScheduledMethodRunnable.java:84)
	at org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:54)

你可能感兴趣的:(企业级服务架构,Java,linux)