美文网首页
k8s object management

k8s object management

作者: 小船儿飘阿飘 | 来源:发表于2019-08-26 21:21 被阅读0次

kubectl 命令行工具支持 k8s 对象几种不同的创建和管理方法。本文档简要介绍了这些方法.

命令方式

当使用命令方式时,用户直接操作在集群的存活对象上,用户通过参数告知kubectl要进行的操作。
这是运行一个一次性任务最简单的方法,因为这个方法直接操作存活的对象,它不提供之前操作的历史记录
例子:
kubectl run nginx --image nginx

权衡利弊

好处
简单易上手
只需要一个步骤就能对集群进行更改

坏处
不会整合历史操作流程
不提供与更改关联的审计跟踪
除了存活状态外,不提供记录源
不提供创建新对象的模板

命令对象配置

在对象配置中,kubectl命令指定操作(create\replace\etc)、操作参数、和至少一个文件名,文件中必须包含一个对象在yaml和json规范中完整的定义。

例如:

kubectl create -f nginx.yaml 创建对象
kubectl delete -f nginx.yaml -f redis.yaml 更新对象
kubectl replace -f nginx.yamlk 删除对象

权衡利弊

优点(相对命令行)
可以被保存在像GIT一样的源控制系统中
可以与进程集成,例如在推送和审计跟踪前查看更改信息
会提供一个创建新对象的模板
缺点
需要一定的对象格式化了解
需要编写yaml

优点(声明式对象配置)
简单易理解
发展更成熟

缺点
适合文件、不适合目录级别的操作
活动对象的更新必须反映在文件中,否则下次更新会丢失

声明式对象配置

用户对本地存储的对象配置文件进行操作,但没有定义要对文件执行的操作。通过kubectl自动检测每个对象进行增删改查操作,这样可以在目录层级上工作,因为不同目录可能需要不同的操作

优点
直接对活动对象的更改会被保留,即使他们未被配置到文件中
支持目录操作,并自动检测对每个对象的操作

缺点
意外情况下难调试
使用差异的部分更新会创建复杂的合并和补丁操作

相关文章

网友评论

      本文标题:k8s object management

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