要使用curl命令过滤获取Kubernetes集群中的Service对象名称包含'abcd',并且端口为8080的Service对象,可以使用以下命令:

curl -k -H 'Authorization: Bearer <YOUR_TOKEN>' \
https://<YOUR_KUBE_API_SERVER>/api/v1/namespaces/default/services?labelSelector=app%3Dabcd \
| jq '.items[] | select(.spec.ports[].port == 8080) | .metadata.name'

这个命令做了以下几个事情:

  1. 使用curl命令发送GET请求到Kubernetes API服务器,获取默认命名空间下的所有Service对象。
  2. 使用labelSelector参数来过滤只返回包含标签'app=abcd'的Service对象。
  3. 使用jq工具来解析返回的JSON数据。
  4. 使用jq的select函数过滤只返回端口为8080的Service对象。
  5. 使用jq的.metadata.name来提取Service对象的名称。

请替换命令中的以下内容:

  • <YOUR_TOKEN>:替换为您的Kubernetes API访问令牌。
  • <YOUR_KUBE_API_SERVER>:替换为您的Kubernetes API服务器地址。

注意:您需要在执行命令的机器上安装curl和jq工具。

使用curl命令获取K8s集群中特定Service对象

原文地址: https://www.cveoy.top/t/topic/qe3M 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录