整理自:
https://istio.io/latest/zh/docs/setup/getting-started/
下载 Istio
访问 Istio 发布页面,下载适用于您操作系统的安装文件,或者使用自动化脚本下载并解压最新版本(适用于 Linux 或 macOS):
curl -L https://istio.io/downloadIstio | sh -
上述命令将下载最新版本的 Istio。若要下载特定处理器架构(如 x86_64)和特定版本(例如 Istio 1.20.1),可以通过向命令行传递变量实现:
curl -L https://istio.io/downloadIstio | ISTIO_VERSION=1.20.1 TARGET_ARCH=x86_64 sh -
接下来,切换到 Istio 包目录。假设包名为 istio-1.20.1
:
cd istio-1.20.1
该目录包含以下内容:
samples/
目录下的示例应用程序bin/
目录中的istioctl
客户端二进制文件。
为了方便使用,请将 istioctl
客户端添加至系统路径(适用于 Linux 或 macOS):
export PATH=$PWD/bin:$PATH
安装 Istio
本次安装我们将采用 demo
配置组合,它包含了适合测试的一系列功能集。同时,还有针对生产或性能测试的其他配置组合可选。如果您的平台提供了自定义配置组合,比如 Openshift,在下面命令中替换 demo
配置项。有关更多细节,请查阅相关平台文档。
执行以下命令进行安装,并启用 Alpha Gateway API 功能:
istioctl install --set profile=demo --set values.pilot.env.PILOT_ENABLE_ALPHA_GATEWAY_API=true -y
–set profile=demo:设置安装demo模式
–set values.pilot.env.PILOT_ENABLE_ALPHA_GATEWAY_API=true: Gateway API 配置内部网格(东西)流量,即不仅是 Ingress(南北)流量。 使用 Gateway API配置内部网格流量目前是一个还在开发的实验性特性。 更多:https://istio.io/latest/zh/docs/tasks/traffic-management/request-routing/
若使用 Gateway API 指令,请先确保: 安装 实验版本 的 Gateway API CRD:
kubectl kustomize "github.com/kubernetes-sigs/gateway-api/config/crd/experimental?ref=v1.0.0" | kubectl apply -f -
安装成功后,输出信息如下:
Istio 核心组件已安装:
- Istiod 已安装
- Egress 网关已安装
- Ingress 网关已安装
- 安装完成
最后,为了让 Istio 在部署应用时自动注入 Envoy 边车代理,为默认命名空间添加标签:
kubectl label namespace default istio-injection=enabled