An ansible playbook I use to install new kubernetes clusters when I need them
  • Jinja 73.2%
  • Shell 26.8%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-02-05 11:51:33 -05:00
crio-bin Support rpm-based linux and crio 2026-02-05 11:51:33 -05:00
roles Support rpm-based linux and crio 2026-02-05 11:51:33 -05:00
.gitignore Support rpm-based linux and crio 2026-02-05 11:51:33 -05:00
ansible.cfg Add ansible.cfg 2025-01-01 12:09:20 -05:00
example_hosts Initial project commit 2022-02-22 23:15:06 -05:00
k8s.yml Initial project commit 2022-02-22 23:15:06 -05:00
LICENSE Initial commit 2022-02-22 22:56:56 -05:00
README.md Support rpm-based linux and crio 2026-02-05 11:51:33 -05:00
run_playbook.sh Initial project commit 2022-02-22 23:15:06 -05:00

Kubernetes Installer

This simple project is a quick playbook I threw together to install kubernetes since I got tired of going through these steps manually every time I wanted to add a node or create another cluster. Thus this project was born.

Limitations to This Project

  • This project was hastily put together and has paths relative to my own user naming convention. Until I get the time to fix this, you'll likely have to change some paths in the task files.
  • This project only supports rpm based hosts on arm and x86_64. I originally supported ubuntu, but I've had a much smoother time using rpm-based linux environments.

Using the Installer

Did you skip straight to this section? That's ok, that's what I normally do too. But please read the section above this one to see the current project limitations or else this project won't work correctly on your environment.

First, you need to install ansible. See Ansible's docs for installation instructions.

Then, you need to create an ansible inventory. Ansible's inventory file docs are a great resource for creating one. Or if you want a quick start, you can check out the example hosts file in this project's root directory called example_hosts.

You're all set. You can run the playbook now using:

ansible-playbook -i <your-inventory-file> k8s.yml

Contributing

Feel free to raise an MR if you want to help me fix the Limitations listed above. I also realize that there are probably several other better ansible playbooks out there. But to re-iterate, this was something I wanted to do for my own setup at home. But I'm always open to contributions :)