├── .gitignore ├── .vscode └── settings.json ├── 00_pre_flight_checklist.yml ├── 01_install_virtualization_tools.yml ├── 02_prepare_setup.yml ├── 03_provision_libvirt_resources.yml ├── 04_provisioning_vms.yml ├── 08_loadbalancer_services.yml ├── 10_container_runtimes.yml ├── 11_install_kube_packages.yml ├── 12_setup_kubeadm_config.yml ├── 13_ignite_control_plane.yml ├── 20_join_control_plane.yml ├── 21_join_nodes.yml ├── 22_apply_network_plugin.yml ├── 25_complete_setup.yml ├── 29_save_inventory.yml ├── 30_install_ingress_controller.yml ├── 32_install_rook.yml ├── 33_install_metalLB.yml ├── 99_cleanup.yml ├── LICENSE ├── Makefile ├── README.md ├── ansible-navigator.yaml ├── ansible.cfg ├── execution-environment ├── execution-environment.yml └── requirements.yml ├── files ├── daemon.json ├── localdns.conf └── terraform │ ├── cloud_init.cfg │ ├── main.tf │ └── variables.tf ├── group_vars ├── k8s_nodes │ └── vars.yml └── vm_host │ └── vars.yml ├── inventory ├── libvirt-k8s.png ├── main.yml ├── requirements.yml ├── templates ├── cleanup-playbook.yml.j2 ├── crio.conf.crun.j2 ├── crio.conf.j2 ├── haproxy.j2 ├── inventory.j2 ├── kubeadm-config.yaml.j2 ├── kubeadm-join-config.yaml.j2 ├── kubeadm-join-cp-config.yaml.j2 ├── libvirt_dnsmasq.j2 ├── metallb-l2.j2 ├── rook-values.yml.j2 └── systemd-resolved.j2 ├── tests ├── inventory └── k8s_cluster.yml └── vars └── k8s_cluster.yml /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/.gitignore -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/.vscode/settings.json -------------------------------------------------------------------------------- /00_pre_flight_checklist.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/00_pre_flight_checklist.yml -------------------------------------------------------------------------------- /01_install_virtualization_tools.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/01_install_virtualization_tools.yml -------------------------------------------------------------------------------- /02_prepare_setup.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/02_prepare_setup.yml -------------------------------------------------------------------------------- /03_provision_libvirt_resources.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/03_provision_libvirt_resources.yml -------------------------------------------------------------------------------- /04_provisioning_vms.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/04_provisioning_vms.yml -------------------------------------------------------------------------------- /08_loadbalancer_services.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/08_loadbalancer_services.yml -------------------------------------------------------------------------------- /10_container_runtimes.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/10_container_runtimes.yml -------------------------------------------------------------------------------- /11_install_kube_packages.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/11_install_kube_packages.yml -------------------------------------------------------------------------------- /12_setup_kubeadm_config.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/12_setup_kubeadm_config.yml -------------------------------------------------------------------------------- /13_ignite_control_plane.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/13_ignite_control_plane.yml -------------------------------------------------------------------------------- /20_join_control_plane.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/20_join_control_plane.yml -------------------------------------------------------------------------------- /21_join_nodes.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/21_join_nodes.yml -------------------------------------------------------------------------------- /22_apply_network_plugin.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/22_apply_network_plugin.yml -------------------------------------------------------------------------------- /25_complete_setup.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/25_complete_setup.yml -------------------------------------------------------------------------------- /29_save_inventory.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/29_save_inventory.yml -------------------------------------------------------------------------------- /30_install_ingress_controller.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/30_install_ingress_controller.yml -------------------------------------------------------------------------------- /32_install_rook.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/32_install_rook.yml -------------------------------------------------------------------------------- /33_install_metalLB.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/33_install_metalLB.yml -------------------------------------------------------------------------------- /99_cleanup.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/99_cleanup.yml -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/LICENSE -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/README.md -------------------------------------------------------------------------------- /ansible-navigator.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/ansible-navigator.yaml -------------------------------------------------------------------------------- /ansible.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/ansible.cfg -------------------------------------------------------------------------------- /execution-environment/execution-environment.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/execution-environment/execution-environment.yml -------------------------------------------------------------------------------- /execution-environment/requirements.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/execution-environment/requirements.yml -------------------------------------------------------------------------------- /files/daemon.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/files/daemon.json -------------------------------------------------------------------------------- /files/localdns.conf: -------------------------------------------------------------------------------- 1 | [main] 2 | dns=dnsmasq 3 | -------------------------------------------------------------------------------- /files/terraform/cloud_init.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/files/terraform/cloud_init.cfg -------------------------------------------------------------------------------- /files/terraform/main.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/files/terraform/main.tf -------------------------------------------------------------------------------- /files/terraform/variables.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/files/terraform/variables.tf -------------------------------------------------------------------------------- /group_vars/k8s_nodes/vars.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/group_vars/k8s_nodes/vars.yml -------------------------------------------------------------------------------- /group_vars/vm_host/vars.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/group_vars/vm_host/vars.yml -------------------------------------------------------------------------------- /inventory: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/inventory -------------------------------------------------------------------------------- /libvirt-k8s.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/libvirt-k8s.png -------------------------------------------------------------------------------- /main.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/main.yml -------------------------------------------------------------------------------- /requirements.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/requirements.yml -------------------------------------------------------------------------------- /templates/cleanup-playbook.yml.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/templates/cleanup-playbook.yml.j2 -------------------------------------------------------------------------------- /templates/crio.conf.crun.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/templates/crio.conf.crun.j2 -------------------------------------------------------------------------------- /templates/crio.conf.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/templates/crio.conf.j2 -------------------------------------------------------------------------------- /templates/haproxy.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/templates/haproxy.j2 -------------------------------------------------------------------------------- /templates/inventory.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/templates/inventory.j2 -------------------------------------------------------------------------------- /templates/kubeadm-config.yaml.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/templates/kubeadm-config.yaml.j2 -------------------------------------------------------------------------------- /templates/kubeadm-join-config.yaml.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/templates/kubeadm-join-config.yaml.j2 -------------------------------------------------------------------------------- /templates/kubeadm-join-cp-config.yaml.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/templates/kubeadm-join-cp-config.yaml.j2 -------------------------------------------------------------------------------- /templates/libvirt_dnsmasq.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/templates/libvirt_dnsmasq.j2 -------------------------------------------------------------------------------- /templates/metallb-l2.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/templates/metallb-l2.j2 -------------------------------------------------------------------------------- /templates/rook-values.yml.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/templates/rook-values.yml.j2 -------------------------------------------------------------------------------- /templates/systemd-resolved.j2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/templates/systemd-resolved.j2 -------------------------------------------------------------------------------- /tests/inventory: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/tests/inventory -------------------------------------------------------------------------------- /tests/k8s_cluster.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/tests/k8s_cluster.yml -------------------------------------------------------------------------------- /vars/k8s_cluster.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubealex/libvirt-k8s-provisioner/HEAD/vars/k8s_cluster.yml --------------------------------------------------------------------------------