Minikube 환경을 Portainer에서 관리할 수 있도록 연결하는 내용을 정리합니다.
Minikube 설치
Minikube 환경 구성/설치는 아래 포스트를 참고하면 되겠습니다.
Portainer 설치
Docker 환경에 Portainer 구성/설치는 아래 포스트를 참고하면 되겠습니다.
Portainer에 Minikube 환경 추가
Portainer와 Minikube 네트워크 연결
Docker Desktop 환경과 Minikube 환경은 다른 네트워크에 존재하므로 서로 독립적이며 통신이 불가능한 환경입니다.
그러므로 서로 간의 통신을 할 수 있도록 네트워크를 연결해 주어야 합니다.
그 방법은 Portainer의 네트워크에 Minikube 네트워크를 조인하여 연결해주면 되겠습니다.
1. 우선 Portainer UI( http://localhost:9000/ )에 접속 합니다.
2. Containers 메뉴에서 Portainer 컨테이너를 선택합니다.


3. Container details 에서 하단의 ‘ Connected networks ‘ 부분에서 minikube Network를 Join 합니다.


4. Portainer의 컨테이너 IP가 바뀌어 표시되는 것을 확인할 수 있습니다.

Network를 Join하면 컨테이너에 할당된 IP는 아래와 같이 확인됩니다.
- portainer : 192.168.49.3
- minikube : 192.168.49.2
Portainer에 환경 추가
1. Portainer 왼쪽 매뉴 중 ‘Environments’ 메뉴를 클릭합니다.

2. 오른쪽에 ‘Add environment’를 클릭합니다.

3. Kubernetes를 선택하고 ‘Start Wizard’를 클릭합니다.

4. Agent를 선택합니다.

5. ‘Kubernetes via node port’를 선택하고 표시된 명령어로 Minikube 환경에서 Portainer-Agent를 배포합니다.
kubectl apply -f https://downloads.portainer.io/ce2-16/portainer-agent-k8s-nodeport.yaml
PS C:\Windows\system32> kubectl apply -f https://downloads.portainer.io/ce2-16/portainer-agent-k8s-nodeport.yaml
namespace/portainer unchanged
serviceaccount/portainer-sa-clusteradmin unchanged
clusterrolebinding.rbac.authorization.k8s.io/portainer-crb-clusteradmin unchanged
service/portainer-agent unchanged
service/portainer-agent-headless unchanged
deployment.apps/portainer-agent unchanged
PS C:\Windows\system32>
PS C:\Windows\system32> kubectl get pod -A
NAMESPACE NAME READY STATUS RESTARTS AGE
kube-system coredns-5dd5756b68-q47x2 1/1 Running 1 (26m ago) 3d12h
kube-system etcd-minikube 1/1 Running 1 (26m ago) 3d12h
kube-system kube-apiserver-minikube 1/1 Running 1 (26m ago) 3d12h
kube-system kube-controller-manager-minikube 1/1 Running 3 (26m ago) 3d12h
kube-system kube-proxy-5j6xr 1/1 Running 1 (26m ago) 3d12h
kube-system kube-scheduler-minikube 1/1 Running 1 (26m ago) 3d12h
kube-system storage-provisioner 1/1 Running 2 (26m ago) 3d12h
portainer portainer-agent-5d979d5f6b-xspb5 1/1 Running 1 (26m ago) 3d12h
PS C:\Windows\system32>
PS C:\Windows\system32> kubectl get svc -A
NAMESPACE NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
default kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 3d12h
kube-system kube-dns ClusterIP 10.96.0.10 <none> 53/UDP,53/TCP,9153/TCP 3d12h
portainer portainer-agent NodePort 10.110.29.38 <none> 9001:30778/TCP 3d12h
portainer portainer-agent-headless ClusterIP None <none> <none> 3d12h
PS C:\Windows\system32>
6. Portainer 에서 Name, Environment address를 추가입력합니다.
- Name : minikube
- Environment address : 192.168.49.2:30778
위 IP와 포트는 minikube 컨테이너 IP와 portainer-agent의 포트입니다.

7. Connect를 클릭합니다.

New Environments가 추가된 것을 확인할 수 있습니다.

Minikube 환경 접속
Portainer에서 Home을 보면 추가한 minikube 환경을 확인 할 수 있습니다.

환경을 접속하면 Portainer 관리툴에서 minikube도 기본적인 관리를 할 수 있겠습니다.

마치며
Minikube Dashboard를 이용해서 쿠버네티스 환경을 관리할 수도 있지만 Portainer를 통해서도 쿠버네티스 환경을 관리할 수 있겠습니다.
구성을 하고보니 Portainer가 과거 버전(2.16.2) 여서 Service 메뉴가 보이지 않는 부분이 있습니다.
최신 버전 Portainer로 업그레이드를 하면 Service 메뉴도 확인할 수 있겠습니다.