目标
- 在阿里云容器服务 Kubernetes 集群上部署 Istio 服务网格
- 实践灰度发布、故障注入、熔断等 Istio 流量管理特性
- 安装和设置 kubectl 客户端,请参考不同的操作系统,如果已经安装请忽略:
- macOS
curl -LO https://kubectl.oss-cn-hangzhou.aliyuncs.com/macos/kubectl
chmod +x ./kubectl
sudo mv ./kubectl /usr/local/bin/kubectl
kubectl --help
- Linux
curl -LO https://kubectl.oss-cn-hangzhou.aliyuncs.com/linux/kubectl
chmod +x ./kubectl
sudo mv ./kubectl /usr/local/bin/kubectl
kubectl --help
- Windows
把 https://kubectl.oss-cn-hangzhou.aliyuncs.com/windows/kubectl.exe 放到系统PATH路径下
kubectl --help
配置 kubectl 连接 Kubernetes 集群的配置,可参考文档 通过kubectl连接Kubernetes集群
实验步骤 部署Istio- 登录容器服务控制台,在集群列表中选择一个集群,打开更多 - 部署 Istio
- 保持默认配置,点击"部署 Istio"
- 等待完成后,Istio 已经成功部署在 Kubernetes 集群中
- 使用 kiali 查看服务网格可视化
kubectl port-forward -n istio-system "$(kubectl get -n istio-system pod --selector=app=kiali -o jsonpath='{.items..metadata.name}')" 20001
在本地浏览器中访问 http://localhost:20001 ,使用默认账户 admin/admin 登录
灰度发布- 创建命名空间并开启 Sidecar 自动注入:单击左侧导航栏中的集群 > 命名空间,进入命令空间页面,创建一个名称为
demo
的命名空间,并为其添加一个istio-injection:enabled
的标签 - 单击左侧导航栏中服务网格 > 虚拟服务,进入虚拟服务(Virtual Service)页面,点击创建,创建一个简单的示例应用,指定应用名称为
istio-app
,指定应用版本为v1
,选择刚刚创建的命名空间demo
- 配置应用容器,使用如下镜像:
registry.cn-beijing.aliyuncs.com/test-node/node-server:v1
- 配置服务,服务名称为
istio-app-svc
,类型为虚拟集群 IP ,服务端口和容器端口均为8080 - 提交应用配置,将会自动创建 Deployment、Service、DestinationRule、VirtualService
- 单击导航栏中的应用 > 容器组,确认所有的 Pod 都已经正确的定义和启动
- 创建服务客户端测试应用
kubectl apply -n demo -f -
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?