시작하기 전에

Apps101을 잘 따라오고 계신가요?

Apps가 처음이신가요?  이 글은 Apps 101 과정의 네번째 글입니다. 전체 과정의 구성을 살펴보시려면 여기를 들러 주세요.


외부에 서비스 노출하기

Nginx 워크로드를 생성하고 실행된 상태라고 하여도 외부에서 접근하기 위해 외부 접속가능한 서비스를 만들어 워크로드와 연결해 줘야 합니다. Apps에서는 외부에 서비스를 노출해야 할 때, 해당 워크로드에 해당하는 포트 정보를 “서비스”로 만들어 관리합니다. 서비스의 여러 타입이 있고 외부에서 접근 가능한 여러 방법이 있지만 이 글에서는 가장 기본 유형이라 할 수 있는 Node Port유형의 서비스를 만들어 실행중인 Nginx 워크로드에 접근하는 방법을 알아 보겠습니다.

STEP 1. 서비스 생성하기

좌측 메뉴중 ‘DevOps’ > ‘서비스’ 을 선택후 상단 ‘서비스’ 탭을 선택 하세요.

service 추가

[그림. service 추가]

서비스 단락의 ‘추가’ 버튼을 눌러 서비스 등록 팝업을 띄우세요.

서비스 등록 팝업

[그림. 서비스 등록 팝업]

다음과 같이 값을 입력 하세요.

  • 서비스 유형 : ‘Node Port’
  • 서비스 명 : ‘nginx-svc’
  • 대상 워크로드 : 이미 실행되고 있는 배포된 nginx 워크로드의 워크로드명을 선택
  • ‘포트 추가’ 버튼 클릭후 다음 정보 입력
    • 이름 : 원하는 이름을 넣으면 됩니다. 여기선 ‘webport’ 입력
    • 프로토콜 : ‘TCP’
    • 타겟포트 : 80
    • 서비스포트 : 80

입력완료후 ‘적용’ 버튼을 눌러 서비스 생성을 완료 하세요.

STEP 2. 서비스 URL로 Nginx워크로드 접속하기

서비스 생성이 완료 되면 생성된 서비스의 URL을 통해 Nginx워크로드에 접속할 수 있습니다.

서비스 생성 완료

[그림. 서비스 생성 완료]

위 [그림.서비스 생성 완료] 처럼 서비스명 옆의 화살표를 누르면 연결할 수 있는 접속 URL이 보입니다.

해당 URL을 클릭하면 아래 그림과 같이 Nginx 워크로드에 접속 합니다.

nginx 접속

[그림. nginx 접속]

‘Welcome to nginx’ 문구가 보이며 정상적으로 nginx 가 실행되고 있는걸 확인할 수 있습니다.

마무리…

이번 글에서는 외부 접속가능한 Node Port유형의 서비스를 만들어 Nginx 워크로드에 접속하는걸 진행 했습니다.

클러스터 내부에서의 서비스간 연결 에서는 굳이 외부 접속가능한 유형의 서비스가 아닌,  클러스터 내부에서만 접근 가능한 서비스(‘ClusterIP’ 유형) 를 만들고 서비스 간에 이름으로도 연결가능 합니다.

Kubernetes의 서비스에 대한 상세한 정보는 여기 를 보세요.

다음 글에서는 볼륨 사용에 대해 알아보도록 하겠습니다.