CentOS7安装部署Nacos

文章目录

  • CentOS7安装部署Nacos
  • 一、前言
    • 1.简介
    • 2.环境
  • 二、正文
    • 1.部署服务器
    • 2.基础环境
      • 1)主机名
      • 2)Hosts文件
      • 3)关闭防火墙
      • 4)JDK 安装部署
      • 5)MySQL 安装部署
    • 3.外置数据源
      • 1)下载软件包
      • 2)导入数据
    • 4.单机部署
      • 1)下载软件包
      • 2)修改配置文件
      • 3)单机启动
      • 4)自启动
    • 5.集群部署
      • 1)下载软件包
      • 2)修改配置文件
        • (1)application.properties
        • (2)cluster.conf
      • 3)拷贝Nacos
      • 4)集群启动
      • 5)自启动
      • 6)进阶部署
    • 三、其它
    • 1.常用命令

CentOS7安装部署Nacos

一、前言

1.简介

一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台

2.环境

  • Linux 发行版:CentOS-7-x86_64-DVD-1804.iso
  • JDK 版本:Java SE Development Kit 11.0.19
  • MySQL 版本:mysql80-community-release-el7-9
  • Nacos 版本:2.2.3

Nacos 官网:https://nacos.io/zh-cn/index.html

Nacos - github:https://github.com/alibaba/nacos/tags

Nacos 鉴权:https://nacos.io/zh-cn/docs/v2/guide/user/auth.html

Nacos 多数据源插件:https://nacos.io/zh-cn/docs/v2/plugin/datasource-plugin.html

Nacos 集群部署说明 :https://nacos.io/zh-cn/docs/v2/guide/admin/cluster-mode-quick-start.html

CentOS7安装部署Java11:https://blog.csdn.net/u011424614/article/details/132418561

CentOS7安装部署MySQL80:https://blog.csdn.net/u011424614/article/details/132418916

keepalived识别MGR主节点:https://blog.csdn.net/u011424614/article/details/133222266

nginx入门和使用实践:https://blog.csdn.net/u011424614/article/details/107051875

CentOS基础操作命令:https://blog.csdn.net/u011424614/article/details/94555916

二、正文

1.部署服务器

  • Nacos 端口
端口 描述
7848 集群数据同步端口
8848 Web管理端访问端口
9848 客户端gRPC请求服务端端口,用于客户端向服务端发起连接和请求
9849 服务端gRPC请求服务端端口,用于服务间同步等
  • 服务器
机器名 IP 软件包
sys-cluster-01 192.168.249.131 Nacos
sys-cluster-02 192.168.249.132 Nacos
sys-cluster-03 192.168.249.133 Nacos
sys-cluster-04 192.168.249.134 MySQL

2.基础环境

1)主机名

  • 修改 4 台服务器的主机名
# 131 执行
hostnamectl set-hostname sys-cluster-01 --static
hostnamectl set-hostname sys-cluster-01 --transient

# 132 执行
hostnamectl set-hostname sys-cluster-02 --static
hostnamectl set-hostname sys-cluster-02 --transient

# 133 执行
hostnamectl set-hostname sys-cluster-03 --static
hostnamectl set-hostname sys-cluster-03 --transient

# 134 执行
hostnamectl set-hostname sys-cluster-04 --static
hostnamectl set-hostname sys-cluster-04 --transient

# 查询状态
hostnamectl status

2)Hosts文件

  • 修改 4 台服务器的 hosts 文件
cat > /etc/hosts <

3)关闭防火墙

  • 可禁用防火墙,或配置开放的端口,后者比较安全
#--关闭防火墙
systemctl stop firewalld.service
#--开机禁用防火墙
systemctl disable firewalld.service
#--防火墙状态
systemctl status firewalld.service

4)JDK 安装部署

在 4 台服务器上安装JDK

  • 安装参考:《CentOS7安装部署Java11》
  • 安装目录:/opt/java/jdk-11.0.19

5)MySQL 安装部署

在 134 服务器上安装MySQL

  • 安装参考:《CentOS7安装部署MySQL80》
  • 目录:
  1. 安装目录:/usr/local/mysql
  2. 数据库文件目录,例如表结构和数据:/var/lib/mysql
  3. 日志文件目录:/var/log/mysql
  4. 配置文件目录:/etc/mysql
  5. 用户名:root 密码:Root@#123456

3.外置数据源

在 134 服务器上执行

  • 数据源选择
  1. 内置数据源:无需进行任何配置
  2. 外置数据源:生产使用建议至少主备模式,或者采用高可用数据库

1)下载软件包

  • 创建安装目录,并下载
mkdir /opt/nacos
cd /opt/nacos

# 下载
wget https://github.com/alibaba/nacos/releases/download/2.2.3/nacos-server-2.2.3.tar.gz --no-check-certificate
# 解压
tar -xzf nacos-server-2.2.3.tar.gz

2)导入数据

  • 登录 mysql 客户端,并执行 nacos 自带的 SQL 文件
mysql -ruoot -p

# 创建数据库
CREATE DATABASE nacos_config;
USE nacos_config;
# 执行 sql 文件
SOURCE /opt/nacos/nacos/conf/mysql-schema.sql
# 查询
show tables;

4.单机部署

在 131 服务器上执行

1)下载软件包

  • 创建安装目录,并下载
mkdir /opt/nacos
cd /opt/nacos

# 下载
wget https://github.com/alibaba/nacos/releases/download/2.2.3/nacos-server-2.2.3.tar.gz --no-check-certificate
# 解压
tar -xzf nacos-server-2.2.3.tar.gz

2)修改配置文件

  • 编辑 application.properties 配置文件

【Config Module Related Configurations】段:配置 MySQL 数据库

【Access Control Related Configurations】段:开启鉴权

  1. nacos.core.auth.plugin.nacos.token.secret.key:使用 Base64 在线编码 进行密钥生成,至少 32 个字符
vim /opt/nacos/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://sys-cluster-04:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user.0=root
db.password.0=Root@#123456


### If turn on auth system:
nacos.core.auth.enabled=true
### The two properties is the white list for auth and used by identity the request from other server.
nacos.core.auth.server.identity.key=nacos
nacos.core.auth.server.identity.value=nacos
### The default token (Base64 String):
nacos.core.auth.plugin.nacos.token.secret.key=amxramxramtsamFkc2Zhc2RmYXNkZmE1NjQ1NmY0NWFzZDRmNjU0YXM1NmRmNDZhNXNk

3)单机启动

  • 单机模式运行
# 执行权限
chmod +x /opt/nacos/nacos/bin/startup.sh
chmod +x /opt/nacos/nacos/bin/shutdown.sh

cd /opt/nacos/nacos/bin
# 启动
./startup.sh -m standalone
# 停止
./shutdown.sh
  • 日志输出
# 实时输出
tail -f /opt/nacos/nacos/logs/start.out
# 静态输出
cat /opt/nacos/nacos/logs/start.out
  • 浏览器访问:http://192.168.249.131:8848/nacos
  • 输入账号和密码:nacos / nacos

4)自启动

  • 创建 nacos.service
cat > /etc/systemd/system/nacos.service <
  • 启动服务,并设置开机自启动
systemctl daemon-reload
systemctl start nacos.service
systemctl enable nacos.service
  • 查询 Nacos 进程状态
systemctl status nacos.service

5.集群部署

1)下载软件包

在 131 服务器上执行

  • 创建安装目录,并下载
mkdir /opt/nacos
cd /opt/nacos

# 下载
wget https://github.com/alibaba/nacos/releases/download/2.2.3/nacos-server-2.2.3.tar.gz --no-check-certificate
# 解压
tar -xzf nacos-server-2.2.3.tar.gz

2)修改配置文件

在 131 服务器上执行

(1)application.properties
  • 编辑 application.properties 配置文件

【Config Module Related Configurations】段:配置 MySQL 数据库

【Access Control Related Configurations】段:配置鉴权信息

  1. nacos.core.auth.plugin.nacos.token.secret.key:使用 Base64 在线编码 进行密钥生成,至少 32 个字符
vim /opt/nacos/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://sys-cluster-04:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user.0=root
db.password.0=Root@#123456


### If turn on auth system:
nacos.core.auth.enabled=true
### The two properties is the white list for auth and used by identity the request from other server.
nacos.core.auth.server.identity.key=nacos
nacos.core.auth.server.identity.value=nacos
### The default token (Base64 String):
nacos.core.auth.plugin.nacos.token.secret.key=amxramxramtsamFkc2Zhc2RmYXNkZmE1NjQ1NmY0NWFzZDRmNjU0YXM1NmRmNDZhNXNk
(2)cluster.conf
  • 拷贝并编辑 cluster.conf
# 拷贝
cp /opt/nacos/nacos/conf/cluster.conf.example /opt/nacos/nacos/conf/cluster.conf

# 编辑
vim /opt/nacos/nacos/conf/cluster.conf
  • 编辑内容,Nacos 集群的IP和端口列表
#it is ip
192.168.249.131:8848
192.168.249.132:8848
192.168.249.133:8848

3)拷贝Nacos

在 131 服务器上执行

  • 拷贝 Nacos 到其它服务器
scp -r /opt/nacos [email protected]:/opt/nacos
scp -r /opt/nacos [email protected]:/opt/nacos

4)集群启动

在 131、132、133 服务器上执行

  • 单机模式运行
# 执行权限
chmod +x /opt/nacos/nacos/bin/startup.sh
chmod +x /opt/nacos/nacos/bin/shutdown.sh

cd /opt/nacos/nacos/bin
# 启动
./startup.sh
# 停止
./shutdown.sh
  • 日志输出
# 实时输出
tail -f /opt/nacos/nacos/logs/start.out
# 静态输出
cat /opt/nacos/nacos/logs/start.out
  • 浏览器访问:
  1. http://192.168.249.131:8848/nacos
  2. http://192.168.249.132:8848/nacos
  3. http://192.168.249.133:8848/nacos
  • 输入账号和密码:nacos / nacos

5)自启动

在 131、132、133 服务器上执行

  • 创建 nacos.service
cat > /etc/systemd/system/nacos.service <
  • 启动服务,并设置开机自启动
systemctl daemon-reload
systemctl start nacos.service
systemctl enable nacos.service
  • 查询 Nacos 进程状态
systemctl status nacos.service

6)进阶部署

Nacos 集群部署说明 :https://nacos.io/zh-cn/docs/v2/guide/admin/cluster-mode-quick-start.html

  • Nginx 负载均衡

  • Nginx + Keepalived 双机主备

  • Nginx + Keepalived 双主热备

三、其它

1.常用命令

命令 说明
systemctl daemon-reload 重新加载服务配置
systemctl start nacos.service 启动服务
systemctl enable nacos.service 开机自启动服务
systemctl status nacos.service 查询服务状态
systemctl stop nacos.service 停止服务
systemctl restart nacos.service 重启服务
systemctl disable nacos.service 禁用开机自启动服务

你可能感兴趣的:(#,CentOS,#,Middleware,Nacos)