k8s API简介

作者: hyperjiang | 来源:发表于2020-03-29 18:49 被阅读0次

    概述

    我们知道用kubectl管理k8s的时候可以使用yaml文件,在这些配置文件的定义里面会有一个apiVersion字段,这个字段指明了要使用的API版本,最新的k8s API版本是v1.18.0,地址:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.18

    里面可以看到对于Deployment资源,它对应的分组是apps,版本是v1,所以我们的yaml文件里面就需要这样写:apiVersion: apps/v1;对于Namespace资源,它对应的分组是core,版本是v1core是可以省略的,所以我们的yaml文件里面可以这样写:apiVersion: v1

    资源对象

    资源对象通常有3个组成部分:

    • metadata:这是关于资源的元数据,比如它的名称、类型、api版本、注释和标签。
    • spec:这是由用户定义的希望系统最终达到的状态,比如启动多少个replica、cpu和内存的限制等等。
    • status:系统的当前状态,由服务器去更新。

    资源的操作

    资源通常有这几种操作:创建(Create),更新(Update),读取(Read),删除(Delete)。其中更新又分为替换(Replace)和打补丁(Patch),区别是替换是把整个spec替换掉,会有乐观锁保证读写安全;打补丁则是修改某些指定的字段,没有锁,最后一次写会成功。

    有部分资源还会支持下列操作:

    • Rollback: 将PodTemplate回滚到以前的版本。
    • Read / Write Scale: 读取或更新资源的副本数量。
    • Read / Write Status: 读取或更新资源对象的状态。

    相关文章

      网友评论

        本文标题:k8s API简介

        本文链接:https://www.haomeiwen.com/subject/rfcuuhtx.html