【kubernetes】资源管理方式

目录

          • [1. 说明](#1. 说明)
          • [2. 命令式对象管理](#2. 命令式对象管理)
          • [3. 命令式对象配置](#3. 命令式对象配置)
          • [4. 声明式对象配置](#4. 声明式对象配置)
          • [5. 三种方式的对比](#5. 三种方式的对比)
1. 说明
  • 1.在Kubernetes(k8s)中,资源管理是一个核心功能,它允许用户通过操作资源来管理Kubernetes集群。
  • 2.Kubernetes将所有的内容都抽象为资源,用户可以通过不同的方式来管理这些资源。
  • 3.Kubernetes资源管理的几种主要方式有:命令式对象管理、命令式对象配置、声明式对象配置。
2. 命令式对象管理
  • 1.这种方式直接使用命令去操作Kubernetes资源。
  • 2.kubectl是Kubernetes集群的命令行工具,通过它能够对集群本身进行管理,并能够在集群上进行容器化应用的安装部署。
  • 3.kubectl命令的语法格式通常为"kubectl [command] [type] [name] [flags]"。
  • 4.command(子命令):指定要对资源执行的操作,例如create、get、describe、delete等。
  • 5.type(资源类型):指定资源的对象类型,如pod、deployment、service、configmap等。资源类型区分大小写,可以是单数、复数形式或某些情况下的缩写形式。
  • 6.name(资源名称):指定资源的具体名称。如果省略名称,命令将作用于该类型的所有资源。名称也是区分大小写的。
  • 7.flags(标志/选项):可选参数,用于指定额外的指令或覆盖默认行为。常见的flags包括-n或--namespace用于指定命名空间,-o或--output用于指定输出格式(如yaml、json),--dry-run用于预览操作而不实际执行等。
3. 命令式对象配置
  • 1.这种方式通过命令配置和配置文件去操作Kubernetes资源。
  • 2.用户需要编写一个YAML或JSON格式的配置文件,然后使用kubectl命令配合该配置文件来创建、更新或删除资源。
  • 3.可以使用"kubectl create/patch -f [配置文件]"的命令来操作资源。
4. 声明式对象配置
  • 1.这种方式通过apply命令和配置文件去操作Kubernetes资源。
  • 2.与命令式对象配置类似,用户也需要编写一个YAML或JSON格式的配置文件。
  • 3.在使用声明式对象配置时,用户通常使用"kubectl apply -f [配置文件]"的命令来应用配置文件。
  • 4.如果资源不存在,则会被创建;如果资源已经存在,则会根据配置文件的内容进行更新。
  • 5.这种方式的好处是用户可以更容易地管理资源的状态,因为配置文件描述了资源的期望状态。
5. 三种方式的对比
  • 1.命令式对象管理:优点在于操作直观、简单,适用于快速执行单个操作。缺点在于对于复杂的资源管理场景,可能需要执行多个命令,不够灵活。
  • 2.命令式对象配置:优点在于可以通过配置文件来管理资源,提高了操作的灵活性和可重复性。缺点在于需要编写和维护配置文件,增加了管理成本。
  • 3.声明式对象配置:优点在于通过配置文件描述了资源的期望状态,使得资源的管理更加直观和易于理解。同时,它也支持资源的自动更新和回滚,提高了资源管理的可靠性和灵活性。缺点同样在于需要编写和维护配置文件。
相关推荐
码农秃头老李3 小时前
系列5:基于Centos-8.6 Kubernetes master节点允许运行pod节点
linux·kubernetes·centos
麻辣翅尖6 小时前
【解决】k8s使用flannel网络插件的问题整理
kubernetes·k8s·报错
Dyhamic6 小时前
在 Windows11 上安装k8s的包管理工具Helm
云原生·容器·kubernetes
techzhi7 小时前
k8s集群安装keepalive+haproxy
云原生·容器·kubernetes
RedCong7 小时前
在k8s上暴露EMQX(v4)的指标
云原生·容器·kubernetes
IT-民工211108 小时前
系统学习Docker——DockerFile解析
运维·学习·ci/cd·docker·容器·kubernetes·自动化
long_songs1 天前
kubectl rancher等重启之后服务起不来一分钟解决(另类方案)did you specify the right host or port?
linux·运维·服务器·kubernetes·kubectl·rancher·kubelet
pcj_8881 天前
k8s的ConfigMap是什么, 为什么设计ConfigMap, 如何使用ConfigMap
云原生·容器·kubernetes
kainx1 天前
AWS EKS 相关错误修复 - remote error: tls: internal error - CSR pending
kubernetes·云计算·k8s·aws·eks·csr