Skip to content

A rke2 kubernetes cluster playground wrapped in a Vagrant environment

Notifications You must be signed in to change notification settings

rgl/rke2-vagrant

Repository files navigation

About

This is a rke2 kubernetes cluster playground wrapped in a Vagrant environment.

Usage

Configure your hosts file with:

10.11.0.100 server.rke2.test
10.11.0.201 example-app.rke2.test

Install the base Ubuntu 22.04 vagrant box.

Install the base Windows 2022 vagrant box.

Launch the environment:

time vagrant up --no-destroy-on-error --no-tty --provider=libvirt

NB The server nodes (e.g. server1) are tainted to prevent them from executing non control-plane workloads. That kind of workload is executed in the agent nodes (e.g. agent1).

Access the cluster from the host:

export KUBECONFIG=$PWD/tmp/admin.conf
kubectl cluster-info
kubectl get nodes -o wide

Access the example application and notice the GOOS property value round-robin between linux and windows:

http://example-app.rke2.test

Kubernetes API

Access the Kubernetes API at:

https://server.rke2.test:6443

NB You must use the client certificate that is inside the tmp/admin.conf, tmp/*.pem, or /etc/rancher/rke2/rke2.yaml (inside the server1 machine) file.

Access the Kubernetes API using the client certificate with httpie:

http \
    --verify tmp/default-ca-crt.pem \
    --cert tmp/default-crt.pem \
    --cert-key tmp/default-key.pem \
    https://server.rke2.test:6443

Or with curl:

curl \
    --cacert tmp/default-ca-crt.pem \
    --cert tmp/default-crt.pem \
    --key tmp/default-key.pem \
    https://server.rke2.test:6443

K9s Dashboard

The K9s console UI dashboard is also installed in the server node. You can access it by running:

vagrant ssh server1
sudo su -l
k9s

References

About

A rke2 kubernetes cluster playground wrapped in a Vagrant environment

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published