CentOS8搭建Nacos1.4.0集群

序言

在生产环境中,一般使用Nacos保证高可用,这里部署三个节点Nacos,通过Nginx负载均衡,服务架构如下图

在这里插入图片描述

预备环境准备

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

  1. 使用Linux系统;
  2. 安装64 bit JDK 1.8+;
  3. 3个或3个以上Nacos节点才能构成集群。

下载安装包

  1. 下载最新版Nacos:https://github.com/alibaba/nacos/releases/tag/1.4.0
  2. 下载Nginx: http://nginx.org/en/download.html
  3. 准备三台Centos虚拟机,设置IP使彼此互通,关闭防火墙,安装JAVA1.8 环境

在这里插入图片描述

搭建Nacos集群

数据库配置

解压nacos-server-1.4.0.tar.gz安装包,在nacos\conf目录下找到nacos-mysql.sql文件

在这里插入图片描述

新建数据库nacos

在这里插入图片描述

执行nacos-mysql.sql文件里面的sql

在这里插入图片描述

在Linux中安装并启动Nacos服务

nacos-server-1.4.0.tar.gz安装包到指定目录并解压,我这里安装到/usr/local目录

tar -zxvf nacos-server-1.4.0.tar.gz
数据库与集群配置

修改nacos/conf/application.properties数据库配置,修改为自己的数据库url,用户名和密码

### 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.138.8:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user=root
db.password=root

进入/usr/local/nacos/conf 中复制一份配置文件 cp cluster.conf.example cluster.conf

cd /usr/local/nacos/conf
cp cluster.conf.example cluster.conf

编辑 cluster.conf配置文件做如下修改

#it is ip
#example
192.168.138.8:8848
192.168.138.9:8848
192.168.138.10:8848
修改nacos 启动脚本

修改/usr/local/nacos/bin目录下的startup.sh

# 找到如下
[ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=$HOME/jdk/java
[ ! -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

# 修改$HOME/jdk/java为自己的jdk安装目录
[ ! -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服务,并设置为开机启动项
vim /etc/systemd/system/nacos.service

添加如下内容,/usr/local/nacos改为自己的nacos安装目录

[Unit]
Description=nacos
After=network.target

[Service]
Type=forking
ExecStart=/usr/local/nacos/bin/startup.sh
ExecStop=/usr/local/nacos/bin/shutdown.sh
PrivateTmp=true

[Install]
WantedBy=multi-user.target

将Nacos服务设置为开机启动项

systemctl enable nacos

启动Nacos服务

systemctl start nacos

查看Nacos启动状态

ps -ef | grep nacos
systemctl status nacos

在这里插入图片描述

Nacos单机验证

在浏览器输入http://192.168.138.8:8848/nacos,用户名密码均为nacos,可以看到192.168.138.8虚拟机的Nacos已经启动成功

在这里插入图片描述

Nacos集群部署

192.168.138.9192.168.138.10服务器重新进行在Linux中安装并启动Nacos服务的操作,则完成Nacos集群

访问http://192.168.138.8:8848/nacoshttp://192.168.138.9:8848/nacoshttp://192.168.138.10:8848/nacos的集群管理->节点列表,显示都是如下

在这里插入图片描述

配置Nginx负载均衡

解压nginx

这里安装到192.168.138.8服务器的/usr/local目录

tar -zxvf nginx-1.18.0.tar.gz

需要安装gcc和make环境

yum install -y gcc-c++ make
安装第三方的开发包

1 PERE

PCRE(Perl Compatible Regular Expressions)是一个Perl库,包括 perl 兼容的正则表达式库。

nginx的http模块使用pcre来解析正则表达式,所以需要在linux上安装pcre库。

注:pcre-devel是使用pcre开发的一个二次开发库。nginx也需要此库

yum install -y pcre pcre-devel 

2 zlib

zlib库提供了很多种压缩和解压缩的方式,nginx使用zlib对http包的内容进行gzip,所以需要在linux上安装zlib库。

yum install -y zlib zlib-devel

3 openssl

OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,

并提供丰富的应用程序供测试或其它目的使用。

nginx不仅支持http协议,还支持https(即在ssl协议上传输http),所以需要在linux安装openssl库。

yum install -y openssl openssl-devel
安装与配置nginx

进入nginx-1.18.0目录

cd nginx-1.18.0

设置安装路径为/usr/local/nginx

./configure --prefix=/usr/local/nginx
make
make install

修改配置文件,配置文件在/usr/local/nginx/conf/nginx.conf,添加如下配置

upstream nacos {
    server 192.168.138.8:8848;
    server 192.168.138.9:8848;
    server 192.168.138.10:8848;
}

server {
    listen       8080;
    server_name  localhost;

    #charset koi8-r;

    #access_log  logs/host.access.log  main;

    location / {
        #root   html;
        #index  index.html index.htm;
        proxy_pass http://nacos;
    }
}
将nginx设置为开机启动项
vim /etc/systemd/system/nginx.service

添加如下内容,/usr/local/nginx改为自己的nginx安装目录

[Unit]
Description=nginx
After=network.target
  
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s stop
PrivateTmp=true
  
[Install]
WantedBy=multi-user.target

将nginx服务设置为开机启动项

systemctl enable nginx

启动nginx服务

systemctl start nginx

查看nginx启动状态

ps -ef | grep nginx
systemctl status nginx
负载均衡集群验证

访问http://192.168.138.8:8080/nacos,也是可以看到nacos的三个集群节点,至此,nacos的集群已经搭建完成

在这里插入图片描述

  • 4
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值