前一章我们介绍了Labels 和 Selectors,知道说可以透过label来检索k8s内的资源。不过除了透过label外,还能够透过Field来进行检索。
顾名思义,能够透过field让你检索k8s内的资源,透过一个或多个的resource fields,去查找k8s的资源物件。
像以下这些就是搜寻范例:
例如这边使用namespace不为default来查询(记得要加-A 不然你就是在default namespace内 查namespace不为default的pod 不可能会有)
kubectl get pods -A --field-selector metadata.namespace!=default
那结果就会像下图这样
并且也支援多个resource type查询
kubectl get pods,services -A --field-selector metadata.namespace!=default
结果如下:
可以看到他会分两段显示符合条件的资源。
能够查哪些field,是看不同的Kubernetes resource type决定的,但是所有的resource type都支援两种field:
假如你使用的是不支援的field,例如下面指令:
kubectl get ingress --field-selector foo.bar=baz
那就会跳出像下面的错误:
Error from server (BadRequest): Unable to find "networking.k8s.io/v1, Resource=ingresses" that match label selector "", field selector "foo.bar=baz": "foo.bar" is not a known field selector: only "metadata.name", "metadata.namespace"
告诉你说这里面只有metadata.name和metadata.namespace。
不过跟label 和 Selectors不同,fields Selectors无法使用in
,notin
这种方式去检索field,只能使用=
, ==
和 !=
目前k8s内常用的东西做了个简单介绍了,下一章会开始介绍跟k8s有关的工具。
<<: [所以我说 Google 你的测试] 品质到底是什麽?
>>: [Day 22] Mattermost - with Drone Plugin
看完这篇文章你会得到的成果图 今天我们要延伸昨天的概念,开始来讲解我们如何设计 controller...
在经历了几篇的MLOps基础概念之後,想在後面的文章带大家看看几个案例。透过案例来学习,会对专案在技...
前置作业 打开专案的 Podfile,新增 Firebase/Auth、GoogleSignIn p...
yo, what's up Semigroup II 多组 Semigroup 进形合并 到目前为止...
我们把前台和後台分成两个不同的专案来处理,透过连接到同一个资料库来建立关系。 而今天就来处理前台的部...