KVM/libvirt provider: proxies as VMs on your own hypervisors #5
@@ -5,5 +5,5 @@ apiVersion: kustomize.config.k8s.io/v1beta1
|
|||||||
kind: Kustomization
|
kind: Kustomization
|
||||||
images:
|
images:
|
||||||
- name: controller
|
- name: controller
|
||||||
newName: example.com/egress-proxies-operator
|
newName: egress-proxies-operator
|
||||||
newTag: v0.0.1
|
newTag: kvm-dev
|
||||||
|
|||||||
@@ -16,3 +16,39 @@ data:
|
|||||||
providers:
|
providers:
|
||||||
- name: kubernetes
|
- name: kubernetes
|
||||||
type: kubernetes
|
type: kubernetes
|
||||||
|
- name: kvm-home
|
||||||
|
type: kvm
|
||||||
|
kvm:
|
||||||
|
# SSH to each host with the libvirt unix socket forwarded through the
|
||||||
|
# connection; nothing to open on the hypervisors beyond sshd. Both
|
||||||
|
# files come from the optional kvm-ssh Secret mounted by
|
||||||
|
# config/manager/manager.yaml — see docs/kvm-provider.md.
|
||||||
|
sshKeyFile: /etc/proxy-operator/kvm/id_ed25519
|
||||||
|
knownHostsFile: /etc/proxy-operator/kvm/known_hosts
|
||||||
|
# insecureIgnoreHostKey: true # skip host-key checks (not recommended)
|
||||||
|
# diskSizeGb: 10 # per-VM overlay; cloud-init grows the root fs into it
|
||||||
|
# vendorData: | # extra vendor-data; the qemu-guest-agent bootstrap is merged
|
||||||
|
# #cloud-config # into each Proxy's cloud-config, not configured here
|
||||||
|
# ...
|
||||||
|
images:
|
||||||
|
# placement.image names a key here (or is an https:// URL directly).
|
||||||
|
# Fetched into each host's pool on first use and cached there as
|
||||||
|
# base-<key>.qcow2; do not change an entry while Proxies use it.
|
||||||
|
debian-13:
|
||||||
|
url: https://cloud.debian.org/images/cloud/trixie/latest/debian-13-generic-amd64.qcow2
|
||||||
|
# sha256: "<64 hex>" # optional; verified after download
|
||||||
|
# firmware: uefi # default; "bios" only for images with no EFI partition
|
||||||
|
# # (Debian 13 hangs in GRUB under BIOS headless: Debian bug #1111240)
|
||||||
|
ubuntu-24.04:
|
||||||
|
url: https://cloud-images.ubuntu.com/noble/current/noble-server-cloudimg-amd64.img
|
||||||
|
machineTypes: # placement.machineType names a key here
|
||||||
|
small: {vcpus: 1, memoryMiB: 1024}
|
||||||
|
medium: {vcpus: 2, memoryMiB: 2048}
|
||||||
|
hosts: # placement.zone names a host; optional with one host
|
||||||
|
- name: beelink
|
||||||
|
address: beelink.tail8c69c.ts.net:22
|
||||||
|
user: novakj # must be in the libvirt group
|
||||||
|
bridge: br0 # to a LAN with DHCP; the VM's IP comes from there
|
||||||
|
# socket: /var/run/libvirt/libvirt-sock
|
||||||
|
# pool: default
|
||||||
|
|
||||||
|
|||||||
@@ -49,9 +49,9 @@ providers:
|
|||||||
small: {vcpus: 1, memoryMiB: 1024}
|
small: {vcpus: 1, memoryMiB: 1024}
|
||||||
medium: {vcpus: 2, memoryMiB: 2048}
|
medium: {vcpus: 2, memoryMiB: 2048}
|
||||||
hosts: # placement.zone names a host; optional with one host
|
hosts: # placement.zone names a host; optional with one host
|
||||||
- name: nas1
|
- name: beelink
|
||||||
address: nas1.home.lan:22
|
address: beelink:22
|
||||||
user: virt # must be in the libvirt group
|
user: novakj # must be in the libvirt group
|
||||||
bridge: br0 # to a LAN with DHCP; the VM's IP comes from there
|
bridge: br0 # to a LAN with DHCP; the VM's IP comes from there
|
||||||
# socket: /var/run/libvirt/libvirt-sock
|
# socket: /var/run/libvirt/libvirt-sock
|
||||||
# pool: default
|
# pool: default
|
||||||
|
|||||||
Reference in New Issue
Block a user