- 前言
- 环境准备
- 介绍
- 部署模式
- 单机模式部署
- 源码
- 发行包
- 注意点:
Nacos是Alibaba提供的服务的注册中心,它除了提供服务的注册发现之外,还支持动态配置服务等服务。并且拥有生态社区活跃,与SpringCloud Alibaba,开源免费等特点,备受开发者的青睐。
环境:CentOS 7
Nacos版本:2.0.3
Nacos提供四个主要功能:
- 服务注册和发现:
当服务用@EnableDiscoveryClient注解后,在服务启动时,会将服务注册到Nacos,在我们调用服务的时候,可以从Nacos去获取服务的地址。实现服务的注册和发现。 - 动态配置管理:
日新月异的业务需求,使得我们难免会遇到服务启动时更新配置的情况。为了解决这个问题,Nacos提供了在服务运行时可更新配置文件,这使得配置更加灵活和敏捷。 - 动态DNS服务:
Nacos提供多种负载均衡策略,流控,DNS解析服务,灵活的路由策略等。他可以轻松帮我们实现基于DNS的服务发现。 - 服务和元数据管理
Nacos提供的服务仪表板,可以轻松有效的帮我们管理服务元数据,服务运行信息和各项指标分析数据。
更多介绍请移驾官网:https://nacos.io/zh-cn/docs/what-is-nacos.html
部署模式Nacos的部署模式有:
- 单机模式 :用于测试,单机试用。
- 集群模式 : 用于生产环境,集群模式可以确保高可用。
- 多集群模式 : 用于数据中心等数据量极大的场景。
单机模式部署不需要用到Msql,部署简单,成本最低。但是安全性也相对较低。可以通过源码和发行包两种方式获取
源码git clone https://github.com/alibaba/nacos.git cd nacos/ mvn -Prelease-nacos -Dmaven.test.skip=true clean install -U ls -al distribution/target/ // change the $version to your actual path cd distribution/target/nacos-server-$version/nacos/bin发行包
1.下载Nacos发行包:我们可以直接去官网下载对应的安装包,或者用wget直接下载。
wget https://github.com/alibaba/nacos/releases/download/2.0.3/nacos-server-2.0.3.zip
2.解压Nacos发行包:
unzip nacos-server-$version.zip 或者 tar -xvf nacos-server-$version.tar.gz cd nacos/bin
3.启动Nacos:
sh startup.sh -m standalone
4.查看本机网卡:
ifconfig
5.访问Nacos:
网址:ip:8848/nacos
账号:nacos
密码:nacos
问题1: 本文nacos 是在虚拟机安装的,虚拟机里的浏览器能访问,但是脱离虚拟机,到外部服务器就不能访问,请在虚拟机里执行如下命令即可。
iptables -I INPUT -p tcp --dport 8848 -j ACCEPT
问题2: nacos与JDK11不兼容,所以启动会报错找不到主类,这种情况可以降低jdk版本到1.8或者修改nacos启动类
Under nacos/bin/startup.sh JAVA_ OPT_ EXT_ FIX configuration will cause JDK11 error please replace nacos/bin/startup.sh x JAVA_ OPT_ EXT_ FIX="-Djava.ext.dirs=${JAVA_ HOME}/jre/lib/ext:${JAVA_ HOME}/lib/ext" √ JAVA_ OPT="${JAVA_ OPT} -Djava.ext.dirs=${JAVA_ HOME}/jre/lib/ext:${JAVA_ HOME}/lib/ext" x echo "$JAVA $JAVA_ OPT_ EXT_ FIX ${JAVA_ OPT}" √ echo "$JAVA ${JAVA_ OPT}" x echo "$JAVA $JAVA_ OPT_ EXT_ FIX ${JAVA_ OPT}" > ${base_ DIR}/logs/start.out 2>&1 & x nohup "$JAVA" "$JAVA_ OPT_ EXT_ FIX" ${JAVA_ OPT} nacos.nacos >> ${base_ DIR}/logs/start.out 2>&1 & √ echo "$JAVA ${JAVA_ OPT}" > ${base_ DIR}/logs/start.out 2>&1 & √ nohup $JAVA ${JAVA_ OPT} nacos.nacos >> ${base_ DIR}/logs/start.out 2>&1 &
问题3: 如何设置nacos服务自启动?
第一步:编写Nacos服务脚本:
vim /lib/systemd/system/nacos.service
第二步:
[Unit] Description=nacos After=network.target [Service] Type=forking #改成自己的jdk路径,因为服务脚本的环境和系统环境变量不能共享,所以还得设置才能生效。 Environment="JAVA_HOME=/opt/local/java/jdk-11.0.12" # nacos启动停止路径 ExecStart=/opt/local/nacos/bin/startup.sh -m standalone #standalone 是单机,默认是集群cluster ExecReload=/opt/local/nacos/bin/shutdown.sh ExecStop=/opt/local/nacos/bin/shutdown.sh PrivateTmp=true [Install] WantedBy=multi-user.target
第三步:
#重新加载服务 systemctl daemon-reload #启用服务 systemctl enable nacos.service #启动服务 systemctl start nacos.service
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)