IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> nacos集群搭建 -> 正文阅读

[系统运维]nacos集群搭建

官方文档上面就有结束搭建nacos是介绍

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-EDc38kQO-1658024265324)(E:\Java笔记\image\springcloud_alibaba\image-20220607204317083.png)]

官方文档提供了一个Nacos集群的架构图,当我们访问Nacos时,首先会经过SLB,也就是负载均衡,通常是一个nginx,通过nginx来进行分发到具体的Nacos服务器上面。我们需要给不同的服务器进行部署Nacos,我们这里演示的是一个伪的集群,在一台服务器上面搭建三个Nacos。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-y85gywwV-1658024265326)(E:\Java笔记\image\springcloud_alibaba\image-20220607204458873.png)]

1. 环境准备

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

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

2. Nocas下载:https://github.com/alibaba/nacos/releases

将下载好的安装包上传到linux服务器上并进行解压

[root@VM-8-14-centos nacos]# tar -zxvf nacos-server-1.4.1.tar.gz 

[root@VM-8-14-centos nacos]# ll
drwxr-xr-x 5 root root     4096 Jun  7 20:39 nacos
-rw-r--r-- 1 root root 79052411 Jun  7 20:39 nacos-server-1.4.1.tar.gz

# 将解压后的nacos目录改一个名字,并复制三份,目录名结尾加一个端口
[root@VM-8-14-centos nacos]# mv nacos nacos8849
[root@VM-8-14-centos nacos]# cp -r nacos8849/ nacos8850
[root@VM-8-14-centos nacos]# cp -r nacos8849/ nacos8851
[root@VM-8-14-centos nacos]# ll
drwxr-xr-x 5 root root     4096 Jun  7 20:39 nacos8849
drwxr-xr-x 5 root root     4096 Jun  7 20:50 nacos8850
drwxr-xr-x 5 root root     4096 Jun  7 20:50 nacos8851
-rw-r--r-- 1 root root 79052411 Jun  7 20:39 nacos-server-1.4.1.tar.gz

配置集群配置文件

在nacos的解压目录nacos/的conf目录下,有配置文件cluster.conf,请每行配置成ip:port。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FsGGhwoD-1658024265327)(E:\Java笔记\image\springcloud_alibaba\image-20220607205219195.png)]

# 创建cluster.conf文件
[root@VM-8-14-centos conf]# vim cluster.conf
# 输入以下内容,如果是真实的生产环境就配置各个服务器的ip和端口
114.132.75.63:8849
114.132.75.63:8850
114.132.75.63:8851

确定数据源

为什么需要将数据源配置成mysql数据库嘞?

这是因为nacos默认的数据源是使用的内置数据源,是存在内存中的,那么我们启动nacos集群的时候内存中的数据肯定就不能共享了,到时候我们的数据进行注册的话就会注册到各自的Nacos服务器中,这也就会造成数据不一致。为了保证数据一致性就需要将数据源改为数据库。

我们首先需要安装好数据库,然后创建一个数据库,然后执行安装包中提供的sql脚本,这个sql脚本只是一些建表语句,所以需要我们先创建一个数据库,需要注意mysql需要使用5.7+以上的版本,如果用低版本的mysql在执行sql脚本的时候可能会报错

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NhF8Crk1-1658024265328)(E:\Java笔记\image\springcloud_alibaba\image-20220607205607821.png)]

执行完sql脚本之后,编辑conf/application.properties文件,修改的内容如下图所示

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-eCpjKS5n-1658024265331)(E:\Java笔记\image\springcloud_alibaba\image-20220607210743969.png)]

修改启动脚本

我们还需要修改bin/startup.sh 启动脚本,因为如果是以集群的方式启动,Nacos默认占用的内存是2G,如果服务器的内存足够大可以不进行修改。

[root@VM-8-14-centos nacos8849]# vim bin/startup.sh 

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WvGq36gl-1658024265333)(E:\Java笔记\image\springcloud_alibaba\image-20220607211313713.png)]

修改完成之后就可以启动了

[root@VM-8-14-centos nacos8849]# bin/startup.sh 

启动完成后,最后一行日志提示可以让我们去查看日志文件

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-j6uyicAW-1658024265334)(E:\Java笔记\image\springcloud_alibaba\image-20220607211551492.png)]

现在就可以在Nacos管理界面进行查看集群管理了,因为我现在只是启动了一台Nacos,所以其他两台是down

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-IHa6LyE6-1658024265335)(E:\Java笔记\image\springcloud_alibaba\image-20220607211902709.png)]

然后再将刚刚修改的三个地方在另外两个nacos目录中也进行相应的修改。并启动这三个nacos。现在随便访问一个nacos的管理界面都可以看到

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DfzCFsv8-1658024265336)(E:\Java笔记\image\springcloud_alibaba\image-20220607212040917.png)]

启动完成之后有一个问题,我们的服务应该如何写,Nacos Client到底写这三个Nacos服务中的哪一个嘞?

其实我们写任何一个都不行,因为这样就又像是单机了,其实我还需要安装一个nginx,用nginx来进行负载均衡,我们使用nginx代理的一个地址。

在nginx的配置文件nginx.conf进行如下的修改

	# 定义一个upstream,然后定义别名,再定义要进行负载均衡的ip
	upstream nacoscluster {
		server 127.0.0.1:8849;
		server 127.0.0.1:8850;
		server 127.0.0.1:8851;
	}

    server {
        listen       8847;  
        server_name  localhost; 
		
		# 这里判断的uri是因为nacos服务启动的conf/application.peoperties配置文件中指定的一个默认访问前缀,如下图所示
        location /nacos/ {
            proxy_pass	http://nacoscluster/nacos/;
        }
    }

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Uqsetu0s-1658024265337)(E:\Java笔记\image\springcloud_alibaba\image-20220607212745559.png)]

然后在nacos client中的配置文件写nginx的代理地址

server:
  port: 8084


spring:
  application:
    name: stock-service
  cloud:
    nacos:
      # 指定Nacos服务的地址
      server-addr: 114.132.75.63:8847
      discovery:
        username: nacos
        password: nacos
        namespace: public

nacos是支持多数据中心的,我们是多集群,我们可以如下所示的参数来进行设置,如果是单集群就没必要设置了

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OEghrA6i-1658024265338)(E:\Java笔记\image\springcloud_alibaba\image-20220607213406430.png)]

这里的集群对应的是服务实例详情页面中最下方的集群。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tvu7fBDL-1658024265339)(E:\Java笔记\image\springcloud_alibaba\image-20220607195630857.png)]

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-07-20 19:20:33  更:2022-07-20 19:20:37 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/18 21:11:50-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码