diff --git a/README.md b/README.md index ef7b6bd..e2db538 100644 --- a/README.md +++ b/README.md @@ -2,15 +2,16 @@ The general idea is to bootstrap a bare metal host into a functioning kubernetes These playbooks/roles in their current state will create all kubernetes nodes on a single host. This is for lab/testing/learning type scenarios. With some adjustments though this could be used to provision multiple hypervisors, ideally with each running 2 VMs: a control-plane node and a worker node. If you've got the hardware or the cloud budget for that, then lucky you! :smile: -An outline of the steps, which are roughly broekn up by playbook: +An outline of the steps, which are roughly broken up by playbook: - [ ] Install Arch linux on the bare metal -- [x] Configure the bare metal Arch host as a hypervisor (qemu/kvm) +- [x] Configure the bare metal Arch host as a hypervisor (qemu/kvm) - [Link](https://code.balsillie.net/michael/IaC/src/branch/master/ansible/playbooks/02_hypervisor.yaml) - [ ] Install Arch linux into a VM on the hypervisor then convert it to a template. -- [x] Deploy 3 (or more) VMs from the template (uses backing store qcow images). -- [x] Create a kubernetes cluster from those 3 VMs. +- [x] Deploy 3 (or more) VMs from the template (uses backing store qcow images) - [Link](https://code.balsillie.net/michael/IaC/src/branch/master/ansible/playbooks/04_vm_deploy.yaml) +- [x] Create a kubernetes cluster from those 3 VMs - [Link](https://code.balsillie.net/michael/IaC/src/branch/master/ansible/playbooks/05_k8s_deploy.yaml) - [x] Install calico networking into the cluster. - [ ] Remove the taint from control plane nodes. <-- Optional +- [ ] Configure cluster storage, Rook? - [ ] Deploy workloads into the cluster What you don't see here is setup/configuration of an Opnsense VM to act as a firewall, this is too far off from being possible to automate. diff --git a/ansible/roles/zfs-install/tasks/main.yml b/ansible/roles/zfs-install/tasks/main.yml index d9dee23..1971768 100644 --- a/ansible/roles/zfs-install/tasks/main.yml +++ b/ansible/roles/zfs-install/tasks/main.yml @@ -11,6 +11,7 @@ register: zfs_module - block: +# TODO add when condition to skip this block if module exists - name: install zfs prerequisites become: true community.general.pacman: