피곤한데 커피 한잔만 마시고 시작해보자..
Kubernetes와 Mysql Workbench 연동하기-2(로드 밸런서 사용하기)
이전에 쿠버네티스 클러스터 내에서 mysql 서비스와 외부에서 접근할 수 있게 nodeport를 만들어서 사용했던 적이 있다. 그것에 관한 내용은 아래 링크에 달아놓겠다. 이 글을 이해하려면 아래 링크를 통해서 먼저 학습을 하기 바란다.
Kubernetes와 Mysql Workbench 연동하기-1
위 링크에서 노드포트를 생성하기 전까지 과정은 동일하다. 여기서는 노드포트를 사용하기 보다는 로드밸런서를 사용할 것이다. 보통 클라우드를 사용해서 하는 것이 일반적이나 우리는 온프레미스 환경임으로 추가적인 설정이 필요하다.
그것은 metallb를 사용하는 것이다. 여기서는 최대한 간단하게 로드밸런서를 사용해서 mysql에 접근하는 방법을 설명하기 때문에 metallb와 관련된 내용도 아래 링크에 달아놓겠다.
위에 달아놓은 링크를 봤다면 아래 사진과 같은 상태일 것이다. 4개의 스피커가 있고 하나의 컨트롤러가 있다.
그리고 첫 번째로 단 링크를 보고 노드포트를 설정하기 전까지 왔다면 아래 사진과 같이 mysql 파드가 있는 것을 볼 수 있다.
먼저 해야 할 일은 mysql service를 삭제 해줘야 한다. expose를 해서 다시 생성해줄 것이기 때문이다.
kubectl delete service mysql
위 명령으로 mysql service를 지운다음 다시 만든다.
kubectl expose deployment mysql --type=LoadBalancer --name=mysql --port=3306
위 명령을 입력하면 mysql 서비스와 함께 External IP가 생성된다.
External IP가 192.168.1.13으로 지정된 것을 볼 수 있다.
이제 Mysql Workbench로 접근해 보자.
위 사진과 같이 설정하되 Store in Vault를 누르고 password에 우리가 설정했던 password를 입력해준다. 그리고 Test Connection를 누르면 연결이 된 것을 볼 수 있다.