update README.md
- Discovered simplest method of quorum - if the controller can't reach a host, it's down
This commit is contained in:
parent
6a6d0d2f21
commit
9ce8b81e06
46
README.md
46
README.md
@ -1,39 +1,49 @@
|
||||
## clustvirt - Libvirt cluster manager
|
||||
# clustvirt - Libvirt cluster manager
|
||||
|
||||
Clustered virtualization has gotten to complicated. We have a great system for it built into
|
||||
the Linux kernel, with shared software stacks between whatever base distro you want to use.
|
||||
Clustered virtualization has gotten to complicated. We have a great system for
|
||||
it built into the Linux kernel, with shared software stacks between whatever
|
||||
base distro you want to use.
|
||||
|
||||
Every other option has buy in, and buzzwords. I want something truly simple that can manage virtual
|
||||
machines on multiple hosts, integrating with existing tools, running from one/all of the hosts, a raspberry pi,
|
||||
or as a guest machine on the cluster itself.
|
||||
Every other option has buy in, and buzzwords. I want something truly simple that
|
||||
can manage virtual machines on multiple hosts, integrating with existing tools,
|
||||
running from one/all of the hosts, a raspberry pi, or as a guest machine on the
|
||||
cluster itself.
|
||||
|
||||
The mission: Talk to libvirt hosts, coordinate them, manage them, and let people take their clusters back.
|
||||
The mission: Talk to libvirt hosts, coordinate them, manage them, and let people
|
||||
take their clusters back.
|
||||
|
||||
Overall goals:
|
||||
|
||||
- HA Cluster resource manager (simpler then existing options, just for libvirt)
|
||||
- Share secrets
|
||||
- Share VM configs
|
||||
- know what VM is running on what cluster host
|
||||
- trigger migrations of hosts
|
||||
- most simple quorum algorithm possible, ability to run 2 hosts reliably, up to ?? hosts without worry
|
||||
- most simple quorum algorithm possible, ability to run 2 hosts reliably,
|
||||
up to ?? hosts without worry
|
||||
- Simplest quorum: If the controller can't reach it, it's down.
|
||||
- Shared Network management
|
||||
- Shared storage managment
|
||||
- Does not include clustered storage configuration
|
||||
- Can use different clustered storage systems (just not configure them directly)
|
||||
- Reliable backup and snapshotting
|
||||
- The tools exist for this, just needs to be exposed
|
||||
- Install on any libvirt system, as long as the basic requirements are met as far as compatibility is concerned
|
||||
- Should be able to have hosts on RedHat, Rocky, Arch, Ubuntu, Debian, whatever without worry
|
||||
- Cloud-init configuration help to create useful and reusable cloud-init files, that don't need to be used
|
||||
by the system only. It's a standard, use it.
|
||||
- Install on any libvirt system, as long as the basic requirements are met as
|
||||
far as compatibility is concerned
|
||||
- Should be able to have hosts on RedHat, Rocky, Arch, Ubuntu, Debian,
|
||||
whatever without worry
|
||||
- Cloud-init configuration help to create useful and reusable cloud-init files,
|
||||
that don't need to be used by the system only. It's a standard, use it.
|
||||
|
||||
## Existing tools and libraries to use
|
||||
|
||||
### Existing tools and libraries to use
|
||||
- [https://pkg.go.dev/libvirt.org/go/libvirt] Go Bindings for libvirt
|
||||
- Not sure if it can be used without libvirt existing on the system it's running on. Worth a try.
|
||||
- Not sure if it can be used without libvirt existing on the system it's
|
||||
running on. Worth a try.
|
||||
|
||||
## Roadmap
|
||||
|
||||
### Roadmap
|
||||
1. Create simple daemon that can run on 1 or more hosts that will keep track of things
|
||||
- Create simple daemon that can run on 1 or more hosts that will keep track of things
|
||||
- Libvirt daemon
|
||||
- Host Capabilities
|
||||
- Migration Capabilities
|
||||
@ -42,5 +52,5 @@ Overall goals:
|
||||
- Volume management
|
||||
- Guest management
|
||||
- Connection management (to other libvirt hosts)
|
||||
2. Create a simple WebUI with HTMX to monitor that stuff
|
||||
3. Add the ability to manage that stuff once we can monitor it, through the WebUI.
|
||||
- Create a simple WebUI with HTMX to monitor that stuff
|
||||
- Add the ability to manage that stuff once we can monitor it, through the WebUI.
|
||||
|
Loading…
Reference in New Issue
Block a user