summaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
authorJeff Carr <[email protected]>2024-11-07 07:32:41 -0600
committerJeff Carr <[email protected]>2024-11-07 07:32:41 -0600
commit4883c265475f80c6b5fd0e9c3ee66e7de341bdd4 (patch)
tree03c405cb4819f45a43c13b4fb023a0386b1dfc50 /README.md
parent1e03cd437753ef5776822f1828a063674aa5ccf6 (diff)
so it shows up on pkg.go.devv0.2.10
Signed-off-by: Jeff Carr <[email protected]>
Diffstat (limited to 'README.md')
-rw-r--r--README.md36
1 files changed, 36 insertions, 0 deletions
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..54684dc
--- /dev/null
+++ b/README.md
@@ -0,0 +1,36 @@
+# virtigo: a control panel for your virtual machine cluster
+
+There is no greater thrill for a linux sys admin than running your own cloud.
+
+# This is an attempt to make something that should:
+
+* Maintain the master list of virtual machines that should be running at all times
+* Work with a cluster of dom0 hypervisiors via libvirt and/or qemu
+* Understand the cluster and autostart droplets that have failed
+* Initiate and Handle all droplet events: start, stop, clone, migrate, etc
+* Verify consistancy on the hypervisors
+* Initiate and handle live migrations between hypervisors
+* Talk to the hypervisors using only the virtigo daemon via protobuf
+* Work in GUI mode (GTK/QT/etc) but ALSO the console (ncurses)
+* GPL'd with the intent for use with homelab and personal hobbyists
+
+# Notes & Goals:
+
+* Be super easy to use.
+* Automatically map access to serial and graphical consoles
+* Only temporarily generate libvirt XML files for virsh create
+* This is intended for managing Virtual Machines, not for containers
+* This often uses the DO nomenclature 'droplets' instead of 'virtual machines' or 'domU'
+* Every droplet is considered hostile
+* When possible, use protobuf
+* Let security be handled externally at the socket layer with other tools
+* Put network, cpu, etc stats in external tools
+* Automatic live migration to decommission nodes
+* Implement iptable rules via the virtigo daemon
+
+# Inspired by:
+
+* kvm
+* virt-manager
+* golang
+* the simplicity of the DO droplet control panel