二 Istio:在Kubernetes(k8s)集群上安裝部署istio1.14

目錄

  • 一.模塊概覽
  • 二.系統環境
  • 三.安裝istio
    • 3.1 使用 Istioctl 安裝
    • 3.2 使用 Istio Operator 安裝
    • 3.3 生產部署情況如何?
    • 3.4 平臺安裝指南
  • 四.GetMesh
    • 4.1 如何開始使用?
    • 4.2 如何開始?
    • 4.3 使用 GetMesh 安裝 Istio
    • 4.4 驗證配置
    • 4.5 管理多個 Istio CLI
    • 4.6 CA 集成
  • 五.發現選擇器(Discovery Selectors)
    • 5.1 配置發現選擇器
  • 六.實戰(k8s集群安裝Istio 1.14版本)
    • 6.1 Kubernetes 集群(1.21.9版本)
    • 6.2 Istio 版本支持狀態
    • 6.3 下載 Istio
    • 6.4 安裝 Istio
    • 6.5 啟用 sidecar 注入
    • 6.6 更新和卸載 Istio
一.模塊概覽在安裝 Istio 模塊中,我們將介紹在 Kubernetes 集群上安裝 Istio1.14 的不同方法 。我們將通過詳細的步驟,了解如何在 Kubernetes 集群上安裝 Istio 。
關于istio簡介可以查看博客《Istio(一):服務網格和 Istio 概述》https://www.cnblogs.com/renshengdezheli/p/16836205.html
二.系統環境服務器版本docker軟件版本Kubernetes(k8s)集群版本Istio軟件版本CPU架構CentOS Linux release 7.4.1708 (Core)Docker version 20.10.12v1.21.9Istio1.14x86_64Kubernetes集群架構:k8scloude1作為master節點 , k8scloude2 , k8scloude3作為worker節點
服務器操作系統版本CPU架構進程功能描述k8scloude1/192.168.110.130CentOS Linux release 7.4.1708 (Core)x86_64docker , kube-apiserver,etcd , kube-scheduler,kube-controller-manager,kubelet , kube-proxy,coredns , calicok8s master節點k8scloude2/192.168.110.129CentOS Linux release 7.4.1708 (Core)x86_64docker,kubelet,kube-proxy,calicok8s worker節點k8scloude3/192.168.110.128CentOS Linux release 7.4.1708 (Core)x86_64docker , kubelet,kube-proxy,calicok8s worker節點三.安裝istio我們有兩種方法可以在單個 Kubernetes 集群上安裝 Istio:使用 Istioctl(istioctl)或使用 Istio Operator 。在本模塊中,我們將使用 Istio Operator 在一個 Kubernetes 集群上安裝 Istio 。
3.1 使用 Istioctl 安裝Istioctl 是一個命令行工具 , 我們可以用它來安裝和定制 Istio 的安裝 。使用該命令行工具,我們生成一個包含所有 Istio 資源的 YAML 文件,然后將其部署到 Kubernetes 集群上 。
3.2 使用 Istio Operator 安裝與 istioctl 相比,Istio Operator 安裝的優勢在于,我們不需要手動升級 Istio 。相反,我們可以部署 Istio Operator , 為你管理安裝 。我們通過更新一個自定義資源來控制 Operator,而 Operator 則為你應用配置變化 。
3.3 生產部署情況如何?在決定 Istio 的生產部署模式時,還有一些額外的考慮因素需要牢記 。我們可以配置 Istio 在不同的部署模型中運行 —— 可能跨越多個集群和網絡,并使用多個控制平面 。我們將在高級功能模塊中了解其他部署模式、多集群安裝以及在虛擬機上運行工作負載 。
3.4 平臺安裝指南Istio 可以安裝在不同的 Kubernetes 平臺上 。關于特定云供應商的最新安裝指南 , 請參考平臺安裝文檔 。
https://istio.io/latest/docs/setup/platform-setup/
四.GetMeshIstio 是最受歡迎和發展最快的開源項目之一 。它的發布時間表對企業的生命周期和變更管理實踐來說可能非常激進 。GetMesh 通過針對不同的 Kubernetes 分發版測試所有 Istio 版本以確保功能的完整性來解決這一問題 。GetMesh 的 Istio 版本在安全補丁和其他錯誤更新方面得到積極的支持,并擁有比上游 Istio 提供的更長的支持期 。
一些服務網格客戶需要支持更高的安全要求 。GetMesh 通過提供兩種 Istio 發行版來解決合規性問題 。
  • tetrate 發行版,跟蹤上游 Istio 并可能應用額外的補丁 。
  • tetratefips 發行版 , 是符合 FIPS 標準的 tetrate 版本 。
4.1 如何開始使用?第一步是下載 GetMesh CLI 。你可以在 macOS 和 Linux 平臺上安裝 GetMesh 。我們可以使用以下命令來下載最新版本的 GetMesh 和認證的 Istio 。
4.2 如何開始?第一步是下載 GetMesh CLI 。你可以在 macOS 和 Linux 平臺上安裝 GetMesh 。我們可以使用以下命令下載最新版本的 GetMesh 并認證 Istio 。
#安裝getmesh[root@k8scloude1 ~]# curl -sL https://istio.tetratelabs.io/getmesh/install.sh | bashtetratelabs/getmesh info checking GitHub for latest tagtetratelabs/getmesh info found version: 1.1.4 for v1.1.4/linux/amd64tetratelabs/getmesh info installed /root/.getmesh/bin/getmeshtetratelabs/getmesh info updating user profile (/root/.bash_profile)...tetratelabs/getmesh info the following two lines are added into your profile (/root/.bash_profile):export GETMESH_HOME="$HOME/.getmesh"export PATH="$GETMESH_HOME/bin:$PATH"Finished installation. Open a new terminal to start using getmesh!

推薦閱讀