标签:Kubernete 实例 选择 其他 http 内容 逗号 对象 key
本章内容涵盖
kubectl get pods 命令默认不会列出任何标签,但我们可以使用 --show-labels 选项来查看 :
kubectl get po --show-labels
如果你只对某些标签感兴趣,可以使用 L 选项指定它们并将它们分别显示在 自己的列中,而不是列出所有标签。
kubectl get po -L creation_method,env
kubectl label pod pod名 key=values
kubectl label pod pod名 key=values --overwrite
标签选择器允许我们选择标记有特定标签的 pod 子集, 并对这些 pod 执行操作。是一种能够根据是否包含key/values来进行过滤资源的准则。
标签选择器根据资源的以下条件来选择资源 :
使用逗号分隔的情况下,即可使用多个条件匹配。
通过节点标签和节点标签选择器完成 把pod调度到符合条件的节点上
(标签相关的操作都一样,不区分具体是什么资源)
kubectl label node node名 标签key=标签values
kubectl get nodes -l 标签key=标签values
通过节点选择器来实现:节点上打上需要的标签,然后在Pod的yaml文件中通过nodeSelector来进行匹配
以上只是一个关于标签和标签选择器是如何工作以及如何使用它们影响 Kubernetes 操作的快速演示。
除了标签,pod和其他资源还可以包含注解。形式也是key:values,本质很相似。作用是为了展示任何你想要展示的信息。
我们己将注解 mycompany.com/someannotation 添加为值 foo bar。使用这种格式的注解键来避免键冲突是一个好方法。当不同的工具或库向对象添加注 解时,如果它们不像我们刚刚那样使用唯一的前缀,可能会意外地覆盖对方的注解。
通过命名空间可以把资源对象分割成完全独立且不重叠的组,可以实现将包含大量组件的复杂系统拆分为更小的不同组,比如将资源分配为生产、开发和测试环境等,命名空间为资源名称提供了一个作用域。除了隔离资源,命名空间还可用于仅允许某些用户访问某些特定资源,甚至限 制单个用户可用的计算资源数量。相同命名空间内的资源名保证唯一即可,因此不同的命名空间下可以使用相同的资源名。这样可以注意 节点资源是全局独立不被约束在命名空间下的。
kubectl get ns
如果没有单独指定命名空间,默认显示的就是default命名空间下的资源
查看指定的命名空间下的资源,使用方法:-n 命名空间 ,-n等同于--namespace
在列出 描述、修改或删除其他命名空间中的对象时 需要给 kubectl 命令 传递--namespace (或-n) 选项
提示:要想快速切换到不同的命名空间,可以设置以下别名:alias kcd=‘kubectl config set-context $(kubectl config current-context) --namespace‘。 然后,可以使用 “kcd 命名空间” 在命名空间之间进行切换。
尽管命名空间将资源对象分隔到了不同的组,只允许你对属于特定命名空间的对象进行操作,但是命名空间并不是想象中的做到资源完全隔离,比如网络隔离,这取决于 Kubernetes 所使用的网络解决方案。
在删除 pod 的过程中,实际上我 在指示 kubernetes 终止该 pod 中的所有容器。kubernetes向进程发送一个SIGTERM信号并等待默认30s,使其正常关闭。如果没有及时关闭,则通过SIGKILL终止该进程。因此,为了确保你 的进程总是正常关闭,进程需要正确处理 SIGTERM 信号。
在本章中,你应该已经掌握 : ·
如何决定是否应将某些容器组合在一个 pod 中。
标签:Kubernete 实例 选择 其他 http 内容 逗号 对象 key
原文地址:https://www.cnblogs.com/tianleblog/p/12197815.html