爆炸之linux-nacos2.0系列集群安装部署

发布于:2024-04-19 ⋅ 阅读:(31) ⋅ 点赞:(0)

一、环境配置

1、新建磁盘分区

fdisk /dev/vdb 

2、创建文件系统

mkfs.xfs /dev/vdb1

3、创建挂载点: 在 / 目录下创建一个新的目录作为挂载点。/afc 目录

mkdir /afc

4、挂载磁盘: 使用 mount 命令将磁盘挂载到新创建的目录。

mount /dev/vdb /afc

5、编辑 /etc/fstab 文件实现系统启动时自动挂载。

/dev/vdb1       /data       xfs    defaults 1 1

6、将 /afc 目录的所有权和组设置为 afc。 afc 是用户组和用户的名称

chown afc.afc /afc

上述操作方便管理,如果不是项目要求,自己搭建玩玩,可以不用操作

二、下载安装包

您可以从 最新稳定版本 下载 nacos-server-$version.zip 包 或 nacos-server-$version.tar.gz

选择你想要的版本安装,本次是nacos-server-2.2.1

三、nacos所需要的条件配置

nacos官网,本次是安装的2.xxx的版本

https://nacos.io/docs/v2/guide/admin/cluster-mode-quick-start/

下列是必须要满足的条件

请确保是在环境中安装使用:

  1. 64 bit OS Linux/Unix/Mac,推荐使用Linux系统。
  2. 64 bit JDK 1.8+;下载. 配置
  3. Maven 3.2.x+;下载. 配置
  4. 3个或3个以上Nacos节点才能构成集群。
  5. 数据库5.7+。

四、安装所需要得条件配置

1、jdk安装的是:1.8.0_411

详细的教程 : https://blog.csdn.net/qq_54202620/article/details/137926105

2、maven安装的是:3.9.6

详细的教程: https://blog.csdn.net/qq_54202620/article/details/137926433

3、mysql安装的是 : mysql-5.7.44-1.el7.x86_64.rpm-bundle.tar

详细的教程:https://blog.csdn.net/qq_54202620/article/details/137926771

五、正式进入nacos步骤

5.1 创建nacos的数据库

1、创建数据库

  • 进入nacos放的目录下

    cd /conf
    

在这里插入图片描述

  • 登录数据库

    mysql -uroot -p
    
    • 输入设置好的密码进入数据库
    use mysql;
    #创建nacos要用到的数据库,这个会在application.properties这个配置文件中用到
    create database nacos;
    #查看是否创建成功
    show databases;
    

    在这里插入图片描述

  • 生效表创建sql(刚刚是切换的这个目录下的mysql-schema.sql)

    use nacos;
    source mysql-schema.sql;
    show tables;
    #看到下面的图片代表创建成功
    

在这里插入图片描述

2、给数据库设置权限

# 1、登录数据库
#执行以下命令,记得修改密码
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;
#然后刷新权限
FLUSH PRIVILEGES;

5.2 修改application配置文件

删除下面配置文件前面的#

注意:

db.url.0=jdbc:mysql://127.0.0.1:3306/nacos?  #这个nacos就是你创建的用来生效 mysql-schema.sql的库名
db.user.0=root
db.password.0=Abcdefg@123  #这两个改成你的用户名和密码
server.error.include-message=ALWAYS
### Default web server port:
server.port=8849    #端口可以自己修改,也可不休改

#*************** Network Related Configurations ***************#
### If prefer hostname over ip for Nacos server addresses in cluster.conf:
# nacos.inetutils.prefer-hostname-over-ip=false

### Specify local server's IP:
# nacos.inetutils.ip-address=


#*************** Config Module Related Configurations ***************#
### If use MySQL as datasource:
### Deprecated configuration property, it is recommended to use `spring.sql.init.platform` replaced.
spring.datasource.platform=mysql               #这个要使用数据库就得放开
# spring.sql.init.platform=mysql

### Count of DB:
db.num=1               #db.num=1 这样的配置可能表示应用程序连接到数据库时所使用的数据库编号或者连接池中的连接数

### Connect URL of DB:
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user.0=root
db.password.0=Abcdefg@123

### Connection pool configuration: hikariCP
db.pool.config.connectionTimeout=30000
db.pool.config.validationTimeout=10000
db.pool.config.maximumPoolSize=20

在这里插入图片描述

5.3 避坑小指南

我在启动的过程成报错信息:
在这里插入图片描述

org.springframework.context.ApplicationContextException: Unable to start web server; nested exception is org.springframework.boot.web.server.WebServerException: Unable to start embedded Tomcat

Caused by: java.lang.IllegalArgumentException: the length of secret key must great than or equal 32 bytes; And the secret key must be encoded by base64.Please see https://nacos.io/zh-cn/docs/v2/guide/user/auth.html

我们转到错误中的网址:https://nacos.io/zh-cn/docs/v2/guide/user/auth.html

这是nacos官方文档关于配置属性的说明,对应下载的nacos文件位置为:nacos–>conf–>application.properties

重点是字段

nacos.core.auth.plugin.nacos.token.secret.key

在这里插入图片描述

再结合官方文档发现,在2.2.0.1版本之后,该字段默认为空,我们要手动赋值,不然就会无法启动

如果是自己的nacos,不关心安全,可以在配置文件中将该字段设置成:

SecretKey012345678901234567890123456789012345678901234567890123456789

在使用高版本nacos后,还有一个坑,nacos会默认使用集群方式启动,会启动失败,我们可以在nacos–>bin–>startup.cmd文件中将MODE属性改为 standalone

我们本来就以集群模式启动,无需在意

5.4 集群化配置

application配置完成后,修改cluster.conf配置文件

1、复制cluster.conf

cluster.conf这个文件本来是没有的,存在的形式是下图所示,所以要复制一份

cp cluster.conf.example cluster.conf

在这里插入图片描述

2、编辑cluster.conf

vim cluster.conf

#把下面的ip改成你用到的ip地址

在这里插入图片描述

5.5 修改启动文件

考虑的你所用的服务器性能,选择性修改启动文件

cd /root/nacos/bin
vim startup.sh
#将下面圈上的地方改成512

在这里插入图片描述

5.6 启动nacos

终于到了最后一步了,坚持就是胜利

cd /root/nacos/bin
sh startup.sh   #以集群方式启动
cat /root/nacos/logs/start.out   #查看启动日志
#如下显示成功

在这里插入图片描述

5.7 访问nacos

如果有防火墙记得放行端口哦

浏览器访问

http://8.149.128.250:8849/nacos

输入账号密码登录

nacos
nacos

访问成功查看节点,集群里面的全在,nice一台搞定

在这里插入图片描述

六、另外的集群里面的主机配置

6.1 前期准备

环境配置可照第一环境配置这个来配

如果网落连通的,使用scp把maven、mysql、jdk文件传到另外的两台机上

scp 压缩包名 username@ip:/root
#username:你登录的用户名
#你要传过去的ip
#冒号后面是你要接受的路径

6.2 安装jdk 、maven可照上面的来操作

6.3 修改application这个文件

最重要的一步,因为是复制过来的别的无需在再修改

只要修改数据库连接地址为你安装的数据库那台机的地址即可

修改

db.url.0=   #

在这里插入图片描述

6.4 启动nacos

终于到了最后一步了,坚持就是胜利

cd /root/nacos/bin
sh startup.sh   #以集群方式启动
cat /root/nacos/logs/start.out   #查看启动日志
#如下显示成功

在这里插入图片描述

6.5 访问nacos

如果有防火墙记得放行端口哦

浏览器访问

http://8.149.128.250:8849/nacos  #地址记得修改哦

输入账号密码登录

nacos
nacos

访问成功查看节点,集群里面的全在,nice又一台搞定

在这里插入图片描述

第三台一样的操作

最后用nginx实现负载均衡,敬请期待