零基础带你一步步搭建Nacos高可用集群(史上最详细,赛过教科书!)为此我准备了三台云服务器+云数据库
容我先說一句:節日快樂!永遠九歲的我們當然不能錯過,奧里給!{容我先說一句:節日快樂!永遠九歲的我們當然不能錯過,奧里給!}容我先說一句:節日快樂!永遠九歲的我們當然不能錯過,奧里給!
如果你不懂jdk安裝、nacos安裝、云服務器操作、云數據庫操作;請看1.4的總結。不會搭建nacos集群,你怎么敢說你學過nacos!
文章目錄
- 1、Nacos集群的講解
- 1.1、為什么要搭建高可用集群?
- 1.2、搭建高可用集群需要注意的問題?
- 1.3、搭建集權需要什么環境
- 1.4、jdk安裝、nacos安裝配置最全教程
- 2、從derby切換到mysql數據庫
- 2.1、首先使用本地navicat連接到云數據庫RDS for MySQL
- 2.2、導入nacos-mysql.sql腳本
- 2.3、更改nacos的配置文件
- 2.4、啟動測試
- 3、開始搭建集群
- 3.1、更改application.properties
- 3.2、編輯cluster.conf文件
- 3.3、nginx下載安裝
- 3.4、nginx配置upstream組實現代理
- 4、測試集群
1、Nacos集群的講解
nacos官網(集群搭建):https://nacos.io/en-us/docs/cluster-mode-quick-start.html
1.1、為什么要搭建高可用集群?
這個問題我相信都明白,如果只是單獨的一臺服務器,一旦出現故障,那么整個系統不就over了;所以需要配置集群環境!
1.2、搭建高可用集群需要注意的問題?
1、第一個問題就是集群中的服務器數量不能過多,否者會對性能造成一定的影響,因為數據需要保持一致性嘛!典型的CAP理論,三者不可兼得!
2、當你訪問http://ip:8848/nacos/index.html會發現它讓你輸入用戶名密碼,另外當你添加配置退出,再進來配置項依然存在,所以肯定有數據庫做支撐。nacos使用了嵌入式數據庫derby。而在集群環境下是需要切換為mysql數據庫的,為什么呢?因為需要保證數據的一致性嘛!且看下面的圖片
如果不切換就如上面所以,一臺服務器一個數據庫,怎么保證數據的一致性呢?所以需要引入以下
這樣不就保證的數據的一致性; Nacos官網已經說明了只能使用mysql作為高可用數據庫!
1.3、搭建集權需要什么環境
根據官網的這一段進行分析
第一:推薦使64位 Linux,這個我估計你也能猜到(地表最強系統)
第二:64位 JDK1.8+(包括1.8)
第三:maven 3.2.x+這個應該都會滿足
第四:最少三個nacos節點
1.4、jdk安裝、nacos安裝配置最全教程
| 2021年零基礎帶你走進nacos的世界之云服務器下載安裝nacos-小白教程,詳細到爆了! | https://blog.csdn.net/Kevinnsm/article/details/117387323?spm=1001.2014.3001.5501 |
| 本地Navicat連接阿里云數據庫RDS for MySQL(全網最詳細,沒有之一!) | https://blog.csdn.net/Kevinnsm/article/details/117437544?spm=1001.2014.3001.5501 |
| 不會Nacos的配置中心?你怎么敢的呀!如何一步步實現Nacos作為服務的配置中心(全網最詳系列) | https://blog.csdn.net/Kevinnsm/article/details/117410495?spm=1001.2014.3001.5501 |
| 一分鐘帶你快速進入Nacos的世界,史上最簡易教程!零基礎也能看明白!誰反對? | https://blog.csdn.net/Kevinnsm/article/details/117390678?spm=1001.2014.3001.5501 |
2、從derby切換到mysql數據庫
上文我們已經了解了nacos默認使用derby數據庫,如果我們要搭建高可用的集群環境,那么切換數據庫必不可少!
2.1、首先使用本地navicat連接到云數據庫RDS for MySQL
連接教程:https://blog.csdn.net/Kevinnsm/article/details/117437544?spm=1001.2014.3001.5501
2.2、導入nacos-mysql.sql腳本
這個sql腳本就是我們derby數據庫里面的所有字段,所以我們需要將其導入進mysql
cd到conf文件夾下,將nacos-mysql.sql傳輸到本地(使用xftp進行傳輸,如果不知道,請移步:
https://blog.csdn.net/Kevinnsm/article/details/116193837?spm=1001.2014.3001.5501
打開navicat(如果沒連接請看2.1),新建nacos_config(注意這個是和配置文件對應的)
然后運行sql腳本
刷新一下就會出現以下庫表
users表中的數據就是我們默認用戶名和密碼(nacos、nacos)
2.3、更改nacos的配置文件
注意mysql8.0+版本url記得末尾加serverTimezone=UTC
mysql8.0+在nacos目錄下建立/plugins/mysql文件夾,放入mysql驅動
2.4、啟動測試
訪問:http://ip:8848/nacos/index.html,輸入nacos 、nacos,進去之后會發現以前配置的什么都沒有了,然后新建一個配置
查看數據庫
成功!
3、開始搭建集群
因為我已經準備了三臺云服務器和一臺云數據庫RDS for MySQL,并且已經安裝好了nacos
3.1、更改application.properties
cd到nacos的conf目錄下,編輯application.properties{cd到nacos的conf目錄下,編輯application.properties}cd到nacos的conf目錄下,編輯application.properties
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://ip:3306/nacos_configcharacterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user=xxxxxx
db.password=xxxxxxxx
注意mysql8.0+版本需要加時區{注意mysql8.0+版本需要加時區}注意mysql8.0+版本需要加時區
3.2、編輯cluster.conf文件
1、cd到conf目錄下 ,默認情況下cluster.conf是不存在的,但是官方給出一個示例cluster.conf.example
2、cp cluster.conf.example cluster.conf ,復制一份到cluster.conf
編輯cluster.conf,輸入你的集群ip;由于我已經弄好訪問過,所以會新增一個ip,也就是第二個ip。
3臺服務器都要進行這個操作{3臺服務器都要進行這個操作}3臺服務器都要進行這個操作
3.3、nginx下載安裝
安裝教程:https://blog.csdn.net/Kevinnsm/article/details/114646269
3.4、nginx配置upstream組實現代理
cd到nginx的conf目錄下,編輯nginx.conf文件
4、測試集群
先啟動三臺服務器中的nacos,然后啟動nginx,下面看我的集群架構圖
訪問http://ip:80/nacos/{訪問http://ip:80/nacos/}訪問http://ip:80/nacos/
輸入用戶名和密碼nacos、nacos{輸入用戶名和密碼nacos、nacos}輸入用戶名和密碼nacos、nacos
Nacos集群搭建成功!{Nacos集群搭建成功!}Nacos集群搭建成功!
總結
以上是生活随笔為你收集整理的零基础带你一步步搭建Nacos高可用集群(史上最详细,赛过教科书!)为此我准备了三台云服务器+云数据库的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 全网最详系列教程-nacos配置中心详解
- 下一篇: 全网最详细的Sentinel安装教程,没