Nacos 配置详解

文章目录

  • Nacos 概述
  • 1、安装步骤
    • 1.1、下载
    • 1.2、安装
    • 1.3、启动 / 关闭
    • 1.4、测试
  • 2、Nacos 持久化
    • 2.1、为什么要持久化
    • 2.2、持久化
      • 2.2.1、切换数据库
      • 2.2.2、建库建表
      • 2.2.3、测试
  • 3、Nacos 集群搭建
    • 3.1、相关问题
      • 3.1.1、如何把请求平均分配?
      • 3.1.2、为什么是3台?
      • 3.1.3、为什么要选leader?
    • 3.2、搭建步骤
      • 3.2.1、Nacos 准备
      • 3.2.2、Nginx 准备
        • 3.2.2.1、安装Nginx
        • 3.2.2.2、配置Nginx代理Nacos
    • 3.3、测试
  • 4、Nacos 开机自启
    • 4.1、添加开机自启文件
    • 4.2、修改Nacos的startup.sh
    • 4.3、设置开机执行nacos.service文件
  • 总结

Nacos 概述

Nacos 分别去Naming和Configuration两个单词的前两个字母和Service的第一个字母,就是提供’注册中心’和’配置中心’等信息的一个平台。
Nacos 是阿里巴巴的新开源项目,其核心定位是 “一个更易于帮助构建云原生应用的集注册中心与配置中心于一体的管理平台”。

1、安装步骤

1.1、下载

下载地址:https://github.com/alibaba/nacos/tags
Nacos 配置详解_第1张图片

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
Nacos 配置详解_第2张图片

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文件在数据库运行即可!
Nacos 配置详解_第3张图片

2.2.3、测试

重启nacos,查看是否数据写入MySQL数据库。
Nacos 配置详解_第4张图片

3、Nacos 集群搭建

3.1、相关问题

3.1.1、如何把请求平均分配?

nginx

3.1.2、为什么是3台?

投票选举leader

3.1.3、为什么要选leader?

同步数据
Nacos 配置详解_第5张图片

3.2、搭建步骤

3.2.1、Nacos 准备

  1. 找到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 配置详解_第6张图片

  1. 复制三份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

Nacos 配置详解_第7张图片

  1. 将 conf/application.properties 中的端口号分别改为:
server.port=8848
server.port=8849
server.port=8850

Nacos 配置详解_第8张图片

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;
  }
}

Nacos 配置详解_第9张图片

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

Nacos 配置详解_第10张图片

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

Nacos 配置详解_第11张图片

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   

总结

配置过程中可能会出现各种各样的问题,不要担心,互联网会帮你解决!
加油!!!

你可能感兴趣的:(软件安装,spring,cloud)