5.4 常用的istioctl命令 |
|
本节主要介绍常用的istioctl命令。
·--context:指定istioctl使用kubeconfig中的哪个context,默认值为空,表示使用kubeconfig里的default context。
·--istioNamespace:指定Istio所在命名空间,默认值为istio-system,短参数-i。
·--kubeconfig:指定kubeconfig文件的路径,默认值为空,表示使用~/.kube/config文件,短参数-c。
·--namespace:指定操作的namespace,默认值为空,表示使用default命名空间,短参数-n。
先说明一下,如下的示例中productpage-v1-8d69b45c-2z8v5为官方示例bookinfo中productpage的Pod名称,需要通过如下命令先获取Pod名称:
$ kubectl get pod productpage
(1)手动注入Envoy代理
手动注入Envoy代理到Pod中,用于没有开启自动注入的情况,可以使用参数--file(-f)指定配置文件,使用形式如下:
istioctl kube-inject [flags]
示例如下:
$ kubectl apply -f <(istioctl kube-inject -f mydeployment.yaml) $ istioctl kube-inject -f deployment.yaml -o deployment-injected.yaml $ kubectl get deployment -o yaml | istioctl kube-inject -f - | kubectl apply -f -
(2)获取启动时的配置信息
在指定的Pod中获取Envoy实例启动时的配置信息,使用形式如下:
istioctl proxy-config bootstrap <pod-name> [flags]
示例如下:
$ istioctl proxy-config bootstrap productpage-v1-8d69b45c-2z8v5
(3)获取集群配置信息
从指定Pod中的Envoy实例里读取集群配置信息,使用形式如下:
istioctl proxy-config cluster <pod-name> [flags]
示例如下:
$ istioctl proxy-config cluster productpage-v1-8d69b45c-2z8v5 $ istioctl proxy-config cluster productpage-v1-8d69b45c-2z8v5 --port 9080 $ istioctl proxy-config cluster productpage-v1-8d69b45c-2z8v5 --fqdn details.default.svc.cluster.local --direction outbound -o json
(4)获取监听器信息
从指定Pod中的Envoy实例里读取监听器信息,使用形式如下:
istioctl proxy-config listener <pod-name> [flags]
示例如下:
$ istioctl proxy-config listener productpage-v1-8d69b45c-2z8v5 $ istioctl proxy-config listener productpage-v1-8d69b45c-2z8v5 --port 9080 $ istioctl proxy-config listener productpage-v1-8d69b45c-2z8v5 --type HTTP --address 0.0.0.0 -o json
(5)获取路由配置信息
从指定Pod中的Envoy实例里读取路由配置信息,使用形式如下:
istioctl proxy-config route <pod-name> [flags]
示例如下:
$ istioctl proxy-config route productpage-v1-8d69b45c-2z8v5 $ istioctl proxy-config route productpage-v1-8d69b45c-2z8v5 --name 9080 $ istioctl proxy-config route productpage-v1-8d69b45c-2z8v5 --name 9080 -o json
(6)获取配置的同步状态
获取Pilot到网格中每个Envoy的配置同步状态,使用形式如下:
istioctl proxy-status [<proxy-name>] [flags]
示例如下:
$ istioctl proxy-status $ istioctl proxy-status productpage-v1-8d69b45c-2z8v5.default