K8S的apiVersion版本详解
k8s 详解 版本
2023-09-11 14:15:45 时间
1. 背景
Kubernetes的官方文档中并没有对apiVersion的详细解释,而且因为K8S本身版本也在快速迭代,有些资源在低版本还在beta阶段,到了高版本就变成了stable。
如Deployment:
- 1.6版本之前 apiVsersion:extensions/v1beta1
- 1.6版本到1.9版本之间:apps/v1beta1
- 1.9版本之后:apps/v1
2. 各种apiVersion的含义
alpha
-
该软件可能包含错误。启用一个功能可能会导致bug
-
随时可能会丢弃对该功能的支持,恕不另行通知
beta
- 软件经过很好的测试。启用功能被认为是安全的。
- 默认情况下功能是开启的
- 细节可能会改变,但功能在后续版本不会被删除
stable
- 该版本名称命名方式:vX这里X是一个整数
- 稳定版本、放心使用
- 将出现在后续发布的软件版本中
v1
- Kubernetes API的稳定版本,包含很多核心对象:pod、service等
apps/v1beta2
- 在kubernetes1.8版本中,新增加了
apps/v1beta2
的概念,apps/v1beta1同理
DaemonSet,Deployment,ReplicaSet 和StatefulSet的当时版本迁入apps/v1beta2,兼容原有的extensions/v1beta1
apps/v1
-
在
kubernetes1.9
版本中,引入apps/v1
,deployment等资源从extensions/v1beta1
,
apps/v1beta1
和apps/v1beta2
迁入apps/v1
,原来的v1beta1等被废弃。apps/v1代表:包含一些通用的应用层的api组合,如:Deployments, RollingUpdates, and ReplicaSets
batch/v1
-
代表job相关的api组合
在kubernetes1.8版本中,新增了batch/v1beta1,后CronJob 已经迁移到了
batch/v1beta1,然后再迁入batch/v1
autoscaling/v1
- 代表自动扩缩容的api组合,kubernetes1.8版本中引入。 这个组合中后续的alpha 和
beta版本将支持基于memory使用量、其他监控指标进行扩缩容
extensions/v1beta1
- deployment等资源在1.6版本时放在这个版本中,后迁入到apps/v1beta2,再到apps/v1中统一管理
certificates.k8s.io/v1beta1
- 安全认证相关的api组合
authentication.k8s.io/v1
- 资源鉴权相关的api组合
3. 查看当前可用的API版本
执行 kubectl api-versions
kubernetes 1.8
apiextensions.k8s.io/v1beta1
apiregistration.k8s.io/v1beta1
apps/v1beta1
apps/v1beta2
authentication.k8s.io/v1
authentication.k8s.io/v1beta1
authorization.k8s.io/v1
authorization.k8s.io/v1beta1
autoscaling/v1
autoscaling/v2beta1
batch/v1
batch/v1beta1
certificates.k8s.io/v1beta1
extensions/v1beta1
networking.k8s.io/v1
policy/v1beta1
rbac.authorization.k8s.io/v1
rbac.authorization.k8s.io/v1beta1
settings.k8s.io/v1alpha1
storage.k8s.io/v1
storage.k8s.io/v1beta1
v1
kubernetes 1.11
admissionregistration.k8s.io/v1alpha1
admissionregistration.k8s.io/v1beta1
apiextensions.k8s.io/v1beta1
apiregistration.k8s.io/v1
apiregistration.k8s.io/v1beta1
apps/v1
apps/v1beta1
apps/v1beta2
authentication.k8s.io/v1
authentication.k8s.io/v1beta1
authorization.k8s.io/v1
authorization.k8s.io/v1beta1
autoscaling/v1
autoscaling/v2beta1
batch/v1
batch/v1beta1
certificates.k8s.io/v1beta1
events.k8s.io/v1beta1
extensions/v1beta1
networking.k8s.io/v1
policy/v1beta1
rbac.authorization.k8s.io/v1
rbac.authorization.k8s.io/v1beta1
scheduling.k8s.io/v1beta1
settings.k8s.io/v1alpha1
storage.k8s.io/v1
storage.k8s.io/v1alpha1
storage.k8s.io/v1beta1
v1
相关文章
- K8S圣经12:SpringCloud+Jenkins+ K8s Ingress 自动化灰度发布
- k8s系列之kuboard部署微服务
- 一文带你了解K8S 容器编排(上)
- 32 张配图详解 K8S 1.24 高可用部署,保姆级详细版
- K8s 暴露服务的新方法 Gateway API 详解,它有什么好处?
- K8s 暴露服务的新方法 Gateway API 详解,它有什么好处?
- k8s ingress高级配置,动态修改上传文件大小限制参数client_max_body_size
- K8s环境 nfs 服务器,动态存储卷nfs-client-provisioner部署
- Kubernetes kube-bench命令强化K8S 安全详解
- k8s配置glusterFS详解
- 从零开始入门 K8s| 阿里技术专家详解 K8s 核心概念
- k8s Failed to create pod sandbox: open /run/systemd/resolve/resolv.conf: no such file or directory
- k8s安装prometheus
- [云原生k8s] k8s管理工具kubectl详解(二)
- k8s源码分析5-createCmd中的设计模式
- Kubernetes(K8s)(四)——k8s的web管理页面
- k8s-部署Nginx+Keepalived高可用负载均衡器
- k8s二进制高可用集群部署
- k8s 连接harbor 的私有仓库的两种方法 一种是secret 绑定到sa serviceaccount 账号下 一种是需要绑定到 imagePullSecrets: - name: boanbrowser
- k8s中资源对象单数、复数、简写的区别
- K8S组件-----图形化web界面Dashboard搭建安装,让k8s管理更简单
- 图文详解 (Kubernetes)K8S 和 容器中的退出状态码含义和原因及解决方法