溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

分布式鏈路追蹤SkyWalking如何配置管理

發(fā)布時(shí)間:2021-12-08 09:53:29 來源:億速云 閱讀:313 作者:小新 欄目:云計(jì)算

這篇文章主要介紹分布式鏈路追蹤SkyWalking如何配置管理,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

SkyWalking 是一個(gè)開源 APM 系統(tǒng),包括針對(duì) Cloud Native 體系結(jié)構(gòu)中的分布式系統(tǒng)的監(jiān)視,跟蹤,診斷功能。核心功能如下:

- 服務(wù)、服務(wù)實(shí)例、端點(diǎn)指標(biāo)分析

- 根本原因分析,在運(yùn)行時(shí)分析代碼

- 服務(wù)拓?fù)鋱D分析

- 服務(wù),服務(wù)實(shí)例和端點(diǎn)依賴性分析

- 檢測(cè)到慢速服務(wù)和端點(diǎn)

- 性能優(yōu)化

- 分布式跟蹤和上下文傳播

- 數(shù)據(jù)庫訪問指標(biāo)。檢測(cè)慢速數(shù)據(jù)庫訪問語句(包括 SQL 語句)

- 報(bào)警

SkyWalking 目前是 Apache 頂級(jí)項(xiàng)目,作為這么優(yōu)秀的開源項(xiàng)目,它的架構(gòu)設(shè)計(jì)理念肯定會(huì)有很多值得我們借鑒。

### 分布式配置生態(tài)方法論

分布式配置是一個(gè)老生常談的分布式話題,但凡具備分布式能力的系統(tǒng)都要考慮分布式配置,主流比較成熟的分布式配置系統(tǒng)有哪些?如果要講生態(tài)方法論,肯定是要考慮這些問題的。

#### Apollo

做過分布式開發(fā)的人應(yīng)該都知道攜程的這一套非常流行的分布式配置框架,非常成熟 ,并且有很多公司都是直接使用開源的 Apollo,可以說充分信任這套框架。

Apollo 能夠集中化管理應(yīng)用不同環(huán)境、不同集群的配置,配置修改后能夠?qū)崟r(shí)推送到應(yīng)用端,并且具備規(guī)范的權(quán)限、流程治理等特性,適用于微服務(wù)配置管理場(chǎng)景。服務(wù)端基于 Spring Boot 和 Spring Cloud 開發(fā),打包后可以直接運(yùn)行,不需要額外安裝 Tomcat 等應(yīng)用容器。Java 客戶端不依賴任何框架,能夠運(yùn)行于所有 Java 運(yùn)行時(shí)環(huán)境,同時(shí)對(duì) Spring/Spring Boot 環(huán)境也有較好的支持。

應(yīng)用從集中式的單體架構(gòu)到微服務(wù)化架構(gòu),服務(wù)越來越多,原有的基于單體的配置越來越難管理,不能滿足快速發(fā)布和交付的業(yè)務(wù)場(chǎng)景。對(duì)程序配置的期望值也越來越高:配置修改后實(shí)時(shí)生效,灰度發(fā)布,分環(huán)境、分集群管理配置,完善的權(quán)限、審核機(jī)制……

在這樣的大環(huán)境下,傳統(tǒng)的通過配置文件、數(shù)據(jù)庫等方式已經(jīng)越來越無法滿足開發(fā)人員對(duì)配置管理的需求。

這樣像 Apollo 這樣的分不死配置框架產(chǎn)生了,其實(shí)主要是為業(yè)務(wù)提效,因?yàn)橐劳兴梢詷?gòu)建應(yīng)用配置管理的生態(tài)。

關(guān)于 Apollo 的詳細(xì)介紹可以參考官方的文檔,這里只列舉它的幾個(gè)核心的概念:

 - application(應(yīng)用):這個(gè)就是類比應(yīng)用中的 `spring.application.name=api-alarm`,這個(gè)從應(yīng)用層次隔離配置。

 - environment(環(huán)境):配置對(duì)應(yīng)的環(huán)境,Apollo 客戶端在運(yùn)行時(shí)需要知道當(dāng)前應(yīng)用處于哪個(gè)環(huán)境,從而可以去獲取應(yīng)用的配置

 - cluster(集群):一個(gè)應(yīng)用下不同實(shí)例的分組,比如典型的可以按照數(shù)據(jù)中心分,把杭州機(jī)房的應(yīng)用實(shí)例分為一個(gè)集群,把蘇州機(jī)房的應(yīng)用實(shí)例分為另一個(gè)集群。

 - namespace(命名空間):一個(gè)應(yīng)用下不同配置的分組,可以簡(jiǎn)單地把 namespace 類比為文件,不同類型的配置存放在不同的文件中,如數(shù)據(jù)庫配置文件,RPC 配置文件,應(yīng)用自身的配置文件等。比如還可以根據(jù)命名空間來做一個(gè)集群內(nèi)部的租戶隔離等。

#### Nacos

Nacos 是開箱即使用的服務(wù)治理和配置平臺(tái),為動(dòng)態(tài)服務(wù)發(fā)現(xiàn)、配置和服務(wù)管理而設(shè)計(jì)。它幫助您輕松構(gòu)建云本地應(yīng)用程序和微服務(wù)平臺(tái)。服務(wù)是 Nacos 的服務(wù)治理維度,這點(diǎn)不同于 Dubbo。Nacos 支持幾乎所有類型的服務(wù),例如 Dubbo/gRPC 服務(wù)、Spring Cloud RESTFul 服務(wù)或 Kubernetes 服務(wù)。

Nacos 提供如下四個(gè)主要功能。

 - 服務(wù)發(fā)現(xiàn)和服務(wù)運(yùn)行狀況檢查:Nacos 簡(jiǎn)化了服務(wù)的注冊(cè)和通過 DNS 或 HTTP 接口發(fā)現(xiàn)其他服務(wù)。Nacos 還提供服務(wù)的實(shí)時(shí)健康檢查,以防止向不健康的主機(jī)或服務(wù)實(shí)例發(fā)送請(qǐng)求。

 - 動(dòng)態(tài)配置管理:動(dòng)態(tài)配置服務(wù)允許您以集中和動(dòng)態(tài)的方式跨所有環(huán)境管理所有服務(wù)的配置。Nacos 消除了在更新配置時(shí)重新部署應(yīng)用程序和服務(wù)的需要,這使得配置更改更加高效和敏捷。

 - 動(dòng)態(tài)域名服務(wù):Nacos 支持加權(quán)路由,使您更容易在數(shù)據(jù)中心的生產(chǎn)環(huán)境中實(shí)現(xiàn)中間層負(fù)載平衡、靈活的路由策略、流控制和簡(jiǎn)單的 DNS 解析服務(wù)。它幫助您輕松實(shí)現(xiàn)基于 DNS 的服務(wù)發(fā)現(xiàn),并防止應(yīng)用程序與特定于供應(yīng)商的服務(wù)發(fā)現(xiàn) API 耦合。

 - 服務(wù)和元數(shù)據(jù)管理:Nacos 提供了一個(gè)易于使用的服務(wù)儀表板,可以幫助您管理服務(wù)元數(shù)據(jù)、配置、Kubernetes DNS、服務(wù)運(yùn)行狀況和指標(biāo)統(tǒng)計(jì)數(shù)據(jù)。

這里作者只是列舉了兩個(gè)當(dāng)下比較流行的分布式配置框架,當(dāng)然還有其他的,比如 Disconf 和 Spring Cloud Config 等,但是基本使用頻率沒有 Apollo 和 Nacos 高。

因?yàn)楣P者的公司目前是全面使用 Nacos 來完成微服務(wù)的服務(wù)治理和配置管理,所以作者是優(yōu)先推薦是用 Nacos,主要四基于如下考慮:

 - 開箱即用

 - 功能簡(jiǎn)單高效,上手容易

 - 全面支持 K8s

 - 全面支持云原生

 - 全面支持 Spring Cloud Alibaba

 - 社區(qū)活躍度非常高

 - 匯集了阿里內(nèi)部大流量業(yè)務(wù)場(chǎng)景驗(yàn)證的服務(wù)治理和軟負(fù)載的功能

 - 一個(gè)服務(wù)就可以完成服務(wù)治理和配置管理,節(jié)約機(jī)器資源。

以上是“分布式鏈路追蹤SkyWalking如何配置管理”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI