kubernetes资源清单入门

创建nginx容器:

  kubectl run nginx-deploy8 --image=nginx:1.14-alpine --port=80 --replicas=2

  deployment "nginx-deploy8" created

  

删除pod

  kubectl delete pods nginx-deploy8-77c9f8dcf5-prdrt

  

端口映射到集群外部使用

  kubectl expose deployment nginx-deploy8 --name=nginx8 --port=80 --target-port=80 --protocol=TCP

创建客户端pod并进入该容器:

  

RESTful

  GET,PUT,DELETE,POST...

  Kubectrl run ...

资源:对象

  Workload(工作负载型资源):Pod,ReokucaSet,Deoloyment...

  服务发现及均衡,serviceingress

  配置与存储

    Volume,CSI

    configMap,secret

    downwardAPI

  集群级的资源

    Namespace,Node,role,clusterRoleBinding

  元数据型资源

    HPA,PodTemplate,LimitRange

ymal格式打印输出:

  kubectl get pods myapp-5dc65c69c8-2v8jb -o yaml

大部分资源的配置清单(5个一级字段组成)

  apiVersion: group/version

  kubectl api-versions

    Deploy

      Beta(公共测试版)

      稳定版

  Kind:资源类别

  Metadata:元数据

    Name:同一类别是唯一的

    NameSpace:

    Labels:标签

    Annotations:

    ...

    每个资源引用PATH

      /api/GROUP/VERSION/namespace/NAMESPACE/TYPE/NAME(大写字母代表可替代)

  Spec:

    期望的状态,disired state

  Status:当前状态

    Current  state 本字段有kuberneters集群维护

    让当前状态无限向期望状态靠近

创建资源的方法:

  Apiserver 仅接受JSON格式的资源定义;

  Yaml格式提供配置清单,apiserver可自动将其转为json格式,而后在提交;

命令:

  Required(必选字段)

  字段判定

    kubectl explain pod

  二级字段判定:

    kubectl explain pod.metadata

   多级字段判定以点(.)区分依次类推

  kubectl create -f pod_demo.yaml

  kubectl describe pods pod-demo

   

  kubectl delete -f pod_demo.yaml(pod彻底删除)

原文地址:https://www.cnblogs.com/liyongsan/p/10560316.html