基于Centos7部署nacos集群

245 阅读1分钟

环境

准备环境:jdk1.8

maven版本:3.3.9

mysql:5.7

下载

image.png

下载地址 github.com/alibaba/nac…

本次搭建3台nacos服务,所以要解压3次安装包,并给其不同命名。

将nacos安装包解压至 /usr/local/nacos

image.png

以nacos8849为例 修改application.properties,注意:修改服务端口,在数据库中创建nacos数据库及其相应的账号密码。

vim nacos8849/conf/application.properties

image.png

以上该表在nacos/conf/nacos-mysql.sql获取。

image.png

修改cluster.conf,注意:IP地址是当前服务器的IP地址。

vim nacos8849/conf/cluster.conf

image.png 在bin目录下 启动nacos服务 ./startup.sh 关闭nacos服务 sh ./shutdown.sh

浏览器测试:192.168.160.192:8849/nacos

image.png

通过Nginx对nacos服务做负载均衡

添加官方源仓库
yum install ‐y yum‐utils
yum‐config‐manager ‐‐add‐repo https://openresty.org/package/centos/openresty.repo
2.安装openresty
yum install ‐y openresty
3.切换至安装目录
cd /usr/local/openresty/

修改nginx配置: vim openresty/nginx/conf/nginx.conf

image.png

在sbin下启动nginx服务:./nginx

[root@localhost local]# cd openresty/nginx/sbin
[root@localhost sbin]# ls
nginx
[root@localhost sbin]# ./nginx

nginx反向代理测试:192.168.160.192:8847/nacos

springboot集成

父工程 pom.xml

<dependencyManagement>
    <dependencies>
        <!--spring cloud alibaba 的版本管理,通过dependency完成继承-->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-alibaba-dependencies</artifactId>
            <version>2.2.5.RELEASE</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
        <!--springboot的版本管理-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-parent</artifactId>
            <version>2.3.11.RELEASE</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
        <!--spring cloud的版本管理-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-dependencies</artifactId>
            <version>Hoxton.SR8</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

子工程 pom.xml

<!--nacos客户端依赖包-->
<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>

<!--nacos配置管理依赖-->
<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>

bootstrap.yml
建议使用bootstrap,由于nacos默认优先访问本地localhost:8848,application.yml会无法远程连接nacos服务器,所以需要用bootstarp文件最高优先级加载配置。

server:
  port: 8010

spring:
  application:
    name: order-service

  cloud:
      server-addr: 192.168.160.192:8847
image.png

启动服务:此时nacos服务发现服务

image.png