nacos 詳細介紹(一)

一、Nacos介紹

  • Nacos是SpringCloudAlibaba架構中最重要的組件。
  • Nacos 是一個更易於幫助構建雲原生應用的動態服務發現、配置和服務管理平台,提供註冊中心、配置中心和動態 DNS 服務三大功能。能夠無縫對接Springcloud、Spring、Dubbo等流行框架。
  • nacos和eureka功能對比

 

 

 

  • nacos支持a(高可用)p(分區容錯)和c(一致性)p的切換默認為ap, eureka僅支持ap,zookeeper僅支持cp

二、nacos能做什麼?

  • 服務註冊發現和服務健康監測:

  Nacos支持基於DNS和基於RPC的服務發現,服務端可以通過SDK或者Api進行服務註冊,相應的服務消費者可以使用DNS或者Http查找的方式獲取服務列表。Nacos同時提供對服務的實時健康檢查,阻止想不健康的主機或服務發送請求,與Eureka類似Nacos也有友好的控制台界面。

  • 動態DNS服務:

  支持權重路由,更容易地實現中間層負載均衡、更靈活的路由策略、流量控制以及數據中心內網的簡單DNS解析服務。

  • 動態配置服務:

  接觸過SpringCloud應該對config有所了解,那麼配置中心也就很好理解,Nacos支持動態的配置管理,將服務的配置信息分環境分類別外部管理,並且支持熱更新。不過與Config不同Nacos的配置信息存儲與數據庫中,支持配置信息的監聽和版本回滾。

  • 服務及元數據管理:

  Nacos 能讓您從微服務平台建設的視角管理數據中心的所有服務及元數據,包括管理服務的描述、生命周期、服務的靜態依賴分析、服務的健康狀態、服務的流量管理、路由及安全策略、服務的 SLA (服務等級協議)以及最首要的 metrics 統計數據(默認不開啟暴露需要修改配置)。可以搭建搭建prometheus採集Nacos metrics數據也可以搭建搭建grafana圖形化展示metrics數據

 

 

 

三、Nacos服務端搭建:

  1. 下載地址:nacos

    

 

 

 

第一個為了linux版本 第二個為windows版本 三四對應源碼包

  2.下載並解壓後可以看到以下目錄結構:

 

 

 

  3.conf中存放的是配置文件及服務啟動所須的數據庫文件

 

 

 

nacos默認使用的數據庫為內嵌的cmdb,我們也可以創建本地數據庫並修改配置文件指向本地數據庫即可(推薦),對nacos集群化有幫助。

  1. 基本命令(單機模式下啟動):
  • Linux/Unix/Mac

    啟動命令(standalone代表着單機模式運行,非集群模式):

    首先進入bin目錄:
    cd nacos/bin

    sh startup.sh -m standalone

    如果您使用的是ubuntu系統,或者運行腳本報錯提示[[符號找不到,可嘗試如下運行:

    bash startup.sh -m standalone

    Windows

    啟動命令(standalone代表着單機模式運行,非集群模式):

    startup.cmd -m standalone

  1. 啟動後 訪問//localhost:8848/nacos/#/login

默認賬號及密碼均為nacos

 

四、Nacos client服務端的搭建

  1. 引入依賴
<dependency>
     <groupId>com.alibaba.cloud</groupId> 
    <artifactId>spring‐cloud‐alibaba‐nacos‐discovery</artifactId> 
</dependency> 
  1. 啟動類寫註解(也可以不寫) @EnableDiscoveryClient
  2. 寫配置文件 :

 

  4.以上三步做完啟動項目如何檢查是否註冊成功?

服務啟動後可以在nacos管理界面查看註冊成功的服務。