安装前必要准备
准备Java环境 ,8以上的版本,mysql(集群相关信息),nginx(进行代理)
安装Nacos
首先我们要有一个nacos的包,我们可以在线下载,也可以提前下载好,上传到服务器上
在线下载:
wget https://github.com/alibaba/nacos/releases/download/2.2.3/nacos-server-2.2.3.tar.gz
这里我们提前准备好了,如果想要我的这一版的可以评论留言,我发给你。
创建nacos 文件夹,上传到这里,在这里面解压文件
tar -xvf nacos-server-2.2.3.tar.gz
目录结构
- bin目录下是启动停止程序
- conf目录下是配置相关文件
- logs目录下是启动后日志相关
启动nacos
下面的两种方式都可以启动nacos
# 命令1
sh /home/nacos/nacos/bin/startup.sh
# 命令2
cd /home/nacos/nacos/bin
./startup.sh
下面就是启动成功了
单机模式与集群模式(standalone与cluster)
有三种部署模式
- 单机模式 - 用于测试和单机试用。
- 集群模式 - 用于生产环境,确保高可用。
- 多集群模式 - 用于多数据中心场景。
单机模式
进入配置文件将 cluster改为standalone,或者在启动的时候 后面加上 standalone
# 进入bin目录
cd /home/nacos/nacos/bin
# 修改文件
vim startup.sh
然后启动就是 单机模式了
集群模式
nginx的安装方式
把nacos准备的sql文件下载下来,然后去数据库中跑起来
applicaiton.properties配置
先备份一下,防止玩崩
cp application.properties application.properties.init
打开application.properties配置,在最后一行添加如下代码,注意数据库地址,用户名,密码要更换成自己的。
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user.0=root
db.password.0=123456
nacos的集群配置cluster.conf
先备份然后再配置
cp cluster.conf.example cluster.conf.example.bak
然后查找自己的主机名称
hostname -I 以第一个为主
修改集群配置
vim cluster.conf
伪造三个集群
编辑nacos启动脚本startup.sh 使它能够接受不同的启动端口
vim startup.sh
修改前:
修改后:
最后,在倒数第二行的$JAVA 后面加上
-Dserver.port=${PORT}
启动集群
./startup.sh -p 3333
./startup.sh -p 4444
./startup.sh -p 5555
Nginx配置
nginx的安装
修改nginx.conf
修改前 修改后
最后一步,在#gzip on 的正下方添加如下代码:
upstream cluster{server 127.0.0.1:3333;server 127.0.0.1:4444;server 127.0.0.1:5555;}
启动集群
./startup.sh -p 3333
./startup.sh -p 4444
./startup.sh -p 5555
查看启动了多少集群
ps -ef|grep nacos|grep -v grep |wc -l
进入nginx 的的sbin文件 ,执行下面的代码
./nginx -c /usr/local/nginx/conf/nginx.conf
ps -ef|grep nginx
访问地址 : http://IP:1111/nacos
nginx开启鉴权
在applicaiont配置文件中,我们要加入或放开以下配置
nacos.core.auth.system.type=nacos #开启用户验证开关 默认为false,本次需改为true nacos.core.auth.enabled=true
nacos.core.auth.caching.enabled=true
nacos.core.auth.enable.userAgentAuthWhite=false #设置用户验证标识
nacos.core.auth.server.identity.key=example
nacos.core.auth.server.identity.value=example
nacos.core.auth.plugin.nacos.token.cache.enable=false
nacos.core.auth.plugin.nacos.token.expire.seconds=18000 #设置加密key
nacos.core.auth.plugin.nacos.token.secret.key=VGhpc0lzTXlDdXN0b21TZWNyZXRLZXkwMTIzNDU2Nzg=#这些放在最后
spring.datasource.plateform=mysql db.num=1 db.url.0=jdbc:mysql://XXXX:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autooReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTCdb.user.0=root db.password.0=123456 db.pool.config.connectionTimeout=30000 db.pool.config.validationTimeout=10000 db.pool.config.maximumPoolSize=20 db.pool.config.minimumIdle=2
想要这版例子可以去我的主页-资源去下载
参考文档 :在linux上安装nacos【非常详细】_linux 安装nacos-CSDN博客