Skip to content

nicholaswilde/k3s-ansible

 
 

Repository files navigation

Build a Kubernetes cluster using k3s via Ansible

GitHub CI Ansible Lint FOSSA Status

K3s Ansible Playbook

Build a Kubernetes cluster using Ansible with k3s. The goal is easily install a Kubernetes cluster on machines running:

  • Debian
  • Ubuntu
  • CentOS

on processor architecture:

  • x64
  • arm64
  • armhf

The following extras are installed from the base k3s-ansible repository:

System requirements

Deployment environment must have Ansible 2.4.0+ Master and nodes must have passwordless SSH access

Usage

First create a new directory based on the sample directory within the inventory directory:

cp example.hosts.yaml hosts.yaml

Second, edit hosts.yaml to match the system information gathered above.

If needed, you can also edit group_vars/all.yml to match your environment.

Select which k3s channel to use.

Start provisioning of the cluster using the following command:

$ make deploy
# or
$ ansible-playbook site.yml -i hosts.yaml

Reset

$ make reset
# or
$ ansible-playbook reset.yml -i hosts.yaml

Kubeconfig

To get access to your Kubernetes cluster just

$ scp pirate@master_ip:~/.kube/config ~/.kube/config

Pre-commit hook

If you want to automatically lint the files with a pre-commit hook, make sure you install the pre-commit binary, and add a .pre-commit-config.yaml file to your project. Then run:

$ pre-commit install
$ pre-commit install-hooks

Todo

  • system-upgrade

Author

The repository was created in 2019 by Vincent RABAH and modified by Nicholas Wilde.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • HTML 55.8%
  • Makefile 44.2%