Nacos服務(wù)發(fā)現(xiàn)-三、Nacos服務(wù)發(fā)現(xiàn)基礎(chǔ)應(yīng)用

3.1 服務(wù)發(fā)現(xiàn)數(shù)據(jù)模型

Nacos在經(jīng)過(guò)阿里內(nèi)部多年生產(chǎn)經(jīng)驗(yàn)后提煉出的數(shù)據(jù)模型,則是一種服務(wù)-集群-實(shí)例的三層模型,這樣基本可以滿足服務(wù)在所有場(chǎng)景下的數(shù)據(jù)存儲(chǔ)和管理。

2d472771f0c2cff7627ae5ac8e7669fc.png

命名空間(Namespace)

用于進(jìn)行租戶粒度的配置隔離,命名空間不僅適用于Nacos的配置管理,同樣適用于服務(wù)發(fā)現(xiàn)。Namespace 的常用場(chǎng)景之一是不同環(huán)境的配置的區(qū)分隔離,例如開(kāi)發(fā)測(cè)試環(huán)境和生產(chǎn)環(huán)境的資源(如配置、服務(wù))隔離等。

服務(wù)

提供給客戶端的軟件功能,通過(guò)預(yù)定義接口網(wǎng)絡(luò)訪問(wèn)。

服務(wù)名

服務(wù)提供的標(biāo)識(shí),通過(guò)該標(biāo)識(shí)可以唯一確定其指代的服務(wù)。

實(shí)例

提供一個(gè)或多個(gè)服務(wù)的具有可訪問(wèn)網(wǎng)絡(luò)地址(IP:Port)的進(jìn)程,啟動(dòng)一個(gè)服務(wù),就產(chǎn)生了一個(gè)服務(wù)實(shí)例。

元信息

Nacos數(shù)據(jù)(如配置和服務(wù))描述信息,如服務(wù)版本、權(quán)重、容災(zāi)策略、負(fù)載均衡策略、鑒權(quán)配置、各種自定義標(biāo)簽 (Label),從作用范圍來(lái)看,分為服務(wù)級(jí)別的元信息、集群的元信息及實(shí)例的元信息。

集群

服務(wù)實(shí)例的集合,服務(wù)實(shí)例組成一個(gè)默認(rèn)集群,集群可以被進(jìn)一步按需求劃分,劃分的單位可以是虛擬集群,相同集群下的實(shí)例才能相互感知。

3.2 指定命名空間與集群名稱

(1) 修改配置文件

server:
  port: 56110
spring:
  application:
    name: feign-provider
  cloud:
    nacos:
      discovery:
        server-addr: localhost:8848
        # 指定命名空間id
        namespace: 470cd824-4b0a-4001-bcac-8491cf2987f8
        cluster-name: DEFAULT

(2) 在Nacos控制臺(tái)查看

image-20210116161358926.png

3.3 服務(wù)管理

開(kāi)發(fā)者或者運(yùn)維人員往往需要在服務(wù)注冊(cè)后,通過(guò)友好的界面來(lái)查看服務(wù)的注冊(cè)情況,包括當(dāng)前系統(tǒng)注冊(cè)的所有服務(wù)和每個(gè)服務(wù)的詳情。并在有權(quán)限控制的情況下,進(jìn)行服務(wù)的一些配置的編輯操作。Nacos在目前最新版本開(kāi)放的控制臺(tái)的服務(wù)發(fā)現(xiàn)部分,主要就是提供用戶一個(gè)基本的運(yùn)維頁(yè)面,能夠查看、編輯當(dāng)前注冊(cè)的服務(wù),這些功能集中在Nacos控制臺(tái)的服務(wù)管理一級(jí)菜單內(nèi)。

3.3.1 服務(wù)列表管理

服務(wù)列表幫助用戶以統(tǒng)一的視圖管理其所有的微服務(wù)以及服務(wù)健康狀態(tài)。整體界面布局是左上角有服務(wù)的搜索框和搜索按鈕,頁(yè)面中央是服務(wù)列表的展示。服務(wù)列表主要展示服務(wù)名、集群數(shù)目、實(shí)例數(shù)目、健康實(shí)例數(shù)目和詳情按鈕五個(gè)欄目。

image-20210116162137048.png

在服務(wù)列表頁(yè)面點(diǎn)擊詳情,可以看到服務(wù)的詳情??梢圆榭捶?wù)、集群和實(shí)例的基本信息。

3.3.2 服務(wù)流量權(quán)重支持及流量保護(hù)

Nacos為用戶提供了流量權(quán)重控制的能力,同時(shí)開(kāi)放了服務(wù)流量的閾值保護(hù),以幫助用戶更好的保護(hù)服務(wù)提供者集群不被意外打垮。如下圖所以,可以點(diǎn)擊實(shí)例的編輯按鈕,修改實(shí)例的權(quán)重。如果想增加實(shí)例的流量,可以將權(quán)重調(diào)大,如果不想實(shí)例接收流量,則可以將權(quán)重設(shè)為0。

image-20210116162417451.png

3.3.3 服務(wù)元數(shù)據(jù)管理

Nacos提供多個(gè)維度的服務(wù)元數(shù)據(jù)的暴露,幫助用戶存儲(chǔ)自定義的信息。這些信息都是以K-V的數(shù)據(jù)結(jié)構(gòu)存儲(chǔ),在控制臺(tái)上,會(huì)以k1=v1,k2=v2這樣的格式展示。同樣,編輯元數(shù)據(jù)可以通過(guò)相同的格式進(jìn)行。例如服務(wù)的元數(shù)據(jù)編輯,首先點(diǎn)擊服務(wù)詳情頁(yè)右上角的“編輯服務(wù)”按鈕,然后在元數(shù)據(jù)輸入框輸入:version=1.0

image-20210116163133343.png

點(diǎn)擊確認(rèn),就可以在服務(wù)詳情頁(yè)面,看到服務(wù)的元數(shù)據(jù)已經(jīng)更新了。

image-20210116163217481.png

3.2.4 服務(wù)優(yōu)雅上下線

Nacos還提供服務(wù)實(shí)例的上下線操作,在服務(wù)詳情頁(yè)面,可以點(diǎn)擊實(shí)例的“上線”或者“下線”按鈕,被下線的實(shí)例,將不會(huì)包含在健康的實(shí)例列表里。

image-20210116163356243.png

下線后的實(shí)例將不再被訪問(wèn),與權(quán)重為0效果一致

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容