使用服务网格提升可观测性与管理能力
1. 手动测试 API
可以通过运行以下命令手动测试 API:
ACCESS_TOKEN=$(curl -k https://writer:[email protected]/oauth2/token -d grant_type=client_credentials -s | jq .access_token -r)
echo ACCESS_TOKEN=$ACCESS_TOKEN
curl -ks https://minikube.me/product-composite/1 -H "Authorization: Bearer $ACCESS_TOKEN" | jq .productId
期望响应中返回请求的产品 ID 为 1。
2. 观测服务网格
在使用 Kiali 和 Jaeger 观测服务网格之前,需要处理 Kubernetes 存活和就绪探针的健康检查产生的噪声。之前,健康检查和 API 请求使用相同端口,这会使 Istio 收集两者的指标,导致 Kiali 图表杂乱。可以通过为健康检查使用不同端口来解决这个问题。
2.1 配置端口
- 微服务 :在所有微服务的通用配置文件
config-repo/application.yml
中添加management.server.port: 4004
,使所有微服务使用端口 4004 暴露健康端点。同时,通用 Helm 图表