• IBM Cloud 快速入门
    • IBM 公有云
      • 前置条件 - IBM 公有云
      • 初始化 Helm 和 Tiller
      • 部署 Istio Helm chart
      • 升级
      • 卸载 Istio
    • IBM 私有云
      • 前置条件 - IBM 私有云
      • 使用 Catalog 模块部署 Istio
      • 升级或回滚
      • 卸载

    IBM Cloud 快速入门

    参照以下说明,在 IBM Cloud 上安装和运行 Istio。你可以选择安装在 IBM 公有云或 IBM 私有云上.

    IBM 公有云

    在 IBM 公有云中,使用 Helm 和 IBM Cloud Kubernetes Service 安装和运行 Istio。

    本指南将安装 Istio 的当前发布版本。

    前置条件 - IBM 公有云

    • 安装 IBM Cloud CLI,IBM Cloud Kubernetes Service 插件,以及 Kubernetes CLI。Istio 需要 Kubernetes 1.9 版本及更新的版本。确保安装的 kubectl CLI 版本与集群中 Kubernetes 版本一致。
    • 确保 Kubernetes 集群的版本是 1.9 或之后的版本。如果你还没有一个可用的集群,创建一个 1.9 版本或更新版本的集群。
    • 通过执行 ibmcloud ks cluster-config <cluster_name_or_ID> 将 CLI 指向你的集群,然后对输出的命令进行拷贝粘贴。

    初始化 Helm 和 Tiller

    • 安装 Helm CLI。

    • kube-system namespace 为 Tiller 创建一个 Service account,以及一个与 pod tiller-deploy 绑定的 Kubernetes RBAC 集群角色:

    1. apiVersion: v1
    2. kind: ServiceAccount
    3. metadata:
    4. name: tiller
    5. namespace: kube-system
    6. ---
    7. apiVersion: rbac.authorization.k8s.io/v1
    8. kind: ClusterRoleBinding
    9. metadata:
    10. name: tiller
    11. roleRef:
    12. apiGroup: rbac.authorization.k8s.io
    13. kind: ClusterRole
    14. name: cluster-admin
    15. subjects:
    16. - kind: ServiceAccount
    17. name: tiller
    18. namespace: kube-system
    • 执行创建 Service account 并绑定集群角色:
    1. $ kubectl create -f rbac-config.yaml
    • 初始化 Helm 并安装 Tiller:
    1. $ helm init --service-account tiller
    • 将 IBM Cloud 的 Helm 仓库地址添加到你的 Helm 实例:
    1. $ helm repo add ibm-charts https://registry.bluemix.net/helm/ibm-charts

    部署 Istio Helm chart

    • 如果使用 2.10.0 之前的 Helm 版本,请通过 kubectl apply 命令安装 Istio 的 CRD,并等待几秒钟:
    1. $ kubectl apply -f https://raw.githubusercontent.com/IBM/charts/master/stable/ibm-istio/templates/crds.yaml
    • 在你的集群中安装 Helm chart:
    1. $ helm install ibm-charts/ibm-istio --name=istio --namespace istio-system
    • 确保 Istio 的 9 个 Pod 和 Prometheus 的 pod 已经完全部署好:
    1. $ kubectl get pods -n istio-system
    2. NAME READY STATUS RESTARTS AGE
    3. istio-citadel-748d656b-pj9bw 1/1 Running 0 2m
    4. istio-egressgateway-6c65d7c98d-l54kg 1/1 Running 0 2m
    5. istio-galley-65cfbc6fd7-bpnqx 1/1 Running 0 2m
    6. istio-ingressgateway-f8dd85989-6w6nj 1/1 Running 0 2m
    7. istio-pilot-5fd885964b-l4df6 2/2 Running 0 2m
    8. istio-policy-56f4f4cbbd-2z2bk 2/2 Running 0 2m
    9. istio-sidecar-injector-646655c8cd-rwvsx 1/1 Running 0 2m
    10. istio-statsd-prom-bridge-7fdbbf769-8k42l 1/1 Running 0 2m
    11. istio-telemetry-8687d9d745-mwjbf 2/2 Running 0 2m
    12. prometheus-55c7c698d6-f4drj 1/1 Running 0 2m

    升级

    • 将你的 Istio Helm chart 升级到最新版本:
    1. $ helm upgrade -f config.yaml istio ibm/ibm-istio

    卸载 Istio

    • 卸载 Istio 的 Helm 部署:
    1. $ helm del istio --purge

    如果你的 Helm 版本低于 2.9.0,那么在重新部署新版本的 Istio Chart 之前,您需要手动清理额外的 Job 资源:

    1. $ kubectl -n istio-system delete job --all
    • 如果需要,删除 Istio CRD:
    1. $ kubectl delete -f https://raw.githubusercontent.com/IBM/charts/master/stable/ibm-istio/templates/crds.yaml

    IBM 私有云

    使用 Catalog 模块在 IBM 私有云安装和运行 Istio。

    本指南将安装 Istio 的当前发布版本。

    前置条件 - IBM 私有云

    • 你需要有一个可用的 IBM 私有云集群。否则,你可以参照安装 IBM 私有云的指引创建一个 IBM 私有云集群。

    使用 Catalog 模块部署 Istio

    • 登录到 IBM 私有云 控制台。
    • 点击导航栏右侧的 Catalog
    • 点击搜索框右侧的 Filter 并选中 ibm-charts 复选框。
    • 点击左侧导航窗格的 Operations

    IBM 私有云 - Istio 目录

    IBM 私有云 - Istio 目录
    • 点击右侧面板中的 ibm-istio

    IBM 私有云 - Istio 目录

    IBM 私有云 - Istio 目录
    • (可选的)使用 CHART VERSION 的下拉功能修改 Istio 版本。
    • 点击 Configure 按钮。

    IBM 私有云 - 安装 Istio

    IBM 私有云 - 安装 Istio
    • 输入 Helm 部署实例的名称(例如:istio-1.0.3),并选择 istio-system 作为目标 namespace。
    • 同意许可条款。
    • (可选的)点击 All parameters 自定义安装参数。
    • 点击 Install 按钮。

    IBM 私有云 - 安装 Istio

    IBM 私有云 - 安装 Istio

    安装完成后,你可以在 Helm Releases 页通过搜索实例名找到它。

    IBM 私有云 - 安装 Istio

    IBM 私有云 - 安装 Istio

    升级或回滚

    • 登录到 IBM 私有云控制台。
    • 点击导航栏左侧的菜单按钮。
    • 点击 Workloads 并选中 Helm Releases
    • 通过实例名找到已安装的 Istio。
    • 点击 Action 然后选择 upgraderollback

    IBM 私有云 - Istio 升级或回滚

    IBM 私有云 - Istio 升级或回滚

    IBM 私有云 - Istio 升级或回滚

    IBM 私有云 - Istio 升级或回滚

    卸载

    • 登录到 IBM 私有云控制台。
    • 点击导航栏左侧的菜单按钮。
    • 点击 Workloads 并选中 Helm Releases
    • 通过实例名找到已安装的 Istio。
    • 点击 Action 并选择 delete

    IBM 私有云 - 卸载 Istio

    IBM 私有云 - 卸载 Istio