[k8s] Docker desktop으로 k8s 사용하기 (w. minikube)

🔥Log·2024년 11월 16일
0

k8s

목록 보기
1/15

☕ 개요


이번 글에서는 Docker desktop으로 k8s를 사용하는 방법과 k8s 대시보드를 연동하는 방법에 대해서 알아보도록 하겠다.

💡 환경

  • OS: Ubuntu 24.04 (WSL2)


🐋 Docker desktop


1) Docker desktop 설치

Docker desktop 홈페이지에서 각자의 OS에 맞는 파일로 Docker desktop을 설치해주자.

2) K8s 활성화

Docker desktop 설치 후, '설정'탭에 들어가서 k8s를 활성화해주자.
그러면, k8s 사용을 위한 이미지들이 다운로드 될 것이다.

3) 활성화 확인

CLI에서 버전을 찍어보면, 정상적으로 출력되는 것을 확인할 수 있다.



🐳 K8S 대시보드


k8s에서는 GUI환경에서 k8s를 사용할 수 있도록 대시보드를 제공하고 있다. 다만, 이것을 실제 상용 환경에서 사용하는 것은 보안적으로 매우 위험하다고 하니, 개발 & 테스트 용으로만 사용하도록 하자!

k8s 대시보드는 공식문서에서 설치 방법을 제공하고 있다.

1) 대시보드 UI 배포

kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.6.1/aio/deploy/recommended.yaml

위 명령어를 실행해서 k8s 대시보드를 배포해주자.

2) 대시보드 접속 활성화

kubectl proxy

위 명령어를 실행하면, 대시보드에 접속이 가능해진다.

3) 대시보드 접속

대시보드를 띄운 후, 위 경로로 접속하면 대시보드 UI를 확인할 수 있다.

4) 유저 생성

대시보드에 처음 접속하면, 토큰을 입력하거나 설정 파일을 통해서 인증 과정을 거친다. 이 글에서는 토큰을 입력하는 방법을 사용해보도록 할 것인데 그전에 관리자 계정부터 생성해보도록 하겠다.

4-1) 유저 생성을 위한 yml 작성

apiVersion: v1
kind: ServiceAccount
metadata:
  name: admin-user
  namespace: kubernetes-dashboard

위와 같이 yml파일을 만들어주자.
이는 k8s 클러스터에 ServiceAccount를 생성하기 위한 파일이다.

4-2) 유저 생성 yml 배포(실행)

kubectl apply -f {파일 명}.yaml

그리고, 위 명령어를 통해서 yml을 배포해주자. 그러면, 아래와 같이 ServiceAccount가 잘 생성됐다는 메세지가 출력될 것이다.

4-3) 생성된 유저에게 권한 부여

apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: admin-user
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: cluster-admin
subjects:
  - kind: ServiceAccount
    name: admin-user
    namespace: kubernetes-dashboard

유저가 생성됐다면, 위와 같은 파일을 만든 후, 배포해주자.
그러면, 아래와 같이 정상적으로 권한이 부여된 것을 확인할 수 있다.

4-4) 토큰 발행

kubectl -n kubernetes-dashboard create token admin-user

그리고 위 명령어를 실행하면, 대시보드 접속을 위한 토큰이 출력된다.

4-5) 토큰 입력 & 접속 성공

짜잔💡 이제 대시보드 UI에서 토큰을 입력해주면, 이렇게 Welcome UI를 확인할 수 있다.



🐳 minikube


docker-desktop을 통해서 설치한 k8s를 사용하고 싶지 않다면, minikube를 사용할 수도 있다. 그래서 minikube 설치법을 간단히 정리해보겠다.

1) minikube 설치

curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
sudo install minikube-linux-amd64 /usr/local/bin/minikube && rm minikube-linux-amd64

2) minikube 실행

minikube start --force

나는 Ubuntu(WSL)를 개발환경으로 세팅되어 있고, Ubuntu를 사용할 때는 root계정으로 사용하고 있어서, --force 옵션을 붙여서 minikube를 실행해주었다.

그러면, 잠시후 이렇게 정상적으로 실행된 것을 확인할 수 있다.

3) 대시보드 실행

minikube dashboard

위 명령어를 실행하면, 대시보드가 잘 실행된다.

minikube를 통해서 대시보드를 실행하면, 이전 섹션에서 설치한 k8s 대시보드와 달리 유저 생성 & 로그인 과정을 생략해도 돼서, 좀 더 편라하게 사용할 수 있다.



🙏 참고


0개의 댓글