沪ICP备2021032517号-1

Kubernetes的资源对象

  |   0 评论   |   0 浏览

kubernetes 中的对象

以下列举的内容都是 kubernetes 中的 Object,这些对象都可以在 yaml 文件中作为一种 API 类型来配置。

  • Pod
  • Node
  • Namespace
  • Service
  • Volume
  • PersistentVolume
  • Deployment
  • Secret
  • StatefulSet
  • DaemonSet
  • ServiceAccount
  • ReplicationController
  • ReplicaSet
  • Job
  • CronJob
  • SecurityContext
  • ResourceQuota
  • LimitRange
  • HorizontalPodAutoscaling
  • Ingress
  • ConfigMap
  • Label
  • CustomResourceDefinition
  • Role
  • ClusterRole

可以将它们简单的分类为以下几种资源对象

image.png

必需字段

在想要创建的 Kubernetes 对象对应的 .yaml 文件中,需要配置如下的字段:

  • apiVersion - 创建该对象所使用的 Kubernetes API 的版本
  • kind - 想要创建的对象的类型
  • metadata - 帮助识别对象唯一性的数据,包括一个 name 字符串、UID 和可选的 namespace

也需要提供对象的 spec 字段。对象 spec 的精确格式对每个 Kubernetes 对象来说是不同的,包含了特定于该对象的嵌套字段。Kubernetes API 参考能够帮助我们找到任何我们想创建的对象的 spec 格式。

image.png


pod

pod和容器的区别

Pause容器

在接触Kubernetes的初期,便知道集群搭建需要下载一个k8s.gcr.io/pause镜像,然后每次启动一个容器,都会伴随一个pause容器的启动。

kubernetes中的pause容器主要为每个业务容器提供以下功能:

  • 在pod中担任Linux命名空间共享的基础;
  • 启用pid命名空间,开启init进程。

POD的生命周期

Pod都处于以下几种状态之一,可通过查询Pod详情查看。

  • Pending 部署Pod事务已被集群受理,但当前容器镜像还未下载完。
  • Running 所有容器已被创建,并被部署到k8s节点。
  • Successed Pod成功退出,并不会被重启。
  • Failed Pod中有容器被终止。
  • Unknown 未知原因,如kube-apiserver无法与Pod进行通讯。

副本控制器 Replication Controller,RC

副本集 Replica Set,RS

部署 Deployment

服务 Service

任务 Job

后台支撑服务集 DaemonSet

集群联邦 Federation

存储卷 Volume

持久存储卷 PV 和持久存储卷声明 PVC

密钥对象(Secret)

用户帐户 User Account 和服务帐户 Service Account

RBAC 访问授权


标题:Kubernetes的资源对象
作者:zifuy
地址:https://www.zifuy.cn/articles/2019/09/12/1568252189073.html