跳到主要内容

调试技巧

测试与 istiod 的连通性

测试数据面是否能连上 xDS 端口:

nc -vz istiod-1-8-1.istio-system 15012

测试 istiod 监控接口:

$ kubectl -n debug exec debug-6fd7477c9d-brqmq -c istio-proxy -- curl -sS istiod-1-8-1.istio-system:15014/debug/endpointz
[

{"svc": "cert-manager-webhook-dnspod.cert-manager.svc.cluster.local:https", "ep": [
{
"service": {
"Attributes": {
"ServiceRegistry": "Kubernetes",
"Name": "cert-manager-webhook-dnspod",
"Namespace": "cert-manager",
"Labels": {

没报错,正常返回 json 说明数据面能正常连接控制面

配置 accesslog

配置方法参考 这里

调整 proxy 日志级别

配置方法参考 这里

获取 metrics

kubectl -n test exec -c istio-proxy htmall-6657db8f8f-l74qm -- curl -sS localhost:15090/stats/prometheus

查看 envoy 配置

导出 envoy 配置:

kubectl exec -it -c istio-proxy $POD_NAME -- curl 127.0.0.1:15000/config_dump > dump.json

导出 envoy 全量配置(包含 EDS):

kubectl exec -it -c istio-proxy $POD_NAME -- curl 127.0.0.1:15000/config_dump?include_eds > dump.json