3.1 服務(wù)發(fā)現(xiàn)數(shù)據(jù)模型
Nacos在經(jīng)過阿里內(nèi)部多年生產(chǎn)經(jīng)驗(yàn)后提煉出的數(shù)據(jù)模型,則是一種服務(wù)-集群-實(shí)例的三層模型口四,這樣基本可以滿足服務(wù)在所有場(chǎng)景下的數(shù)據(jù)存儲(chǔ)和管理。
命名空間(Namespace)
用于進(jìn)行租戶粒度的配置隔離秦陋,命名空間不僅適用于Nacos的配置管理蔓彩,同樣適用于服務(wù)發(fā)現(xiàn)。Namespace 的常用場(chǎng)景之一是不同環(huán)境的配置的區(qū)分隔離驳概,例如開發(fā)測(cè)試環(huán)境和生產(chǎn)環(huán)境的資源(如配置赤嚼、服務(wù))隔離等。
服務(wù)
提供給客戶端的軟件功能顺又,通過預(yù)定義接口網(wǎng)絡(luò)訪問更卒。
服務(wù)名
服務(wù)提供的標(biāo)識(shí),通過該標(biāo)識(shí)可以唯一確定其指代的服務(wù)稚照。
實(shí)例
提供一個(gè)或多個(gè)服務(wù)的具有可訪問網(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)分瘦,從作用范圍來看,分為服務(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)查看
3.3 服務(wù)管理
開發(fā)者或者運(yùn)維人員往往需要在服務(wù)注冊(cè)后土陪,通過友好的界面來查看服務(wù)的注冊(cè)情況,包括當(dāng)前系統(tǒng)注冊(cè)的所有服務(wù)和每個(gè)服務(wù)的詳情肴熏。并在有權(quán)限控制的情況下鬼雀,進(jìn)行服務(wù)的一些配置的編輯操作。Nacos在目前最新版本開放的控制臺(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è)欄目。
在服務(wù)列表頁(yè)面點(diǎn)擊詳情矢炼,可以看到服務(wù)的詳情系瓢。可以查看服務(wù)句灌、集群和實(shí)例的基本信息夷陋。
3.3.2 服務(wù)流量權(quán)重支持及流量保護(hù)
Nacos為用戶提供了流量權(quán)重控制的能力,同時(shí)開放了服務(wù)流量的閾值保護(hù)胰锌,以幫助用戶更好的保護(hù)服務(wù)提供者集群不被意外打垮骗绕。如下圖所以,可以點(diǎn)擊實(shí)例的編輯按鈕资昧,修改實(shí)例的權(quán)重酬土。如果想增加實(shí)例的流量,可以將權(quán)重調(diào)大格带,如果不想實(shí)例接收流量撤缴,則可以將權(quán)重設(shè)為0刹枉。
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ù)可以通過相同的格式進(jìn)行嗽桩。例如服務(wù)的元數(shù)據(jù)編輯岳守,首先點(diǎn)擊服務(wù)詳情頁(yè)右上角的“編輯服務(wù)”按鈕,然后在元數(shù)據(jù)輸入框輸入:version=1.0
點(diǎn)擊確認(rèn)涤躲,就可以在服務(wù)詳情頁(yè)面棺耍,看到服務(wù)的元數(shù)據(jù)已經(jīng)更新了。
3.2.4 服務(wù)優(yōu)雅上下線
Nacos還提供服務(wù)實(shí)例的上下線操作种樱,在服務(wù)詳情頁(yè)面蒙袍,可以點(diǎn)擊實(shí)例的“上線”或者“下線”按鈕,被下線的實(shí)例嫩挤,將不會(huì)包含在健康的實(shí)例列表里害幅。
下線后的實(shí)例將不再被訪問,與權(quán)重為0效果一致