클러스터 노드에 SSH접속하기 (on VPC)

Cloud Hadoop 콘솔이나, Ambari/Hue등의 Web UI를 통해서 관리작업 또는 Application을 제출할 수 있습니다만, 직접 클라이언트를 실행하고 싶을 때는 노드에 SSH접속이 필요합니다.

목차

사전작업

1. SSL VPN 설정

a. SSL VPN 생성

콘솔 > SSL VPN을 선택합니다. SSL VPN 생성 버튼을 클릭해서 VPN을 생성합니다. 상태가 운영중으로 바뀌면 생성이 완료된것입니다. VPN 접속경로는 생성완료시 발송되는 이메일에서 확인할 수 있습니다. 이 대역을 Subnet의 Route Table에 추가해야 하므로 반드시 메일을 확인해야 합니다.

SSL VPN생성이 완료되면 위와 같은 메일을 받게 됩니다.

운영중인 VPN을 선택하고 사용자 설정에 VPN을 사용자를 추가합니다. 앞으로 VPN에 접속 할 때 마다, 사용자는 위에 입력한 이메일과 SMS로 OTP인증 문자를 받게 됩니다.

b. Subnet의 Route Table에 VPN대역 추가

콘솔 > VPC > Route Table을 선택합니다. 여기서 Cloud Hadoop 시작하기 - 사전작업에서 생성한 Subnet마다 Route Table이 생성된것을 확인 할 수 있습니다. 접속하려고하는 클러스터를 위치시킨 Subnet의 Route Table에 각각 SSL VPN의 대역을 등록합니다.

설정하려는 Route Table을 체크하고 Routes 설정을 클릭합니다.

아래 세가지 정보를 입력하고 Table Entry를 생성합니다. 다른 Route Table에도 똑같이 진행합니다.

  • Destination: SSL VPN의 IP Pool
  • Target Type: SSL VPN
  • Target Name: 위에서 생성한 SSL VPN

c. 클러스터 ACG에 VPN대역 추가

콘솔 > Server > ACG를 선택합니다. 접근하려는 클러스터의 ACG를 선택하고 ACG 설정을 클릭합니다.

아래 네가지 정보를 입력하고 ACG Rule을 추가합니다.

  • 프로토콜: TCP
  • 접근 소스: SSL VPN의 IP Pool
  • 허용 포트: 통신이 필요한 포트범위
  • 메모(선택)

d. SSL VPN 클라이언트 다운로드

Cloud Hadoop 시작하기에서 생성한 SSL VPN을 이용하려면, 클라이언트 프로그램이 설치되어 있어야 합니다. 자료실에서 SSL VPN Agent를 다운로드 합니다. 압축을 풀고, mac OS의 경우 *.dmg파일을, Windows의 경우 .zip파일을 사용해서 설치를 진행합니다.

설치가 완료되면 위와같은 어플리케이션을 확인할 수 있습니다.

mac OS Catalina 버전에서, 압축을 해제하려고 할 때 오류 22 유효하지 않은 변수 에러가 발생할 수 있습니다. 이 경우, 기본 uninstaller(아카이브 유틸리티)가 아니라 The Unarchiver같은 프로그램을 사용하시면 됩니다.

e. SSL VPN 클라이언트 실행

다운로드 받은 SSL VPN 클라이언트를 실행합니다.

VPN 생성시, 이메일로 전달받은 SSL VPN경로를 입력하고 Connect 버튼을 클릭합니다.

OTP 인증이 완료되면 SSL VPN을 통해서 VPN을 만들때 선택한 VPC로 접근할 수 있습니다. 동일한 VPC/Subnet에 접근한다면, 1~4 단계는 최초 한번만 필요합니다.

2. 고정IP를 ACG에 추가

콘솔 > Server > ACG를 선택합니다. 접근하려는 클러스터의 ACG를 선택하고 ACG 설정을 클릭합니다.

아래 네가지 정보를 입력하고 ACG Rule을 추가합니다.

  • 프로토콜: TCP
  • 접근 소스: SSH통신을 하는 로컬 장비의 IP
  • 허용 포트: 22
  • 메모(선택)

SSH 접속

DNS에 접속하면 클러스터의 엣지노드로 접속하게 됩니다. 그 외의 다른 노드는 엣지노드에서 SSH로 접속가능합니다.

mac OS

여기서는 iTerm2를 이용합니다. 다른 프로그램을 사용해도 같은 동작을 수행한다면 결과는 동일합니다.

chmod 400 </path/to/pem-key>
ssh -i </path/to/pem-key>  sshuser@<cluster-domian>

Windows

여기서는 PuTTY 클라이언트를 사용합니다. 다른 프로그램을 사용해도 같은 동작을 수행한다면 결과는 동일합니다.

PuTTY에서는 Cloud Hadoop에서 생성된 프라이빗 키 형식(.pem)을 기본적으로 지원하지 않습니다. PuTTY에서 제공하는 PuTTYgen이라는 도구를 사용하면 키를 PuTTY에서 사용하는 형식(.ppk)으로 변환할 수 있습니다. PuTTY를 사용하여 마스터 노드에 연결하기 전에 프라이빗 키를 이 형식(.ppk)으로 변환해야 합니다.

.pem 키 변환

  1. PuTTYgen을 시작합니다(시작 메뉴에서 All Programs > PuTTY > PuTTYgen).

  2. Type of key to generate에서 RSA를 선택하고 Load를 클릭합니다.

  3. pem 파일을 찾으려면 모든 유형의 파일을 표시하는 옵션을 선택합니다.

    • .pem 파일은 현재 클러스터에 적용되어 있는 인증키의 파일명이며 사용자 로컬 PC에 해당 .pem 파일이 저장되어 있어야 합니다.
    • .pem 파일을 분실했을 경우 콘솔 > 서버 접속 관리 > 클러스터 직접 접속 인증키 관리 메뉴에서 접속하는 인증키를 변경할 수 있습니다.
  4. 클러스터 생성할 때 지정한 인증키에 대한 .pem 파일을 선택한 다음 Open을 클릭합니다. OK를 클릭하여 확인 대화 상자를 닫습니다.

  5. Save private key를 선택하여 PuTTY에서 사용할 수 있는 형식으로 키를 저장합니다.

    PuTTYgen에서 암호 없이 키 저장에 대한 경고가 표시되면 Yes를 선택합니다. 기존 생성한 인증키와 동일한 이름을 지정합니다.PuTTY가 자동으로 .ppk 파일 확장자를 추가합니다.

서버 접속

  1. PuTTY에서 Category 창에서 Session을 선택하고 Host Name 정보를 입력합니다.Connection typeSSH를 선택하고, Port22를 입력합니다.

     sshuser@DNS
    

  2. Category 창에서 Connection, SSH를 확장한 다음 Auth를 선택합니다.

    1) Browse를 클릭합니다. 2) .pem 파일을 변환하여 생성한 .ppk 파일을 선택한 다음 Open을 클릭합니다. 3) Open을 클릭하여 PuTTY 세션을 선택합니다.

  3. 엣지노드에 접속되었습니다.

""에 대한 건이 검색되었습니다.

    ""에 대한 검색 결과가 없습니다.

    처리중...