Istio部署说明

Istio的系统组件

  • 控制平面:默认部署于istio-system名称空间

    • istiod

    • ingress-gateway
    • egress-gateway
    • Addons
      • kiali
      • prometheus
      • grafana
      • jaeger
  • 数据平面:默认部署为某名称空间下的各pod的Sidecar Container
    • istio-proxy

Istio部署方法

istioctl

  • Istio的专用管理工具,支持定制控制平面及数据平面

  • 通过命令行的选项支持完整的 IstioOperator API

  • 命令行各选项可用于单独设置、以及接收包含IstioOperator自定义资源(CR)的yaml文件

    • 各CR资源对应组件的升级等功能,需要由管理员手动进行

Istio Operator

  • Istio相关的自定义资源(CR)的专用控制器,负责自动维护由CR定义的资源对象

  • 管理员根据需要定义相应的CR配置文件,提交至Kubernetes API Server后,即可由Operator完成相应的操作

helm

  • 基于特定的Chart,亦可由Helm安装及配置Istio

  • 截止目前,该功能仍处于alpha阶段

Istio内置的部署档案

  • istioctl提供了内置配置文件(配置档案)用于快速部署

    • default:根据IstioOperator API的默认设置启用相关的组件,适用于生产环境;

    • demo:会部署较多的组件,旨在演示istio的功能,适合运行Bookinfo一类的应用程序

    • minimal:类似于default profile,但仅部署控制平面组件

    • remote:用于配置共享Control Plane的多集群环境

    • empty:不部署任何组件,通常帮助用户在自定义profile时生成基础配置信息

    • preview:包含预览性配置的profile,用于探索Istio的新功能,但不保证稳定性、安全性和性能

  • 配置档案

    • 各配置档案,事实上是IstioOperator API内置的特定CR格式的配置文件

      • CR名称:istiooperators

      • 所属的资源群组:install.istio.io/v1alpha1

    • 因此,各配置档案也是该资源类型下的资源对象的定义

  • 了解内置的配置档案

    • ~$ istioctl profile list

    • ~$ istioctl profile dump [PROFILE]

      • 例如,打印default档案的资源配置信息

        • ~$ istioctl profile dump default

      • --config-path选项可用于仅打印指定的配置段

    • ~$ istioctl profile diff PROFILE1 PROFILE2

IstioOperator API各配置段简要说明

  • IstioOperator API主要包括以下几个配置段

    • components:组件配置参数

    • hub:获取各组件镜像的仓库,默认为“docker.io/istio”

    • meshConfig:网格(数据平面)相关的配置参数

    • values:传递给Chart的各参数值

  • IstioOperator API中定义的组件

    • base

    • pilot

    • ingressGateways

    • egressGateways

    • cni

    • istioRemote

  • 以上配置段中的各参数,均可在istioctl命令行中使用--set选项进行独立设置;例如,部署时为default配置极档案启用debug日志功能,可使用如下命令
    • ~$ istioctl install --set profile=default --set values.global.logging.level=debug

Istio 使用的端口

  • 为避免与 sidecar 发生端口冲突,应用程序不应使用 Envoy 使用的任何端口。

Istio sidecar 代理(Envoy)使用以下端口和协议

Istio 控制平面 (istiod) 使用以下端口和协议

posted @ 2022-10-10 14:02  小吉猫  阅读(227)  评论(0编辑  收藏  举报