This is a repository which installs a simple installtion of k8s in a single node instance of a VM using libvirt. The VM is using PCI passthrough on the devices.
- Downloads and builds either the unsupported or stable version of the sourceforge ice driver
- Creates a one-shot systemd service file to insmod of the out-of-tree driver
- Installs a k8s, flannel, coredns
./rocky.sh
The above will create a libvirt network using 192.168.123.1 with the domain *.rocky.k8s.local. The rocky-k8s.xml
is the file used to define this network.
Following the successful installation of the node, the kubeconfig file will be copied out of the VM and into k8s-config
.
KUBECONFIG=$(pwd)/k8s-config kubectl cluster-info
virsh list
virsh attach-device --file dfl/pci-passthrough-g9.xml
virsh attach-device --file sts/pci-passthrough-g9.xml
curl -sL https://github.com/operator-framework/operator-lifecycle-manager/releases/download/v0.21.2/install.sh | bash -s v0.21.2
kubectl create -f https://operatorhub.io/install/nfd-operator.yaml
kubectl get csv -n operators
podman run --rm -it --privileged -v /dev:/dev quay.io/silicom/opae-runtime:2.1.0-1 fpgainfo bmc
scp fw.img [email protected]:/root
podman run --rm -it --privileged -v /dev:/dev -v /root:/root quay.io/silicom/opae-runtime:2.1.0-1 fpgasupdate /root/fw.img
kubectl create -f dfl/deployment.yaml