반응형
k3s는 경량 k8s라고 보면됩니다.
가벼워서 리소스 사용량도 적고, 실제 쿠버네티스와도 비슷합니다.
또한 설치가 간편하여서 쿠버네티스 학습에 좋을 것 같습니다.
이번 포스팅은 Ubuntu 22.04에 k3s를 설치하는 방법을 정리합니다.
목차
1. 대상 서버에 접근
대상 서버는 이미 구축되어있다고 가정합니다.
putty나 ssh를 이용해 접근합니다.
$ ssh 유저명@123.123.123.123 # 실제 ip를 입력
2. 간단 설치
$ curl -sfL https://get.k3s.io | sh -
[sudo] password for usss1:
[INFO] Finding release for channel stable
[INFO] Using v1.30.5+k3s1 as release
[INFO] Downloading hash https://github.com/k3s-io/k3s/releases/download/v1.30.5+k3s1/sha256sum-amd64.txt
...(생략)
위와 같이 간단하게 설치할 수 있습니다.
3. 확인
$ systemctl status k3s
● k3s.service - Lightweight Kubernetes
Loaded: loaded (/etc/systemd/system/k3s.service; enabled; preset: enabled)
Active: active (running) since Thu 2024-10-03 15:50:37 KST; 14s ago
Docs: https://k3s.io
...(생략)
잘 설치 되었음을 확인 할 수 있습니다.
4. 파드 등 확인
$ sudo kubectl get all -n kube-system
NAME READY STATUS RESTARTS AGE
pod/coredns-7b98449c4-bkllx 1/1 Running 0 37s
pod/helm-install-traefik-crd-ngzxz 0/1 Completed 0 37s
pod/helm-install-traefik-fjfqm 0/1 Completed 1 37s
pod/local-path-provisioner-6795b5f9d8-j77kn 1/1 Running 0 37s
pod/metrics-server-cdcc87586-72fw8 1/1 Running 0 37s
pod/svclb-traefik-4c6725c4-wdllt 2/2 Running 0 14s
pod/traefik-67f6c94c47-745zn 0/1 Running 0 14s
...(생략)
파드도 잘 떴네요.
5. sudo 없이 kubectl 사용 하기
$ sudo chmod 644 /etc/rancher/k3s/k3s.yaml
위와 같이 간단하게 가능합니다.
다만, 재부팅 시 마다 초기화 되는데요.
하여 아래처럼 사용자 계정을 위한 설정을 해줍니다.
$ sudo cp /etc/rancher/k3s/k3s.yaml ~/.kube/config
$ chown $USER ~/.kube/config
$ chmod 600 ~/.kube/config
$ export KUBECONFIG=~/.kube/config
6. 필요없는 컨트롤러 제거
위 간단 설치를 하게 되면 디폴트로 traefik 컨트롤러가 설치됩니다.
이는 ingress controller의 한 종류인데요. nginx ingress controller를 사용한다면 필요가 없을 것입니다.
이를 지워보겠습니다.
$ curl -sfL https://get.k3s.io | INSTALL_K3S_EXEC="--disable=traefik" sh -
[INFO] Finding release for channel stable
[INFO] Using v1.30.5+k3s1 as release
[INFO] Downloading hash https://github.com/k3s-io/k3s/releases/download/v1.30.5+k3s1/sha256sum-amd64.txt
...(생략)
몇 초의 시간이 흐른뒤 다시 pod를 조회해보면 traefik 에 대한 리소스는 사라진 것을 확인 할 수 있습니다.
반응형
'개발 이야기 > Kubernetes' 카테고리의 다른 글
telepresence intercept 사용해서 로컬머신에서 디버깅 (0) | 2024.11.03 |
---|---|
unknown service telepresence.pro.manager.ProManager 대처 (3) | 2024.11.03 |
Kubernetes ConfigMap with Springboot (0) | 2024.04.10 |
Telepresence 사용해보기 (0) | 2024.04.03 |
Kubernetes CronJob 실행 해보기 (0) | 2024.03.30 |