미니큐브로 서비스에 접속하기

sang yun Lee·2023년 5월 18일
0

Devops 실습

목록 보기
9/20
post-thumbnail

목표


미니큐브에 올려져 있는 서비스를 로컬 호스트에서 접속하기

실습


STEP 1: minikube를 이용해서 클러스터 생성

minikube start

STEP 2: deployment 리소스 생성

  • hello-minikube 라는 이름으로 deployment 리소스 생성
$ kubectl create deployment hello-minikube --image=sebcontents/cozserver:1.0
deployment.apps/hello-minikube created
  • 리소스 생성 확인
$ kubectl get deployment/hello-minikube 
NAME             READY   UP-TO-DATE   AVAILABLE   AGE
hello-minikube   1/1     1            1           74s

STEP 3: 서비스 노출 (서비스 리소스 생성)

  • hello-minikube 리소스를 노출시킨다
$ kubectl expose deployment hello-minikube --type=NodePort --port=8080
service/hello-minikube exposed
  • 리소스 생성 확인
$ kubectl get service hello-minikube 
NAME             TYPE       CLUSTER-IP       EXTERNAL-IP   PORT(S)          AGE
hello-minikube   NodePort   10.109.151.240   <none>        8080:32166/TCP   3m52s

STEP 4: 서비스 접속하기

방법 1: 미니큐브의 IP 를 통해 접속하기

  • 미니큐브 IP 확인
$ minikube ip               
192.168.49.2
  • 접속하려는 service의 Port 확인 (포트가 32166 인 것을 확인할 수 있음)
$ kubectl get service hello-minikube 
NAME             TYPE       CLUSTER-IP       EXTERNAL-IP   PORT(S)          AGE
hello-minikube   NodePort   10.109.151.240   <none>        8080:32166/TCP   3m52s
  • 접속하기
$ curl $(minikube ip):32166

    <h1>CozServer에 오신 것을 환영합니다!</h1>
    <div>버전: v1.0</div>
    <div>파드 이름: hello-minikube-84bcf5d5d8-7tp2b</div>
    <div>::ffff:10.244.0.1에서 오셨군요!</div>

# 또다른 방법
$ minikube service hello-minikube

방법 2: 호스트머신의 IP 를 통해 접속하기 (포트 포워딩을 사용)

  • 로컬 머신에 3333 포트로 들어오는 트래픽은 service/hello-minikube 서비스로 전달하게 함
$ kubectl port-forward service/hello-minikube 3333:8080
Forwarding from 127.0.0.1:3333 -> 8080
Forwarding from [::1]:3333 -> 8080

Handling connection for 3333
Handling connection for 3333
  • 접속하기
$ curl localhost:3333 

    <h1>CozServer에 오신 것을 환영합니다!</h1>
    <div>버전: v1.0</div>
    <div>파드 이름: hello-minikube-84bcf5d5d8-7tp2b</div>
    <div>::ffff:127.0.0.1에서 오셨군요!</div>

참고

0개의 댓글