Nacos 是阿里巴巴的新开源项目,其核心定位是 “一个更易于帮助构建云原生应用的动态服务发现、配置和服务管理平台”,它支持几乎所有主流类型的“服务”的发现、配置和管理。架构图如下:
官方文档:
从nacos官网 https://github.com/alibaba/nacos/releases 下载安装包,最新正式版:nacos-server-2.0.3.tar.gz,直接解压就可以了
wget https://github.com/alibaba/nacos/releases/download/2.0.3/nacos-server-2.0.3.tar.gz解压:
tar -zxvf nacos-server-2.0.3.tar.gz启动:
cd /nacos/bin sh startup.sh -m standalone配置:
可以自定义账号密码,并将账号密码存储进我们自己的数据库,需要修改/nacos/conf/application.properties文件,nacos默认使用的数据库为内嵌的cmdb
创建mysql数据库nacos,并设置字符集utf8
执行/nacos/conf/nacos-mysql.sql中的语句,创建表,并插入数据:
修改/nacos/conf/application.properties文件,如下:
spring.datasource.platform=mysql db.num=1 db.url.0=jdbc:mysql://localhost:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true db.user=root db.password=123456修改单机模式:
如果不是部署nacos集群,则将模式修改为单机模式
打开bin/startup.cmd 文件,将MODE从cluster改为 standalone,如下:
然后根据提示去查看是否启动成功在logs下的start.out
如果启动成功但是访问失败:
查看防火墙状态 systemctl status firewalld
开启防火墙 systemctl start firewalld
关闭防火墙 systemctl stop firewalld
开启防火墙 service firewalld start
禁止开机启动防火墙 systemctl disable firewalld.service
先用:systemctl unmask firewalld.service
然后:systemctl start firewalld.service
查询已经对外开放的端口
netstat -anp
查询指定端口是否已经开放
firewall-cmd --query-port=8848/tcp
返回yes/no。此时也有可能返回firewalld is not running,此时需要打开防火墙再开放端口。
添加指定需要开放的端口:
firewall-cmd --add-port=8848/tcp --permanent
重载入添加的端口:
firewall-cmd --reload
查询指定端口是否开启成功:
firewall-cmd --query-port=8848/tcp
如果需要停止Nacos服务端,可以执行如下命令:
sh shutdown.sh三、群集部署 四、访问Nacos UI界面
1.输入默认账号密码,看是否可以正常登录
2.这个配置管理项便是nacos的注册中心服务端了,下面还有一个服务管理,是nacos注册中心 图形化界面的服务端。
3.修改账号密码,在数据库中,找到users表,即用户表,就可以修改其中的账号和密码
4.创建密码,nacos的密码是使用 org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder 加密的,所以需要我们手动创建一个加密工具类,来生成我们自己的密码,将密码写进users表中,重启nacos。
org.springframework.boot spring-boot-starter-security 2.1.4.RELEASE
public class App {
public static void main(String[] args) {
String pwd = new BCryptPasswordEncoder().encode("123456");
System.out.println(pwd);
}
}
五、配置Nginx


