kubernetes
k3s
misankim
2023. 4. 10. 22:10
공식 사이트
https://docs.k3s.io/
k3s 는 rancher 에서 만든 경량화된 kubernetes
# 마스터 노드 설치
curl -sfL https://get.k3s.io | sh -
systemctl status k3s
kubectl get node
kubectl get all --all-namespaces
# 워커 노드 조인
마스터 노드에서 토큰 확인
cat /var/lib/rancher/k3s/server/node-token
curl -sfL https://get.k3s.io | K3S_URL=https://myserver:6443 K3S_TOKEN=mynodetoken sh -
워커 노드에 고유한 호스트네임이 없는 경우 K3S_NODE_NAME 변수 추가 전달
# 배포 및 서비스 생성
k3s 는 Klipper 로드밸런서를 기본으로 제공하여 로드밸런서 서비스 타입으로 서비스 생성 가능
kubectl create ns bootcamp
kubectl create deployment kubernetes-bootcamp --image=gcr.io/google-samples/kubernetes-bootcamp:v1 -n bootcamp
kubectl expose deployment kubernetes-bootcamp --port=8080 --type=LoadBalancer --name=kubernetes-bootcamp -n bootcamp
kubectl scale deploy kubernetes-bootcamp --replicas=4 -n bootcamp
kubectl get all -n bootcamp
# traefik ingress 컨트롤러
https://docs.k3s.io/networking#traefik-ingress-controller
80, 443 포트의 경우 기본으로 traefik ingress 컨트롤러가 LoadBalancer 타입 서비스로 올라와 있어서 ingress 생성 시 바로 트래픽 처리가 가능
Klipper 로드밸런서 및 traefik ingress 컨트롤러를 사용하지 않으려면 옵션 추가하여 k3s 서버 시작