二 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!

推荐阅读