mirror of
https://github.com/kubesphere/kubekey.git
synced 2025-12-25 17:12:50 +00:00
Signed-off-by: redscholar <blacktiledhouse@gmail.com> Signed-off-by: xuesongzuo@yunify.com <xuesongzuo@yunify.com> Signed-off-by: redscholar <blacktiledhouse@gmail.com> |
||
|---|---|---|
| .github | ||
| api | ||
| build | ||
| builtin | ||
| cmd | ||
| config | ||
| docs | ||
| exp | ||
| hack | ||
| kubernetes-app | ||
| pkg | ||
| plugins | ||
| scripts | ||
| version | ||
| .dockerignore | ||
| .gitignore | ||
| .go-version | ||
| .golangci.yaml | ||
| .goreleaser.yaml | ||
| CONTRIBUTORS.md | ||
| LICENSE | ||
| Makefile | ||
| OWNERS | ||
| README.md | ||
| go.mod | ||
| go.sum | ||
背景
当前kubekey中,如果要添加命令,或修改命令,都需要提交代码并重新发版。扩展性较差。
- 任务与框架分离(优势,目的,更方便扩展,借鉴ansible的playbook设计)
- 支持gitops(可通过git方式,管理自动化任务)
- 支持connector扩展
- 支持云原生方式自动化批量任务管理
安装kubekey
kubernetes中安装
helm upgrade --install --create-namespace -n kubekey-system kubekey kubekey-1.0.0.tgz
然后通过创建 Inventory 和 Playbook 资源来执行命令
Inventory: 任务执行的host清单. 用于定义与host相关, 与任务模板无关的变量. 详见参数定义
Playbook: playbook的配置信息,在哪些host中执行,执行哪个playbook文件, 执行时参数等等。
二进制执行
可直接用二进制在命令行中执行命令
kk run -i inventory.yaml -c config.yaml playbook.yaml
运行命令后, 会在工作目录的runtime下生成对应的 Inventory 和 Playbook 资源