自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

快速上手 Linkerd v2 Service Mesh(服務網(wǎng)格)

網(wǎng)絡 通信技術
安裝 Linkerd 很容易。首先,您將在本地計算機上安裝 CLI(命令行界面)。使用此 CLI,然后您將控制平面安裝到您的 Kubernetes 集群上。最后,您將通過向它們添加 Linkerd 的數(shù)據(jù)平面來“網(wǎng)格化(mesh)”您自己的一個或多個服務。

在本指南中,我們將引導您了解如何將 Linkerd 安裝到您的 Kubernetes 集群中。然后我們將部署一個示例應用程序來展示 Linkerd 的功能。

安裝 Linkerd 很容易。首先,您將在本地計算機上安裝 CLI(命令行界面)。使用此 CLI,然后您將控制平面安裝到您的 Kubernetes 集群上。最后,您將通過向它們添加 Linkerd 的數(shù)據(jù)平面來“網(wǎng)格化(mesh)”您自己的一個或多個服務。

設置

在我們做任何事情之前,我們需要確保您可以訪問 Kubernetes 集群并在本地機器上運行 kubectl 命令。(如果您還沒有 Kubernetes 集群,一個簡單的選擇是在您的本地機器上運行一個。有很多方法可以做到這一點,包括 kind、k3d、Docker for Desktop 等更多。)

您可以通過運行以下命令來驗證設置:

  1. kubectl version --short 

您應該看到包含 Client Version 和 Server Version 組件的輸出。

現(xiàn)在我們有了集群,我們將安裝 Linkerd CLI 并使用它來驗證您的集群是否能夠托管 Linkerd 控制平面。

安裝 CLI

如果這是您第一次運行 Linkerd,則需要將 linkerd 命令行界面 (CLI) 下載到本地計算機上。 CLI 將允許您與 Linkerd 部署進行交互。

要手動安裝 CLI,請運行:

  1. curl -sL https://run.linkerd.io/install | sh 

請務必按照說明將其添加到您的路徑中。

或者,如果您使用 Homebrew,則可以使用 brew install linkerd 安裝 CLI。您還可以通過 Linkerd releases 頁面直接下載 CLI。

安裝后,使用以下命令驗證 CLI 是否正常運行:

  1. linkerd version 

您應該會看到 CLI 版本以及 Server version: unavailable。這是因為您尚未在集群上安裝控制平面。別擔心 - 我們會盡快解決這個問題。

驗證你的 Kubernetes 集群

Kubernetes 集群可以通過多種不同的方式進行配置。在我們安裝 Linkerd 控制平面之前,我們需要檢查并驗證所有配置是否正確。要檢查您的集群是否已準備好安裝 Linkerd,請運行:

  1. linkerd check --pre 

如果有任何檢查未通過,請確保按照提供的鏈接并在繼續(xù)之前解決這些問題。

安裝控制平面(Control Plane)在你的集群

現(xiàn)在您已經(jīng)在本地運行了 CLI,并且集群已經(jīng)準備就緒,是時候安裝控制平面了。

第一步是安裝控制平面核心。為此,請運行:

  1. linkerd install | kubectl apply -f - 

在此命令中,linkerd install 命令生成一個 Kubernetes manifest,其中包含所有必要的控制平面資源。將此清單通過管道傳輸?shù)? kubectl apply 然后指示 Kubernetes 將這些資源添加到您的集群中。

現(xiàn)在讓我們等待控制平面完成安裝。根據(jù)集群 Internet 連接的速度,這可能需要一兩分鐘。通過運行以下命令等待控制平面準備就緒(并驗證您的安裝):

  1. linkerd check 

接下來,我們將安裝一些擴展。擴展為 Linkerd 添加了非關鍵但通常有用的功能。對于本指南,我們需要 viz 擴展,它會將 Prometheus、儀表板(dashboard)和指標組件(metrics components)安裝到集群上:

  1. linkerd viz install | kubectl apply -f - # on-cluster metrics stack 

或者,此時您可以安裝其他擴展。例如:

  1. ## optional 
  2. linkerd jaeger install | kubectl apply -f - # Jaeger collector and UI 
  3. linkerd multicluster install | kubectl apply -f - # multi-cluster components 

請注意,擴展也可以來自第三方來源。例如,Buoyant Cloud 是針對 Linkerd 的,可免費托管指標儀表板(metrics dashboard)??梢耘c viz 一起安裝,但它是可選的:

  1. ## optional 
  2. curl -sL buoyant.cloud/install | sh 
  3. linkerd buoyant install | kubectl apply -f - # hosted metrics dashboard 

一旦您安裝了 viz 擴展程序和您想要的任何其他擴展程序,我們將再次驗證所有內(nèi)容:

  1. linkerd check 

假設一切都是綠色的,我們已準備好進行下一步!

瀏覽 Linkerd

安裝并運行控制平面和擴展后,您現(xiàn)在可以通過運行以下命令查看 Linkerd 儀表板:

  1. linkerd viz dashboard & 

 

此命令設置從本地系統(tǒng)到 linkerd-web pod 的端口。(也可以暴露儀表板供所有人訪問。)

由于控制平面組件都在其 pod 中安裝了代理,因此每個組件也是數(shù)據(jù)平面本身的一部分。這提供了深入了解控制平面本身在幕后發(fā)生了什么的能力。事實上,你可以運行:

  1. linkerd -n linkerd-viz viz top deploy/web 

這是您通過查看儀表板本身產(chǎn)生的流量!

安裝 demo app

要了解 Linkerd 如何為您的一項服務工作,您可以安裝一個 demo 應用程序。 emojivoto 應用程序是一個獨立的 Kubernetes 應用程序,它混合使用 gRPC 和 HTTP 調(diào)用,允許用戶對他們最喜歡的表情符號進行投票。

通過運行以下命令將 emojivoto 安裝到 emojivoto 命名空間中:

  1. curl -sL https://run.linkerd.io/emojivoto.yml \ 
  2.   | kubectl apply -f - 

在我們對它進行網(wǎng)格(mesh)劃分之前,讓我們先來看看這個應用程序。如果此時您正在使用 Docker Desktop,則可以直接訪問 http://localhost。如果你沒有使用 Docker Desktop,我們需要轉(zhuǎn)發(fā) web-svc 服務。要將 web-svc 本地轉(zhuǎn)發(fā)到端口 8080,您可以運行:

  1. kubectl -n emojivoto port-forward svc/web-svc 8080:80 

現(xiàn)在訪問 http://localhost:8080。

點擊周圍,您可能會注意到 emojivoto 的某些部分已損壞!例如,如果你點擊一個甜甜圈表情符號(doughnut emoji),你會得到一個 404 頁面。別擔心,這些錯誤是故意的。(我們可以使用 Linkerd 來識別問題。如果您對如何準確找出問題感興趣,請查看調(diào)試指南。)

接下來,讓我們通過運行以下命令將 linker 添加到 emojivoto:

  1. kubectl get -n emojivoto deploy -o yaml \ 
  2.   | linkerd inject - \ 
  3.   | kubectl apply -f - 

此命令檢索在 emojivoto 命名空間中運行的所有部署(deployments),通過 linkerd inject 運行清單,然后將其重新應用到集群。linkerd inject 命令向 pod spec 添加注解(annotations),指示 Linkerd 將代理(proxy)作為容器添加(“注入”)到 pod spec 中。(有關更多信息,請參閱自動代理注入。)

與 install 一樣,inject 是純文本操作,這意味著您可以在使用之前檢查輸入和輸出。一旦通過管道傳輸?shù)?kubectl apply,Kubernetes 將執(zhí)行滾動部署(rolling deploy)并使用數(shù)據(jù)平面的代理更新每個 pod,所有這些都沒有任何停機時間。

恭喜!您現(xiàn)在已將 Linkerd 添加到現(xiàn)有服務中!就像控制平面一樣,可以驗證一切是否按照數(shù)據(jù)平面應有的方式工作。要進行此檢查,請運行:

  1. linkerd -n emojivoto check --proxy 

監(jiān)測它的運行

您現(xiàn)在可以查看 Linked 面板并查看 demo app 中的所有服務。由于 demo app 附帶了 load generator,我們可以通過運行以下命令查看實時流量指標(live traffic metrics):

  1. linkerd -n emojivoto viz stat deploy 

這將顯示每個部署的“黃金(golden)”指標:

  • 成功率(Success rates)
  • 請求率(Request rates)
  • 延遲分布百分位數(shù)(Latency distribution percentiles)

為了進一步深入,可以使用 top 來實時查看正在調(diào)用哪些路徑:

  1. linkerd -n emojivoto viz top deploy 

為了更深入,我們可以使用 tap 顯示跨單個 pod、deployment 甚至 emojivoto 命名空間中的所有內(nèi)容的請求流:

  1. linkerd -n emojivoto viz tap deploy/web 

如果您想改用瀏覽器,所有這些功能也可在儀表板中使用:

那過去發(fā)生的事情呢?Linkerd 包含 Grafana 來可視化 Prometheus 收集的指標,并附帶一些預配置的儀表板。您可以通過單擊概覽頁面中的 Grafana 圖標來訪問這些。

 

責任編輯:姜華 來源: 黑客下午茶
相關推薦

2022-08-21 07:17:16

LinkerdKubernetes服務網(wǎng)格

2021-07-21 05:23:06

Linkerd Emoji.voto服務網(wǎng)格

2021-12-08 17:54:55

架構(gòu)控制平面

2021-12-11 22:21:00

服務配置文件

2021-04-25 08:48:36

Traefik mes服務網(wǎng)格Kubernetes集

2021-10-31 20:56:25

Mesh ServiceAPI

2021-12-10 18:19:14

授權 Linkerd策略

2023-11-07 17:32:31

Istiok8s

2022-11-24 14:21:27

微服務ISTIO

2023-06-18 19:21:04

技術架構(gòu)服務網(wǎng)格

2020-11-15 23:48:57

服務網(wǎng)格微服務網(wǎng)絡網(wǎng)絡技術

2019-08-29 08:00:00

微服務架構(gòu)服務網(wǎng)格

2020-01-07 09:25:02

服務網(wǎng)格微服務Kubernetes

2022-08-09 08:00:00

服務網(wǎng)格云原生工具

2022-05-16 08:00:00

服務網(wǎng)格架構(gòu)Kuma

2021-06-10 06:24:41

K8S Service Mesemojivoto

2020-07-13 07:00:03

微服務服務網(wǎng)格架構(gòu)

2021-04-02 22:00:50

服務網(wǎng)格微服務

2020-10-21 13:31:53

服務網(wǎng)格開源微服務

2020-08-26 05:45:40

服務網(wǎng)格DevOps開發(fā)
點贊
收藏

51CTO技術棧公眾號