talos
README.md
Integration Testing
Setup
Prerequisites
- A linux machine with KVM enabled
docker
docker-compose
virt-install
qemu-kvm
yq
apt install -y virtinst qemu-kvmcurl -L https://github.com/mikefarah/yq/releases/download/2.4.1/yq_linux_amd64 -o /usr/local/bin/yqchmod +x /usr/local/bin/yq
Start Matchbox, Dnsmasq, and HAproxy
docker-compose up
Note: This will run all services in the foreground.
Create the VMs
./libvirt.sh up
Getting the Console Logs
virsh console <VM>
Connecting to the Nodes
From the Host
Setup DNS
Append the following to /etc/hosts
:
172.28.1.3 kubernetes.talos.dev172.28.1.10 control-plane-1.talos.dev172.28.1.11 control-plane-2.talos.dev172.28.1.12 control-plane-3.talos.dev172.28.1.13 worker-1.talos.dev
Setup talosctl
and kubectl
export TALOSCONFIG=$PWD/matchbox/assets/talosconfigexport KUBECONFIG=$PWD/matchbox/assets/kubeconfig
talosctl config endpoint 172.28.1.10talosctl kubeconfig ./matchbox/assets/kubeconfig
From a Container
./libvirt.sh workspace
talosctl config endpoint 172.28.1.10talosctl kubeconfig .
Verify Connectivity
talosctl serviceskubectl get nodes
Teardown
To teardown the test:
docker-compose down./libvirt.sh down