在Linux上搭建SpringCloudAlibaba Nacos的集群和持久化

  • 1. Linux上安装Nginx
  • 2. Linux上安装Nacos
  • 3. 测试启动


1. Linux上安装Nginx

  • 安装Nginx相关依赖:
    yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel
  • 安装pcre依赖:tar -xvf pcre-8.40.tar.gz

进入到安装目录中,执行 ./configure 进行编译

执行 make && make install进行安装

使用 pcre-config --version查看版本号

  • Nginx安装

解压安装包 tar -xvf nginx-1.20.2.tar.gz

在解压的目录下执行./configure

安装 make && make install.

打开/usr/local目录下,查看多了一个Nginx目录,并且该目录下存在一个sbin文件(启动脚本)

springcloud如何集成hadoop springcloud集群部署_Nacos集群

springcloud如何集成hadoop springcloud集群部署_nginx_02

./nginx -s stop 关闭Nginx;

./nginx -s quit 退出Nginx

  • 最重要的一步,配置Nginx监听Nacos集群:修改/usr/local/nginx/conf/nginx.conf
    cluster里面包含三个nacos节点,格式为:主机ip地址:端口号
    在server中,nginx的监听端口设置为2222(可以随意指定)
    location中,指定proxy_pass

2. Linux上安装Nacos

  • https://github.com/alibaba/nacos/releases/tag/1.1.4 官网下载nacos-server-1.1.4.tar.gz
  • tar -zxvf nacos-server-1.1.4.tar.gz
  • 修改nacos/conf文件夹中的application.conf,以及cluster.conf
  • 默认是没有这两个文件的,使用命令 cp cluster.conf.example cluster.conf拷贝一份原始文件并重命名
  • springcloud如何集成hadoop springcloud集群部署_spring cloud_03

  • 修改application.properties,增加支持mysql的数据源配置(Nacos默认使用derby数据库进行数据存储)
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://IP地址:3306/nacos_config?serverTimezone=UTC&useSSL=false
db.user.0=root
db.password.0=123456

==注意:==在Linux上安装好MySQL,并开放远程访问权限(因为可能不是在同一台主机上安装的MySQL)
进入到MySQL,更改root的host为%

update user set host=‘%’ where user=‘root’;
  • 复制/nacos/conf文件下的nacos-mysql.sql,在MySQL中执行
  • 集群配置cluster.conf:复制conf文件夹下的默认配置文件 cp cluster.conf.example cluster.conf,在 cluster.conf文件中配置nacos集群
  • 编辑nacos/bin中的启动脚本startup.sh,保证Nacos可以接受不同的启动端口
    集群启动,传递不同的端口号启动不同的nacos实例,如startup.sh -p 8848表示启动端口号为8848的nacos服务器实例


    +启动三个nacos节点
    ./startup.sh -p 8848./startup.sh -p 8849./startup.sh -p 8850 使用命令 查看是否启动成功: ps -ef | grep nacos|grep -v grep| wc -l==注意:==如果显示的是1或者2,那么证明占用的JVM内存太大导致开启服务失败,因为Nacos开启默认Xms和Xmx是2g的,可以修改为小一点的数值,如-Xmx256m,-Xms256m(还是从startup.sh中修改)

3. 测试启动

先启动三台nacos,再启动Nginx

./nginx -c /usr/local/nginx/conf/nginx.conf 查看Nginx是否启动成功

ps -ef | grep nginx

springcloud如何集成hadoop springcloud集群部署_Nacos_04

修改工程的配置文件为对应的Nginx地址:port

springcloud如何集成hadoop springcloud集群部署_nginx_05

springcloud如何集成hadoop springcloud集群部署_nginx_06


启动两个服务,访问192.168.45.128:2222/nacos/#/login查看两个微服务是否注册到Nacos注册中心

springcloud如何集成hadoop springcloud集群部署_linux_07