系列文章:
总目录索引:九析带你轻松完爆 istio 服务网格系列教程
目录
1 前言
2 邀约
3 故障注入之中止
4 Istio 故障注入之中止实例
4.1 客户端资源文件
4.2 k8s 服务文件
4.3 部署工作负载(deployment)
4.4 虚拟服务文件
5 验证故障注入
1 前言
如果你对博客有任何疑问,请告诉我。
2 邀约
你可以从 b 站搜索 “九析”,获取免费的、更生动的视频资料:
3 故障注入之中止
上章介绍了故障注入原理和实操,知道了故障注入多用在两个场景:
延迟:模拟增加网络延迟或上游服务过载
中止:模拟服务故障而导致调用服务不可用。中止通常以 HTTP 错误代码或 TCP 连接失败表示
在上节中已经介绍了故障注入延迟的实例,这节重点介绍故障注入的中止。
4 Istio 故障注入之中止实例
本实例包括 4 个资源文件,3 个 k8s 相关,1 个 istio 相关:
jiuxi-client.yaml
jiuxi-nginx-svc.yaml
jiuxi-nginx-deploy.yaml
jiuxi-nginx-vs.yaml
4.1 客户端资源文件
jiuxi-client.yaml 内容如下:
执行如下语句进行 Istio 注入,注入后,此 client 将处于网格之内:
istioctl kube-inject -f jiuxi-client.yaml | kubectl apply -f -
Istio 注入成功成功如下图所示:
4.2 k8s 服务文件
jiuxi-nginx-svc.yaml 内容如下:
执行如下语句部署 service:
kubectl apply -f jiuxi-nginx-svc.yaml
4.3 部署工作负载(deployment)
jiuxi-nginx-deploy.yaml 内容如下:
部署语句如下:
kubectl apply -f jiuxi-nginx-deploy.yaml
4.4 虚拟服务文件
故障注入就在虚拟服务资源中,内容如下:
部署语句如下:
kubectl apply -f jiuxi-nginx-vs.yaml
自此,整个实例部署完毕。
5 验证故障注入
执行如下语句登录客户端:
kubectl exec -it client-5b77d5949f-clrb7 -- sh
使用 wget 访问 nginx-svc:
wget -q -O - http://nginx-svc
发现模拟后端服务中止失效。如下图所示:
自此,九析带你轻松完爆故障注入之中止。