Nacos 概述
Nacos 分别去Naming和Configuration两个单词的前两个字母和Service的第一个字母,就是提供’注册中心’和’配置中心’等信息的一个平台。
Nacos 是阿里巴巴的新开源项目,其核心定位是 “一个更易于帮助构建云原生应用的集注册中心与配置中心于一体的管理平台”。
1、安装步骤
1.1、下载
下载地址:https://github.com/alibaba/nacos/tags
1.2、安装
代码如下(示例):
# 进入upload文件夹
cd /usr/upload
# 解压缩文件到local目录下
tar -zxvf nacos-server-1.4.1.tar.gz -C /usr/local
1.3、启动 / 关闭
# 进入nacos的bin目录下
cd /usr/local/nacos/bin
# 非集群模式启动命令
./startup.sh -m standalone
# 关闭命令
./shutdown.sh
1.4、测试
浏览器访问:http://192.168.243.129:8848/nacos
默认用户名/密码为: nacos/nacos
2、Nacos 持久化
2.1、为什么要持久化
Nacos默认有自带嵌入式数据库derby,但是如果做集群模式的话,就不能使用自己的数据库,不然每个节点一个数据库,数据就不统一了,需要使用外部的mysql。
2.2、持久化
2.2.1、切换数据库
# 修改以下文件内容
vim /usr/local/nacos/conf/application.properties
# 修改内容如下
###If use MySQL as datasource:
spring.datasource.platform=mysql
### Count of DB:
db.num=1
### Connect URL of DB:
db.url.0=jdbc:mysql://192.168.117.128:3306/nacos?characterEncoding=utf8&connectTimeout=10000&socketTimeout=30000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user.0=root
db.password.0=1111
注意:Timeout时间延长,否则可能造成连接失败!
2.2.2、建库建表
将下图中sql文件在数据库运行即可!
2.2.3、测试
重启nacos,查看是否数据写入MySQL数据库。
3、Nacos 集群搭建
3.1、相关问题
3.1.1、如何把请求平均分配?
nginx
3.1.2、为什么是3台?
投票选举leader
3.1.3、为什么要选leader?
同步数据
3.2、搭建步骤
3.2.1、Nacos 准备
- 找到conf/cluster.conf.example ,将其改名为 conf/cluster.conf ,并将内容改为如下:
# ip:port
192.168.209.129:8848
192.168.209.129:8849
192.168.209.129:8850
- 复制三份Nacos
[root@localhost bin]# cd /usr/local
[root@localhost java]# mkdir nacos_cluster
[root@localhost java]# cp -r nacos nacos_cluster/nacos_8848
[root@localhost java]# cp -r nacos nacos_cluster/nacos_8849
[root@localhost java]# cp -r nacos nacos_cluster/nacos_8850
- 将 conf/application.properties 中的端口号分别改为:
server.port=8848
server.port=8849
server.port=8850
3.2.2、Nginx 准备
3.2.2.1、安装Nginx
- 安装nginx的依赖库
yum -y install gcc pcre pcre-devel zlib zlib-devel openssl openssl-devel
- 下载nginx
wget -c https://nginx.org/download/nginx-1.12.0.tar.gz
- 解压安装包
tar -zxvf nginx-1.12.0.tar.gz
- 配置nginx安装包
cd nginx-1.12.0
./configure --prefix=/usr/local/nginx
注意:./configure配置nginx安装到/usr/local/nginx目录下
编译并安装
make && make install
3.2.2.2、配置Nginx代理Nacos
upstream nacos {
server 192.168.209.129:8848;
server 192.168.209.129:8849;
server 192.168.209.129:8850;
}
server {
listen 80;
server_name localhost;
location / {
proxy_pass http://nacos;
}
}
3.3、测试
- 修改虚拟机的内存为3G(至少),重启
- 关闭单机Nacos,启动nacos集群,启动Nginx
# 关闭单机Nacos
cd /usr/local/nacos/bin
./shutdown.sh
# 启动Nacos集群
cd /usr/local/nacos-cluster/nacos-8848/bin
./startup.sh
cd /usr/local/nacos-cluster/nacos-8849/bin
./startup.sh
cd /usr/local/nacos-cluster/nacos-8850/bin
./startup.sh
# 启动Nginx
cd /usr/local/nginx/sbin
./nginx
- 测试
是否选举leader、数据是否同步
4、Nacos 开机自启
4.1、添加开机自启文件
vim /lib/systemd/system/nacos.service
[Unit]
Description=nacos
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/nacos/bin/startup.sh -m standalone
ExecReload=/usr/local/nacos/bin/shutdown.sh
ExecStop=/usr/local/nacos/bin/shutdown.sh
PrivateTmp=true
[Install]
WantedBy=multi-user.target
4.2、修改Nacos的startup.sh
- 修改JAVA_HOME路径并注销之后的3行配置,如下:
[ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=/usr/local/jdk1.8.0_191
#[ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=/usr/java
#[ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=/opt/taobao/java
#[ ! -e "$JAVA_HOME/bin/java" ] && unset JAVA_HOME
文章来源:https://www.toymoban.com/news/detail-446820.html
4.3、设置开机执行nacos.service文件
# 重新加载服务配置
systemctl daemon-reload
# 设置为开机启动
systemctl enable nacos.service
# 启动nacos服务
systemctl start nacos.service
# 停止nacos服务
systemctl stop nacos.service
# 查看nacos服务的状态
systemctl status nacos.service
总结
配置过程中可能会出现各种各样的问题,不要担心,互联网会帮你解决!
加油!!!文章来源地址https://www.toymoban.com/news/detail-446820.html
到了这里,关于Nacos 配置详解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!