E5BB GitHub - kubecy/kansctl: kansctl 是一款基于 Ansible、Shell 面向 Kubernetes 场景的中间件部署与项目交付自动化工具。 · GitHub
[go: up one dir, main page]

Skip to content

kubecy/kansctl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

140 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

kansctl logo


kansctl 是什么

kansctl 是一款基于 Shell + Ansible 构建的中间件自动化部署与交付工具,专为 Kubernetes 场景设计。该工具旨在简化 中间件服务交付多环境多服务部署流程,具备如下特点:

🌟 功能 ✨ 描述
🧩 服务粒度控制 按服务维度精细控制中间件部署与卸载,例如支持独立部署 Redis、MySQL、Elasticsearch、Prometheus 等组件。
🏗️ 多环境支持 支持按环境变量组织部署逻辑(如 devtestprod),可加载对应配置文件,灵活适配多套部署体系,提升交付效率。
⚙️ 自动化引擎 基于 Ansible 实现声明式部署逻辑,确保中间件部署过程的标准化、一致性与可重复性,适合 CI/CD 和持续交付场景。
💣 安全清理机制 所有删除服务操作前将触发 倒计时确认机制,可手动中断操作,有效避免误删行为。
📜 日志记录 全流程日志实时输出,并同步写入日志文件,便于问题回溯、部署审计以及历史操作追踪。
🔄 一键全量部署/卸载 一键部署或卸载所有中间件服务,适用于PoC快速部署、测试环境批量初始化等场景。
✨ 可扩展性强 所有服务基于 roles 模块化设计,用户可按需添加新中间件支持(如 Kafka、Zookeeper、Nacos),快速扩展业务能力。

安装

root@kubecy-master21 /root:~ # dnf -y install git ansible
root@kubecy-master21 /root:~ # mkdir .kubecy
root@kubecy-master21 /root:~ # cd .kubecy/
root@kubecy-master21 /root/.kubecy:~ # git clone https://github.com/kubecy/kansctl.git
root@kubecy-master21 /root/.kubecy:~ # cd kansctl/
root@kubecy-master21 /root/.kubecy/kansctl:~ # ./kansctl setup tab ##设置 kansctl tab功能

使用

部署单个服务

root@kubecy-master21 /root/.kubecy/kansctl:~ # ./kansctl apply -e prod -t prometheus

部署多个服务

root@kubecy-master21 /root/.kubecy/kansctl:~ # ./kansctl apply -e prod -t redis-single,postgresql-single

部署全部服务

root@kubecy-master21 /root/.kubecy/kansctl:~ # ./kansctl apply -e prod -t all

About

kansctl 是一款基于 Ansible、Shell 面向 Kubernetes 场景的中间件部署与项目交付自动化工具。

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

0