总目录索引:istio 从入门到放弃系列
1、安装bookinfo应用
2、设置kiali
kiali 是使用 istioctl 客户端工具安装 demo profile 时自动就会安装的组件,kiali 是一款 istio 服务网格可视化工具,提供了服务拓扑图、全链路跟踪、指标遥测、配置校验、健康检查等功能。
3、kiali可视化bookinfo
登录 kiali,进入 overview 菜单,选中 bookinfo 应用,如下图所示
点击进入 test 命名空间下的 "4 Applications" , 进入 "Applications" 视图,可见 bookinfo 样例下的 4 个微服务,并且当前这 4 个微服务状态都健康(Health ✔)如下图所示:
4、注入和观察流量
4.1 查看gateway代理端口
kubectl get gateway -n test bookinfo-gateway -oyaml
4.2 使用NodePort+ip的方式访问
kubectl get svc -n istio-system
通过 curl 命令打入流量:
while true; do curl http://192.168.0.118:32761/productpage; done
最关键的可视化内容可以查看 “Graph” 菜单,如下所示:
下面重点介绍 “Graph” 视图下的功能:
1 命名空间 2 分类图展示: app(应用视角,label 名为 app,并且 app 值相同的资源算作一类 app) service(k8s服务视角)、versioned app(标记版本应用视角) workload(k8s工作负载视角,比如 deployment、job、statefulset、daemonset) 3 指标展示: Requests per second(每秒多少请求) Requests percent(请求分布占比) Response time(响应时间) 4 显示过滤器:各种显示开关,用复选框表示;可以选择 Traffic Animation,爽爽看 5 规格过滤显示:可以把它类比为 grep 命令,通过定义好的过滤规则,高亮图的某些组件或元素,比如在 find 字段输入 httpout > 0 后回车,可看到如下截图所示 6 三角形表示 k8s 服务 7 圆形表示 k8s workload 8 命名空间 9 时间间隔的流量选择器:比如 1m(分钟)、5m、10m、30m、1h(小时)、3h、6h 10 页面刷新频率:比如每 10 秒、每 15 秒、每 30 秒、每 1 分钟、每 5 分钟、每 15 分钟 11 入口流量、出口流量和总流量显示 12 layout:不同展示风格(共有三种,选择自己的喜好) 13 图例说明:解释图中各个形状各代表什么意思