Skip to content

2024

K8s Api Annotation

API 概述

The K8s API JSON 和 Protobuf 序列化模式遵循相同的模式更改原则。 以下描述涵盖了这两种格式。 API 版本控制和软件版本控制是间接相关的。 API 和发布版本控制提案描述了 API 版本控制和软件版本控制间的关系。不同的 API 版本代表着不同的稳定性和支持级别。 你可以在 API 变更文档 中查看到更多的不同级别的判定标准。

Here's a summary of each level: Alpha / Bate / Stable (主要是用Bate、Stable版本)

graph LR
    A[Tree level] ----> B[Alpha];
    A[Tree level] ------> C[Bate];
    A[Tree level] --------> D[Stable];

访问控制

  • authentication(身份验证)
  • authorization(授权)

废弃API说明

K8s Command Line - kubectl

GETTING STARTED 命令手册

在任意节点上添加kubectl命令功能

  1. 将 master 节点中 /etc/kubernetes/admin.conf 拷贝到需要运行的服务器的 /etc/kubernetes 目录中

    scp /etc/kubernetes/admin.conf root@k8s-node1:/etc/kubernetes
    

  2. 在对应的服务器上配置环境变量

    echo "export KUBECONFIG=/etc/kubernetes/admin.conf" >> ~/.bash_profile
    

  3. 生效环境变量
    source ~/.bash_profile
    

通过deployment创建一个pod

kubectl create deployment nginx --image=nginx

使用kubectl scale

  1. 查看集群的namespace
    kubectl get namespace
    #或者 kubectl get ns
    
  2. 查看pod
    kubectl get pods
    #或者 kubectl get po
    
  3. 查看deployment
    [root@k8s-master ~]#kubectl get deployment
    #或者 kubectl get deploy
    [root@k8s-master ~]# kubectl get deployment
    NAME    READY   UP-TO-DATE   AVAILABLE   AGE
    nginx   1/1     1            1           5h10m
    
  4. 扩展对象nginx
    [root@k8s-master ~]# kubectl scale deploy --replicas=3 nginux  #注意:deploy=deployment
    deployment.apps/nginx scaled
    [root@k8s-master ~]# kubectl get deployment
    NAME    READY   UP-TO-DATE   AVAILABLE   AGE
    nginx   3/3     3            3           5h15m
    [root@k8s-master ~]# kubectl get po
    NAME                     READY   STATUS    RESTARTS   AGE
    nginx-85b98978db-2h5jw   1/1     Running   0          86s
    nginx-85b98978db-hll4t   1/1     Running   0          5h8m
    nginx-85b98978db-zh9f5   1/1     Running   0          86s
    
    kubectl scale --help
    Set a new size for a deployment, replica set,replication controller,
    or stateful set.
    
  5. 查看扩展的pod被部署在哪些节点

[root@k8s-master ~]# kubectl get po -o wide
NAME                     READY   STATUS    RESTARTS   AGE     IP                NODE        NOMINATED NODE   READINESS GATES
nginx-85b98978db-2h5jw   1/1     Running   0          46m     192.168.169.132   k8s-node2   <none>           <none>
nginx-85b98978db-hll4t   1/1     Running   0          5h54m   192.168.36.66     k8s-node1   <none>           <none>
nginx-85b98978db-zh9f5   1/1     Running   0          46m     192.168.36.67     k8s-node1   <none>           <none>
可以看到46分钟之前 46m,一个部署到node2,一个部署到node1

  1. 查看deployment 信息,并以yaml形式输出 kubectl get deploy #查看当前deployment资源 kubectl get deploy -o yaml #以yaml格式查看当前deployment资源 kubectl get deploy nginx -o yaml #以yaml格式查看当前deployment资源,指定deploy 资源
    
    

减少和删除nginx pod

kubectl scale deploy  --replicas=1 nginx
kubectl delete deploy nginx

删除nginx service

kubectl delete service nginx

--------------------------------草稿线--------------------------------------------------------- 1. I'm an annotation!

Lorem ipsum dolor sit amet, (1) consectetur adipiscing elit.

  1. 🙋‍♂️ I'm an annotation!

dasd asd

😭 🧑‍🎨 😄 🙋‍♂️