云容器实例 CCI-Pod:创建Pod

时间:2024-01-12 10:03:50

创建Pod

kubernetes资源可以使用YAML描述(如果您对YAML格式不了解,可以参考YAML语法),也可以使用JSON,如下示例描述了一个名为nginx的Pod,这个Pod中包含一个名为container-0的容器,使用nginx:alpine镜像,使用的资源为0.5核CPU、1024M内存。

apiVersion: v1                      # Kubernetes的API Version
kind: Pod                           # Kubernetes的资源类型
metadata:
  name: nginx                       # Pod的名称
spec:                               # Pod的具体规格(specification)
  containers:
  - image: nginx:alpine             # 使用的镜像为 nginx:alpine
    name: container-0               # 容器的名称
    resources:                      # 申请容器所需的资源,云容器实例中limits与requests的值必须相同
      limits:
        cpu: 500m                   # 0.5核
        memory: 1024Mi
      requests:
        cpu: 500m                   # 0.5核
        memory: 1024Mi
  imagePullSecrets:                 # 拉取镜像使用的证书,必须为imagepull-secret
  - name: imagepull-secret

如上面YAML的注释,YAML描述文件主要为如下部分:

  • metadata:一些名称/标签/namespace等信息
  • spec:Pod实际的配置信息,包括使用什么镜像,volume等

如果去查询Kubernetes的资源,您会看到还有一个status字段,status描述kubernetes资源的实际状态,创建时不需要配置。这个示例是一个最小集,其他参数定义后面会逐步介绍。

kubernetes资源的参数定义的解释,您可以通过具体资源的API参考查询对应的解释。

Pod定义好后就可以使用kubectl创建,如果上面YAML文件名称为nginx.yaml,则创建命令如下所示,-f 表示使用文件方式创建。

$ kubectl create -f nginx.yaml -n $namespace_name
pod/nginx created
support.huaweicloud.com/devg-cci/cci_05_0004.html