K8s 常见资源简介

2022-09-03  本文已影响0人  quanCN

Pod

pod是一个逻辑单位,由多个容器组合,是kubernetes原子调度单位,Pod 的共享上下文包括一组 Linux 名字空间、控制组(cgroup)等

特点

Service

动机

Pod的生命很短暂,随时可能由于种种原因被添加或者移除,比如扩大或缩小规模,容器运行状态检查失败,以及节点迁移等。只有当Pod调度到某个节点上并启动后,才能知道Pod的IP,因此Pod的网络地址可能会中应用容器的生命周期内发生变化,因此需要引入Service实现Pod的服务注册发现以及负载均衡

Service

K8s Service负责将服务名称永久地绑定到IP地址和端口号。因此Service代表访问应用程序的入口。在绝大多数情况下,Service就相当于一组Pod的入口,但也有例外。Service也可以指向Kubernetes集群外部提供的接口。因此,可以利用Service提供服务注册发现以及负载均衡

labels

labels是用于组织 Kubernetes API 对象的一个非常强大且简单的功能。 labels是附加到对象的键值对,利用labels可以识别一组Pod

常见用法

annotations

annotations和labels一样采用映射形式,它们不存储标识信息,不能用于过滤对象。与标签不同,注释值可以更长并且可以包含任何字符

特点

annotations的信息不能用于查询和匹配,它的目的是为我们使用的各种工具和库中的对象额外提供的元数据,例如,构建ID,版本ID,镜像信息、时间戳、Git分支名、拉取请求编号、镜像哈希、注册表地址、作者姓名,工具信息等。labels主要用于查询资源以及针对匹配的资源执行操作,而注释则是用于添加机器使用的元数据

namespace

在 Kubernetes 中,Namespace提供一种机制,将同一集群中的资源划分为相互隔离的组。 同一命名空间内的资源名称要唯一,但跨命名空间时没有这个要求。 命名空间作用域仅针对带有命名空间的对象,例如 Deployment、Service 等, 这种作用域对集群访问的对象不适用,例如 StorageClass、Node、PersistentVolume 等

特性&用途
上一篇 下一篇

猜你喜欢

热点阅读