我通过kubeadm设置了一个kubernetes,一切正常。 我只是一时兴起:我如何找到一些由本地主机上由kube-proxy启动的端口所依赖的pod或服务?
[root@k8s-node1 ~]# netstat -tnlp|grep 80
tcp 0 0 172.19.5.38:8080 0.0.0.0:* LISTEN 13918/kube-proxy
tcp 0 0 172.19.5.38:80 0.0.0.0:* LISTEN 13918/kube-proxy
我想知道80或8080属于哪个吊舱或服务?假设我已经忘记了我提交给kubernetes的哪个Yaml文件。
thx
答案 0 :(得分:0)
您始终可以在Kubernetes中describe
个对象。
例如,如果要检查服务上正在使用哪些端口,则必须使用以下命令。
$ kubectl get svc -o wide --all-namespaces
NAMESPACE NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE SELECTOR
default kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 3m39s <none>
kube-system kube-dns ClusterIP 10.96.0.10 <none> 53/UDP,53/TCP,9153/TCP 3m38s k8s-app=kube-dns
如果要从部署中检查Ports
,可以使用kubectl describe deploy <deploymentName>
并将其grep用作上下文。它将同样适用于Pod
$ kubectl describe deploy <deploymentName>| grep Port
Port: 80/TCP
Host Port: 0/TCP
此外,如果您不记得用来创建Pod / Deployment的Yaml,可以使用edit
进行检查。
$ kubectl edit deployment <deploymentName> -o yaml
它将显示YAML文件(在VI中),该文件是根据部署和一些其他状态显示的。
让我知道这是帮助还是您还有其他疑问。