계정 생성 및 관리
    • PDF

    계정 생성 및 관리

    • PDF

    Article Summary

    VPC 환경에서 이용 가능합니다.

    Data Forest의 계정과 앱을 생성하고 관리하는 방법을 설명합니다.

    계정 생성

    Data Forest의 계정을 생성하는 방법은 다음과 같습니다.

    1. 네이버 클라우드 플랫폼 콘솔에 접속해 주십시오.
    2. Platform 메뉴의 VPC을 클릭해 VPC 환경으로 변경해 주십시오.
    3. Services > Big Data & Analytics > Data Forest 메뉴를 차례대로 클릭해 주십시오.
    4. Accounts > [계정 생성] 버튼을 클릭해 주십시오.
    5. 계정 이름계정 패스워드를 입력해 주십시오.
      • 계정 이름: 앱 제출 시 필요한 계정 이름 입력(최소 2자, 최대 16자의 영문자와 숫자 조합 가능. 계정 이름은 클러스터 내에서 고유한 값이어야 하므로 [중복 확인] 버튼을 클릭하여 중복 여부 확인)
      • 계정 패스워드: 계정 로그인 시 사용할 비밀번호 입력(최소 8자, 최대 20자여야하고 영어 대소문자, 특수문자, 숫자가 각 1자 이상 입력되어야 함)
    6. [생성] 버튼을 클릭해 주십시오.
    7. 계정 목록에서 계정이 생성되었는지 확인해 주십시오.
      • 계정이 생성되는데 약 2~3분 정도 소요됩니다.
      • 계정이 정상적으로 생성되면 계정 상태가 운영중으로 변경됩니다.
    8. 계정 상태가 운영중인지 확인해 주십시오.
      df-account_03_vpc_ko
    참고

    Data Forest 에서는 사용자별 1개의 계정만 생성 및 사용이 가능합니다.

    계정 관리

    클러스터 접속 정보 확인

    클러스터의 애플리케이션 유형별 접속 정보를 확인하는 방법은 다음과 같습니다.

    1. 네이버 클라우드 플랫폼 콘솔에서 Services > Big Data & Analytics > Data Forest 메뉴를 차례대로 클릭해 주십시오.
    2. 좌측의 Data Forest > Apps 메뉴를 클릭해 주십시오.
    3. 생성한 앱을 선택한 후 앱 상세 정보의 Quick links > [접속정보 상세보기] 를 클릭해 주십시오.
    4. 클러스터의 애플리케이션 유형별 접속 정보를 확인해 주십시오.
      df-account_13_vpc_ko

    키탭 다운로드

    해당 계정으로 클러스터에 접속하려면 키탭 파일이 필요합니다. 키탭 파일을 다운로드하는 방법은 다음과 같습니다.

    1. 네이버 클라우드 플랫폼 콘솔에서 Services > Big Data & Analytics > Data Forest > Accounts 메뉴를 차례대로 클릭해 주십시오.
    2. 계정을 선택하고 클러스터 접속 정보 > 커버로스 키탭 다운로드를 클릭해 주십시오.
    3. 다운로드 창이 나타나면 [다운로드] 버튼을 클릭해 주십시오.
      df-account_05_vpc_ko

    HDFS Quota 변경

    계정이 사용하는 클러스터의 네임스페이스에 따라 각 HDFS의 파일 개수와 파일 용량을 변경할 수 있습니다.

    1. 네이버 클라우드 플랫폼 콘솔에서 Services > Big Data & Analytics > Data Forest > Accounts 메뉴를 차례대로 클릭해 주십시오.
    2. HDFS Quota를 변경할 계정을 선택하고 계정 설정 변경 > HDFS Quota 변경을 클릭해 주십시오.
    3. HDFS Quota 변경 창이 나타나면 정보를 변경하고 [변경] 버튼을 클릭해 주십시오.
      df-account_06_vpc_ko
      • 네임스페이스: 네임스페이스 선택
      • 변경할 파일 개수: 최소 100만 개에서 최대 500만 개까지 100만 개 단위로 선택 가능 (기본값: 100만 개)
      • 변경할 파일 용량: 최소 200TB에서 최대 500TB까지 100TB 단위로 선택 가능 (기본값: 200TB)

    Kerberos 키탭 초기화

    다운로드한 키탭을 분실했거나 키탭 변경이 필요한 경우 Kerberos 키탭을 초기화할 수 있습니다.

    Kerberos 키탭을 초기화하는 방법은 다음과 같습니다.

    1. 네이버 클라우드 플랫폼 콘솔에서 Services > Big Data & Analytics > Data Forest > Accounts 메뉴를 차례대로 클릭해 주십시오.
    2. 키탭을 변경할 계정을 선택하고 계정 설정 변경 > 커버로스 키탭 초기화를 클릭해 주십시오.
    3. Kerberos 키탭 초기화 창이 나타나면 정보를 확인하고 [초기화] 버튼을 클릭해 주십시오.
    주의

    Kerberos 키탭을 초기화할 경우, 기존 키탭을 사용하는 애플리케이션, 배치 잡은 전부 실패하게 되므로 주의해 주십시오.

    계정 패스워드 초기화

    계정의 비밀번호를 분실했거나 비밀번호 변경이 필요한 경우 비밀번호를 변경할 수 있습니다.
    계정 비밀번호를 초기화하는 방법은 다음과 같습니다.

    1. 네이버 클라우드 플랫폼 콘솔에서 Services > Big Data & Analytics > Data Forest > Accounts 메뉴를 차례대로 클릭해 주십시오.
    2. 계정 비밀번호를 초기화할 계정을 선택하고 계정 설정 변경 > 계정 패스워드 초기화를 클릭해 주십시오.
    3. 계정 패스워드 변경 초기화 창이 나타나면 변경할 신규 비밀번호를 입력하고 [변경] 버튼을 클릭해 주십시오.

    계정 삭제

    사용하지 않는 계정은 삭제할 수 있습니다. 계정을 삭제하는 방법은 다음과 같습니다.

    1. 네이버 클라우드 플랫폼 콘솔에서 Services > Big Data & Analytics > Data Forest > Accounts 메뉴를 차례대로 클릭해 주십시오.
    2. 삭제할 계정을 선택한 다음 [삭제] 버튼을 클릭해 주십시오.
    3. 계정 삭제 창에 삭제할 계정의 이름을 입력하고 [삭제] 버튼을 클릭해 주십시오.
    주의
    • 해당 계정에 앱이 존재할 경우 계정을 삭제할 수 없습니다. 계정을 삭제하기 전에 앱을 먼저 삭제해 주십시오.
    • 계정을 삭제할 경우 해당 계정의 HDFS에 저장된 데이터 및 파일도 모두 삭제되고 복구가 불가하므로 주의해 주십시오.

    계정 인증

    Data Forest에서 사용자를 인증하는 방법은 두 가지입니다. 계정 이름과 패스워드를 사용하는 방법과 Kerberos principal과 키탭을 사용하는 방법을 설명합니다.

    계정명과 패스워드 사용

    Web UI - SSO

    Data Forest는 kr.df.naverncp.com 도메인을 사용합니다. 쿠키 정보를 기반으로 로그인 정보를 유지하므로 동일한 도메인에 한해서 별도로 로그인하지 않아도 됩니다. koya-nn1.kr.df.naverncp.com에 로그인했다면 rm1.kr.df.naverncp.com에도 바로 접근할 수 있습니다. HTTP 쿠키를 기반으로 동작하는 SSO이기 때문에 도메인이 다른 경우에는 SSO가 적용되지 않습니다.

    Web UI로 로그인하는 방법은 다음과 같습니다.

    1. Web SSO를 지원하는 웹 서버에 접속해 주십시오.
    2. 로그인 창이 나타나면 Username, Password 항목에 각각 Data Forest 생성 시 지정한 계정명과 비밀번호를 입력하고 [LOGIN] 버튼을 클릭해 주십시오.
      df-auth_01_vpc_ko
    참고

    계정명과 패스워드가 일치하지 않을 경우, 아이디와 패스워드 입력을 요구하는 팝업 창이 나타납니다. 팝업 창에 정보를 입력하지 말고 [취소] 버튼을 클릭한 후 이전의 로그인 UI에서 다시 로그인을 시도해 주십시오.
    df-auth_02_vpc_ko

    인증 과정에서는 세션 쿠키를 사용합니다. 로그인 세션은 최대 10시간 유지되므로 브라우저를 종료하지 않았다면 10시간 뒤에 다시 로그인을 요구합니다. 로그아웃 기능은 별도로 없으며, 브라우저를 완전히 종료하거나 쿠키를 삭제하면 로그아웃할 수 있습니다.(kr.df.naverncp.com 도메인에 대해서 hadoop.auth, hadoop-jwt 쿠키 삭제)

    Web UI에서 로그아웃하는 방법은 다음과 같습니다.

    1. Chrome 브라우저 기준으로, 브라우저에서 [도구 더보기] > [개발자 도구] 버튼을 클릭해 주십시오.
      df-auth_04_vpc_ko
    2. [Application] 탭에서 [Storage] > [Cookies] 를 클릭해 주십시오.
    3. kr.df.naverncp.com 도메인의 쿠키를 클릭해 주십시오.
      df-auth_05_vpc_ko
    4. hadoop.auth, hadoop-jwt 를 마우스 오른쪽 버튼으로 클릭한 후 [Delete] 를 클릭해 주십시오. 쿠키가 삭제됩니다.
      df-auth_06_vpc_ko

    HTTP API - Basic

    Basic Authentication를 사용하는 HTTP API에는 -u 옵션을 사용하여 username:password를 명시합니다.

    $ curl -s -u example  "https://sso.kr.df.naverncp.com/gateway/koya-auth-basic/webhdfs/v1?op=GETHOMEDIRECTORY" | python -m json.tool
    Enter host password for user 'example':
    {
        "Path": "/user/example"
    }
    

    또는 Authorization: Basic $ENCODED_STRING 헤더를 주면 -u 옵션 필요 없이 인증할 수 있습니다. ENCODED_STRINGusername:password 를 Base64 형식으로 인코드한 값입니다.

     curl -s -H "Authorization: Basic ZXhhbXBsZTohQFF3ZXJ0MTI=" "https://sso.kr.df.naverncp.com/gateway/koya-auth-basic/webhdfs/v1?op=GETHOMEDIRECTORY" | python -m json.tool
    {
        "Path": "/user/example"
    }
    

    Kerberos principal과 키탭 사용

    Kerberos principal은 Kerberos 시스템에서 고유한 아이덴티티를 나타냅니다. 키탭 파일은 Kerberos principal에 대응되는 대칭키 알고리즘에서 사용할 암호화 키를 가짐으로서 비밀번호 역할을 합니다. Kerberos 인증은 사용하려는 호스트의 추가 설정이 필요하고, 운영 체제별로 설정하는 방법이 다릅니다.

    주의

    Kerberos 키탭 파일은 담당자 외에 다른 사람이 접근할 수 없도록 관리해 주십시오. Kerberos 키탭 파일이 유출되면 해당 파일을 얻은 제3자가 키탭에 명시된 Principal의 권한을 사용할 수 있습니다. Public 서버 또는 다수가 접근할 수 있는 Private 소스 저장소에 키탭 파일을 업로드하지 않도록 주의해 주십시오.

    키탭 인증 및 내용 확인

    업로드된 키는 kinit 명령어를 사용하여 인증할 수 있습니다.

    참고

    키를 HDFS에 업로드하는 방법은 Dev 앱 사용 > Kerberos 인증을 참조해 주십시오.

    CentOS7

    $ kinit example -kt df.example.keytab
    $ klist -5
    Ticket cache: FILE:/tmp/krb5cc_p46655
    Default principal: example@KR.DF.NAVERNCP.COM
    
    Valid starting       Expires              Service principal
    04/05/2021 18:02:22  04/06/2021 18:02:22  krbtgt/KR.DF.NAVERNCP.COM@KR.DF.NAVERNCP.COM
            renew until 04/12/2021 18:02:22
    

    키탭 파일의 내용을 확인하려면 klist 명령어를 사용해 주십시오.

    $ klist -kte df.example.keytab
    Keytab name: FILE:df.example.keytab
    KVNO Timestamp           Principal
    ---- ------------------- ------------------------------------------------------
       4 12/28/2020 11:13:57 example@KR.DF.NAVERNCP.COM (aes256-cts-hmac-sha1-96)
       4 12/28/2020 11:13:57 example@KR.DF.NAVERNCP.COM (aes128-cts-hmac-sha1-96)
       4 12/28/2020 11:13:57 example@KR.DF.NAVERNCP.COM (des3-cbc-sha1)
    

    macOS

    $ kinit --keytab=df.example.keytab example
    $ klist -5
    Credentials cache: API:B94B9BE6-0510-4621-B6B9-E48F30488DAC
            Principal: example@KR.DF.NAVERNCP.COM
    
      Issued                Expires               Principal
    Apr  5 18:11:06 2021  Apr  6 18:11:06 2021  krbtgt/KR.DF.NAVERNCP.COM@KR.DF.NAVERNCP.COM
    $ ktutil --keytab=df.example.keytab list
    df.example.keytab:
    
    Vno  Type                     Principal                   Aliases
      4  aes256-cts-hmac-sha1-96  example@KR.DF.NAVERNCP.COM
      4  aes128-cts-hmac-sha1-96  example@KR.DF.NAVERNCP.COM
      4  des3-cbc-sha1            example@KR.DF.NAVERNCP.COM
    

    HTTP API - SPNEGO

    HTTP API는 SPNEGO를 사용합니다. HTTP API는 호출하기 전에 Kerberos 인증을 먼저 수행해야 하며, Kerberos 인증 후 cURL로 쉽게 SPNEGO를 사용할 수 있습니다.

    주의

    wget은 SPNEGO를 지원하지 않습니다.

    키탭 인증 및 내용 확인을 참조하여 kinit을 먼저 수행한 후 -u : --negotiate 옵션을 사용해 주십시오.

    $ kinit example -kt df.example.keytab
    $ curl -u : --negotiate "https://sso.kr.df.naverncp.com/gateway/koya-auth-kerb/webhdfs/v1/user/example?op=GETHOMEDIRECTORY" | python -m json.tool
    {
        "Path": "/user/example"
    }
    

    또는 Authorization: Negotiate $ENCODED_STRING 헤더를 주면 -u 옵션 필요 없이 인증할 수 있습니다. ENCODED_STRINGgssapi-data 를 Base64 형식으로 인코드한 값입니다.

     curl -s -H "Authorization: Negotiate ZXhhbXBsZTohQFF3ZXJ0MTI=" "https://sso.kr.df.naverncp.com/gateway/koya-auth-kerb/webhdfs/v1/user/example?op=GETHOMEDIRECTORY" | python -m json.tool
    {
        "Path": "/user/example"
    }
    
    참고

    cURL은 빌드 버전에 따라 SPNEGO를 지원하지 않을 수 있습니다. 빌드 버전을 확인하여 Features에 GSS-Negotiate, SPNEGO가 있는지 확인해 주십시오

    $ curl --version
    curl 7.29.0 (x86_64-redhat-linux-gnu) libcurl/7.29.0 NSS/3.44 zlib/1.2.7 libidn/1.28 libssh2/1.8.0
    Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp scp sftp smtp smtps telnet tftp
    Features: AsynchDNS GSS-Negotiate IDN IPv6 Largefile NTLM NTLM_WB SSL libz unix-sockets
    

    HTTP API 인증 방법 확인

    엔드포인트만 보고 어떤 인증 방법을 사용해야 하는지 파악하기 힘든 경우, 인증 정보 없이 요청을 호출할 수 있습니다. WWW-Authenticate 헤더값에 따라 인증 방법을 확인할 수 있습니다.

    WWW-Authenticate인증 방법
    BasicBasic Auth
    NegotiateSPENGO

    Basic Auth

    $ curl -i "https://sso.kr.df.naverncp.com/gateway/koya-auth-basic/webhdfs/v1?op=GETHOMEDIRECTORY"
    HTTP/1.1 401 Unauthorized
    Date: Mon, 05 Apr 2021 09:39:53 GMT
    Server: Jetty(9.4.12.v20180830)
    WWW-Authenticate: BASIC realm="application"
    Content-Length: 0
    Set-Cookie: ROUTEID=.1; path=/
    

    SPENGO

    $ curl -i "https://sso.kr.df.naverncp.com/gateway/koya-auth-kerb/webhdfs/v1/user/example?op=GETFILESTATUS"
    HTTP/1.1 401 Authentication required
    Date: Mon, 05 Apr 2021 09:39:04 GMT
    Server: Jetty(9.4.12.v20180830)
    WWW-Authenticate: Negotiate
    Cache-Control: must-revalidate,no-cache,no-store
    Content-Type: text/html;charset=iso-8859-1
    Content-Length: 391
    Set-Cookie: hadoop.auth=; Path=gateway/koya-auth-kerb; Domain=sso.kr.df.naverncp.com; Secure; HttpOnly
    Set-Cookie: ROUTEID=.2; path=/
    

    이 문서가 도움이 되었습니까?

    Changing your password will log you out immediately. Use the new password to log back in.
    First name must have atleast 2 characters. Numbers and special characters are not allowed.
    Last name must have atleast 1 characters. Numbers and special characters are not allowed.
    Enter a valid email
    Enter a valid password
    Your profile has been successfully updated.