K3s
K3s is a highly available, certified Kubernetes distribution designed for production workloads, packaged as a single binary that reduces the dependencies and steps needed to install.
The k3s
role performs various tasks related to OS configuration, K3s cluster deployment, reset and validation.
Tip
Role deployments are performed at global
level, using the Provisioning playbook. Upgrades can be performed at role
level, see the instructions detailed below.
Role Tasks
See the related role tasks, listed below.
Configuration
Configuration related facts, see configuration.yaml
for details.
Facts
Ansible facts, see facts.yaml
for details.
Load Balancer
Load balancer related tasks, see loadbalancer.yaml
for details.
Main
Main role related tasks, see main.yaml
for details.
Post-Install
Post-install related tasks, see postinstall.yaml
for details.
Reset
Reset related tasks, see reset.yaml
for details.
Tip
A reset is performed at global level only, review the Reset playbook instructions.
Upgrade
Upgrade related tasks, see upgrade.yaml
for details. Run the following command, to perform a role upgrade:
ansible-playbook --ask-vault-pass --tags=k3s upgrade.yaml
The upgrade will trigger the Kured role execution, performing safe automatic node reboots.
Validation
Validation related tasks, see validation.yaml
for details. Run the following command, to perform all role related validation tasks:
ansible-playbook --ask-vault-pass --tags=k3s,validation validation.yaml
Role Templates
See the related role templates, listed below.
Configuration
Cluster
Cluster configuration template, see config.j2
for details.
HAProxy
HAProxy configuration template, see haproxy.j2
for details.
KeepAlived
KeepAlived configuration template, see keepalived.j2
for details.
Registries
Registries configuration template, see registries.j2
for details.
Service
Service configuration template, see service.j2
for details.
Role Variables
Important
A role upgrade is required, in order to apply any changes related to role variables.
See the related role variables, defined into main.yaml
defaults file. Review the README.md
file, for additional details.
Tip
Use Renovate to automate release pull requests and keep dependencies up-to-date.
Support
If you encounter any role related problems or want to suggest a new feature, feel free to open an issue. For general questions or feedback, please use the discussions.