본문 바로가기
IT/kubernates

WSL2 Ubuntu 환경에서 Docker Desktop 설치 하지 않고 Minikube 설치 및 IntelliJ Kubernetes 플러그인 연동 방법

by 봉즙 2023. 7. 26.

WSL2 우분투 환경에서 docker desktop을 사용하지 않고 minikube를 설치 한 후 intellij kubenates 플러그인과 연결 하려 한다. 

kubernates를 사용하기 위해 docker, hyper-v, vm 등 이 필요한데 가장 익숙한 docker 를 사용하기로 했다.

아래 링크와 코드를 참고 하여 wsl에 docker를 설치한다.  

https://docs.docker.com/engine/install/ubuntu/

 

Install Docker Engine on Ubuntu

 

docs.docker.com

$ sudo apt-get update
$ sudo apt-get install ca-certificates curl gnupg
$ sudo install -m 0755 -d /etc/apt/keyrings
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
$ sudo chmod a+r /etc/apt/keyrings/docker.gpg
$ echo \
  "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
  "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
$ sudo apt-get update
$ sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

docker의 권한도 주도록 하자

$ sudo usermod -aG docker $USER

 

이제 minikube를 설치해야한다.

minikube 또한 wsl 환경에 설치 하기 때문에 ubuntu를 참고하여 설치하면된다.

https://minikube.sigs.k8s.io/docs/start/

 

minikube start

minikube is local Kubernetes

minikube.sigs.k8s.io

 

실행 스크립트는 다음과 같다

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

 

설치 후 클러스터를 실행한다.

$ minikube start
 

 

minikube는 kubectl 을 사용하려면

$ minikube kubectl

로 사용해야해서 복잡성을 줄이기 위해 아래와 같이 등록해서 사용하기도 한다.

$ alias kubectl="minikube kubectl --"



그러나 이 방법은 Intellij 에서 Kubernetes 플러그인에서 인식하지 못하는 문제가 있다

아래의 방법으로 심볼릭 링크를 걸어 주게되면 `\usr\local\bin\'에 minikube 외에 kubectl가 생성된다.

$ ln -s $(which minikube) /usr/local/bin/kubectl


이후 IntelliJ의 kubernetes 플러그인 설정에서 kubectl 실행파일 경로를 아래와 같이 맞춰주고 kubeconfig 파일 경로도 d이미지와 같이 설정해준다 $username은 wsl 사용자 계정을 넣어주면 된다. 

\\wsl$\Ubuntu\usr\local\bin\kubectl
\\wsl$\Ubuntu\home\$username\.kube\config


적용을 누른 다음 intellJ의 서비스를 보면 이미지처럼 적용된 것을 확인 할 수 있다.

 

 

* 만약 인텔리제이에서 crt 경로를 찾을 수 없다는 에러가 발생하면

apiVersion: v1
clusters:
- cluster:
    certificate-authority: \\wsl$\Ubuntu\home\a\.minikube\ca.crt
    extensions:
    - extension:
        last-update: Thu, 07 Sep 2023 09:08:59 KST
        provider: minikube.sigs.k8s.io
        version: v1.31.1
      name: cluster_info
    server: https://127.0.0.1:32769
  name: minikube
contexts:
- context:
    cluster: minikube
    extensions:
    - extension:
        last-update: Thu, 07 Sep 2023 09:08:59 KST
        provider: minikube.sigs.k8s.io
        version: v1.31.1
      name: context_info
    namespace: default
    user: minikube
  name: minikube
current-context: minikube
kind: Config
preferences: {}
users:
- name: minikube
  user:
    client-certificate: \\wsl$\Ubuntu\home\a\.minikube\profiles\minikube\client.crt
    client-key: \\wsl$\Ubuntu\home\a\.minikube\profiles\minikube\client.key

 \\wsl$\Ubuntu\ 를 붙여서 경로를 수정해주면 된다

'IT > kubernates' 카테고리의 다른 글

Pod  (0) 2024.05.21
Node  (0) 2024.05.20
Control Plane  (0) 2024.05.17
Kubernetes Architecture  (0) 2024.05.16
Kubernetes  (0) 2024.05.16

댓글