List Available k3s Versions #
Available k3s versions: https://github.com/k3s-io/k3s/tags
# List available k3s versions: Stable only
curl -s https://api.github.com/repos/k3s-io/k3s/releases | jq -r '.[] | select(.prerelease == false) | .tag_name' | grep 'k3s' | sort -V
k3s Kubeconfig #
Export Kubeconfig #
# Export env variable: Temporary
export KUBECONFIG=/etc/rancher/k3s/k3s.yaml
# Export env variable: Permanent
echo 'export KUBECONFIG=/etc/rancher/k3s/k3s.yaml' >> ~/.bashrc
# Apply changes
source ~/.bashrc
Copy Kubeconfig to Different Host #
Copy the k3s kubeconfig to an external host like this:
# Create directory
mkdir -p ~/.kube
# Copy kubeconfig from a master node
scp debian@192.168.70.111:/etc/rancher/k3s/k3s.yaml ~/.kube/config
# Adapt permissions
chmod 600 ~/.kube/config
# Replace localhost with node or LB IP
sed -i 's|https://127\.0\.0\.1:6443|https://192.168.70.111:6443|g' ~/.kube/config
k3s Services #
# Restart k3s controller service
sudo systemctl restart k3s
# List k3s controller service status
sudo systemctl status k3s
# Restart k3s agent service
sudo systemctl restart k3s-agent
# List k3s agent service status
sudo systemctl status k3s-agent
# List k3s agent logs
sudo journalctl -u k3s-agent -f
k3s Containerd #
Containerd Directory #
# Containerd directory
/var/lib/rancher/k3s/agent/containerd/
List Container Images #
List container images of specific Kubernetes node:
# List container images
ctr -n k8s.io images list | awk '{print $1, $4}'
# Shell output:
REF SIZE
docker.io/grafana/loki:2.6.1 19.2
docker.io/grafana/loki@sha256:1ee60f980950b00e505bd564b40f720132a0653b110e993043bb5940673d060a 19.2
docker.io/grafana/promtail:2.9.3 71.6
docker.io/grafana/promtail@sha256:b338a29de45ef8ffa96f882f3a36306b1e61262b2a560ff523e0e2633cccbbc4 71.6
docker.io/library/nginx:latest 69.1
docker.io/library/nginx@sha256:6784fb0834aa7dbbe12e3d7471e69c290df3e6ba810dc38b34ae33d3c1c05f7d 69.1
docker.io/rancher/klipper-lb:v0.4.7 4.6
docker.io/rancher/klipper-lb@sha256:558dcf96bf0800d9977ef46dca18411752618cd9dd06daeb99460c0a301d0a60 4.6
docker.io/rancher/mirrored-pause:3.6 294.4
docker.io/rancher/mirrored-pause@sha256:74c4244427b7312c5b901fe0f67cbc53683d06f4f24c6faee65d4182bf0fa893 294.4
sha256:1e5f3c5b981a9f91ca91cf13ce87c2eedfc7a083f4f279552084dd08fc477512 69.1
sha256:42dd24636051991ba549340ec7312c07f189708de8e57674da53dcb11a5c8315 19.2
sha256:6270bb605e12e581514ada5fd5b3216f727db55dc87d5889c790e4c760683fee 294.4
sha256:6860eccd97258287c8d0cf0bd18a7bd9f2cfd1baa82b270e9cb99969286e961f 71.6
sha256:edc812b8e25d0d88aa432de0de448105615e068653db0098f1ab3605fc87530e 4.6
# Grep specific image
sudo ctr -n k8s.io images list | grep nginx