Co-Pilot / 辅助式
更新于 24 days ago

kcli

Kkarmab
0.6k
karmab/kcli
80
Agent 评分

💡 摘要

KCLI是一个多功能工具,用于管理多个云和虚拟化平台上的虚拟机。

🎯 适合人群

云工程师DevOps专业人士系统管理员IT经理软件开发人员

🤖 AI 吐槽:这个工具就像虚拟化的瑞士军刀,但别指望它能修理你的咖啡机。

安全分析中风险

该工具执行Shell命令并与云服务交互,存在命令注入和未经授权访问的风险。确保适当的输入验证并使用安全的凭据管理。

kcli repository

CI Copr

Screenshot

Demo!

Description

This tool is meant to interact with existing virtualization providers (libvirt, KubeVirt, oVirt, OpenStack, VMware vSphere, AWS, Azure, GCP, IBM cloud and Hcloud) and to easily deploy and customize VMs from cloud images.

You can also interact with those VMs (list, info, ssh, start, stop, delete, console, serialconsole, add/delete disk, add/delete nic, ...).

Furthermore, you can deploy VMs using predefined profiles, several at once using plan files or entire products for which plans were already created for you.

Refer to the documentation for more information

Quick Start

curl -s https://raw.githubusercontent.com/karmab/kcli/main/install.sh | bash

Deploy your first vm with:

kcli create vm -i centos8stream myvm
kcli list vm
# wait 5-10 seconds for vm to grab an ip
kcli ssh myvm
kcli delete vm

What you can do

  • Interact with all the virtualization providers using a single tool
  • Declare all your objects (VM, containers, networks, ansible playbooks, ...) in a single yaml plan file with a simple syntax
  • Customize a plan deployment using parameters and Jinja templating
  • Adjust VMs from a plan (memory, CPU, flavor, disks and NICs) to match what's defined in the plans
  • Inject all configuration with cloud-init/Ignition or the equivalent in cloud providers
  • Use profiles to launch VMs with same hardware characteristics
  • Launch a plan from an URL
  • Share your plan or use existing ones from Github repo as products
  • Use the existing plans to deploy Kubernetes, OpenShift, OpenStack, oVirt, kubevirt, ...
  • Use the existing cloud images for each distribution
  • Easily share private keys between your VMs
  • Handle dns entries for the VMs
  • Automatically subscribe your RHEL VMs
  • Get a push button notification when a vm has finished its deployment
  • Alternatively use web UI to do the same

Contributors

See contributors on GitHub

Copyright

Copyright 2017-2025 Karim Boumedhel

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Problems?

Open an issue or join us on slack

Mc Fly!!!

karmab

五维分析
清晰度8/10
创新性8/10
实用性9/10
完整性8/10
可维护性7/10
优缺点分析

优点

  • 支持多种虚拟化提供商。
  • 允许轻松部署和自定义虚拟机。
  • 单一工具管理各种云环境。

缺点

  • 新用户可能需要学习曲线。
  • 高级配置可能会增加复杂性。
  • 某些功能的文档有限。

相关技能

using-firebase

A
toolCo-Pilot / 辅助式
84/ 100

“看起来很能打,但别让配置把人劝退。”

rustfs

A
toolCo-Pilot / 辅助式
80/ 100

“看起来很能打,但别让配置把人劝退。”

skillsforge-marketplace

A
toolCo-Pilot / 辅助式
80/ 100

“一个为 AI 技能设立的市场,却讽刺地需要手动阅读冗长的 README 才能理解这些技能的实际作用。”

免责声明:本内容来源于 GitHub 开源项目,仅供展示和评分分析使用。

版权归原作者所有 karmab.