k8scloude1机器的地址为192.168.110.130,我们可以在浏览器中打开 http://192.168.110.130:30754,进入 kiali,kiali首页如下:

文章插图
在online-boutique命名空间点击Graph,查看服务的拓扑结构

文章插图
下面是 Boutique 图表在 Kiali 中的样子:
该图向我们展示了服务的拓扑结构,并将服务的通信方式可视化 。它还显示了入站和出站的指标,以及通过连接 Jaeger 和 Grafana(如果安装了)的追踪 。图中的颜色代表服务网格的健康状况 。红色或橙色的节点可能需要注意 。组件之间的边的颜色代表这些组件之间的请求的健康状况 。节点形状表示组件的类型,如服务、工作负载或应用程序 。

文章插图
七.流量路由7.1 流量路由我们已经建立了一个新的 Docker 镜像,它使用了与当前运行的前端服务不同的标头 。让我们看看如何部署所需的资源并将一定比例的流量路由到不同的前端服务版本 。
在我们创建任何资源之前,让我们删除现有的前端部署(
kubectl delete deploy frontend)[root@k8scloude1 ~]# kubectl get deploy | grep frontendfrontend1/1114d21h[root@k8scloude1 ~]# kubectl delete deploy frontenddeployment.apps "frontend" deleted[root@k8scloude1 ~]# kubectl get deploy | grep frontend重新创建一个前端deploy,名字还是frontend,但是指定了一个版本标签设置为 original。yaml文件如下:[root@k8scloude1 ~]# vim frontend-original.yaml[root@k8scloude1 ~]# cat frontend-original.yamlapiVersion: apps/v1kind: Deploymentmetadata:name: frontendspec:selector:matchLabels:app: frontendversion: originaltemplate:metadata:labels:app: frontendversion: originalannotations:sidecar.istio.io/rewriteAppHTTPProbers: "true"spec:containers:- name: serverimage: gcr.lank8s.cn/google-samples/microservices-demo/frontend:v0.2.1ports:- containerPort: 8080readinessProbe:initialDelaySeconds: 10httpGet:path: "/_healthz"port: 8080httpHeaders:- name: "Cookie"value: "shop_session-id=x-readiness-probe"livenessProbe:initialDelaySeconds: 10httpGet:path: "/_healthz"port: 8080httpHeaders:- name: "Cookie"value: "shop_session-id=x-liveness-probe"env:- name: PORTvalue: "8080"- name: PRODUCT_CATALOG_SERVICE_ADDRvalue: "productcatalogservice:3550"- name: CURRENCY_SERVICE_ADDRvalue: "currencyservice:7000"- name: CART_SERVICE_ADDRvalue: "cartservice:7070"- name: RECOMMENDATION_SERVICE_ADDRvalue: "recommendationservice:8080"- name: SHIPPING_SERVICE_ADDRvalue: "shippingservice:50051"- name: CHECKOUT_SERVICE_ADDRvalue: "checkoutservice:5050"- name: AD_SERVICE_ADDRvalue: "adservice:9555"- name: ENV_PLATFORMvalue: "gcp"resources:requests:cpu: 100mmemory: 64Milimits:cpu: 200mmemory: 128Mi创建deploy[root@k8scloude1 ~]# kubectl apply -f frontend-original.yamldeployment.apps/frontend created#deploy创建成功[root@k8scloude1 ~]# kubectl get deploy | grep frontendfrontend1/11143s#pod也正常运行[root@k8scloude1 ~]# kubectl get pod | grep frontendfrontend-ff47c5568-qnzpt2/2Running0105s现在我们准备创建一个 DestinationRule,定义两个版本的前端——现有的(original)和新的(v1) 。[root@k8scloude1 ~]# vim frontend-dr.yaml[root@k8scloude1 ~]# cat frontend-dr.yamlapiVersion: networking.istio.io/v1alpha3kind: DestinationRulemetadata:name: frontendspec:host: frontend.online-boutique.svc.cluster.localsubsets:- name: originallabels:version: original- name: v1labels:version: 1.0.0创建DestinationRule[root@k8scloude1 ~]# kubectl apply -f frontend-dr.yamldestinationrule.networking.istio.io/frontend created[root@k8scloude1 ~]# kubectl get destinationruleNAMEHOSTAGEfrontendfrontend.online-boutique.svc.cluster.local12s
经验总结扩展阅读
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 九 前后端分离项目:实现"添加"功能(后端接口)
- 电视剧远大前程十三太保中的瞎子是谁?
- 2023年9月23日财神方位吉凶 九月二十三日财神方位
- 十一 Istio:向istio服务网格中引入虚拟机
- 四 SoringCloud -微信获取用户信息
- 2023年农历七月二十三可不可以结婚
- 2023年农历九月二十三是不是领证黄道吉日 今天领证顺利吗
- 九 Istio:istio安全之授权
- 快读《ASP.NET Core技术内幕与项目实战》WebApi3.1:WebApi最佳实践
- 下雨天迪士尼有哪些项目不能玩 下雨天迪士尼怎么玩
