다음을 통해 공유


SQL Server 2019 빅 데이터 클러스터에 대한 HDFS 권한 관리

적용 대상: SQL Server 2019(15.x)

중요합니다

Microsoft SQL Server 2019 빅 데이터 클러스터 추가 기능이 사용 중지됩니다. SQL Server 2019 빅 데이터 클러스터에 대한 지원은 2025년 2월 28일에 종료됩니다. Software Assurance를 사용하는 SQL Server 2019의 모든 기존 사용자는 플랫폼에서 완전히 지원되며, 소프트웨어는 지원 종료 시점까지 SQL Server 누적 업데이트를 통해 계속 유지 관리됩니다. 자세한 내용은 공지 블로그 게시물Microsoft SQL Server 플랫폼의 빅 데이터 옵션을 참조하세요.

파일 시스템으로서의 HDFS는 파일 권한에 POSIX를 사용하는 Linux 기반 파일 시스템과 유사합니다. 기존 POSIX 권한 모델 외에도 HDFS는 POSIX ACL(액세스 제어 목록)도 지원합니다. 자세한 내용은 ACL에 대한 Apache Hadoop 문서를 참조하세요.

다음 섹션에서는 AZURE Data CLI(azdata)를 사용하여 HDFS 파일 및 디렉터리 권한을 관리하는 방법에 대한 예제를 제공합니다.

필수 조건

HDFS 셸

hdfs Azure Data CLI(azdata)의 셸 기능을 사용하면 셸에서 직접 명령을 실행하여 파일 및 디렉터리에 대한 HDFS 권한을 관리할 수 있습니다. 기본 메커니즘은 WebHdfs 호출을 사용하여 명령을 실행합니다.

다음 명령은 셸을 엽니다.

azdata bdc hdfs shell

셸 도움말에 hdfs 액세스하고 명령을 실행하는 방법을 이해하려면 셸이 활성화되면 다음 명령을 실행합니다.

[hdfs] ?

다음 예제에서는 디렉터리를 만들고, 디렉터리를 나열하고, 디렉터리에 대한 권한을 수정하고, 명명된 사용자에게 bob 디렉터리에 sales대한 읽기, 쓰기 및 실행 액세스 권한을 부여하는 방법을 보여 줍니다.

[hdfs] mkdir sales
[hdfs] ls
rwxr-xr-x  hdfs bdcadmins        0 Oct 09 18:02 system/
rwxrwxr-x admin bdcadmins        0 Oct 10 16:47 sales/
--xrwxrwxrwx  hdfs bdcadmins        0 Oct 09 18:03 tmp/
rwxrwxrwx  hdfs bdcadmins        0 Oct 09 17:59 user/

[hdfs] acl modify  '/sales/' 'user:bob:rwx'
acl modify: Change completed.
[hdfs] acl status  '/sales/'
{
  `AclStatus`: {
    `entries`: [
      `user:bob:rwx`,
      `group::r-x`
    ],
    `group`: `bdcadmins`,
    `owner`: `admin`,
    `permission`: `775`,
    `stickyBit`: false
  }
}

Azure Data CLI를 사용하여 HDFS에서 디렉터리 만들기(azdata)

경로 data/sales이라는 디렉터리를 만듭니다.

azdata bdc hdfs mkdir --path '/sales/data'

디렉터리 또는 파일의 소유자 변경

HDFS에서 디렉터리 data의 소유 사용자를 변경하고 alice을 소유 사용자로, salesgroup을 소유 그룹으로 설정합니다. 소유자를 변경하려면 소유자여야 합니다.

azdata bdc hdfs chown --owner alice --group 'salesgroup' --path '/sales/data'

를 사용하여 파일 또는 디렉터리의 사용 권한 변경 chmod

파일 및 디렉터리(소유자, 소유 그룹 등)에 대한 사용 권한을 변경하는 데 사용합니다 chmod . 자세한 내용은 Linux 파일 시스템에 대한 권한 변경을 참조하세요. hdfs에서 패턴은 동일합니다. 다음은 그 예입니다.

azdata bdc hdfs chmod --permission 750 --path /sales/data
azdata bdc hdfs chmod --permission 775 --path /sales/data/file.txt

디렉터리에 고정 비트 설정

의도하지 않은 파일 삭제 또는 재배치를 방지하기 위해 디렉터리에 고정 비트 캔을 설정합니다. 고정 비트는 파일을 삭제하거나 슈퍼 사용자, 디렉터리 소유자 또는 파일 소유자로 이동할 수 있는 권한을 제한합니다. 이 설정은 파일에 영향을 주지 않습니다. 아래 예제에서는 사용 권한을 접두사로 users하여 디렉터리에 1 고정 비트를 설정합니다.

azdata bdc hdfs chmod --path /sales/users --permission 1750

파일 및 디렉터리에 ACL 설정

HDFS의 파일 및 디렉터리에 ACL을 설정하려면 Azure Data CLI(azdata) 명령을 사용합니다.

디렉터리에 ACL을 설정하고 명명된 사용자에게 tom 디렉터리에 data대한 읽기, 쓰기 및 실행 액세스를 제공합니다.

비고

set 명령을 사용할 때는 사용자 소유자, 소유 그룹 및 기타 사용자에 대한 ACL 사양을 포함하여 전체 ACL 사양을 제공해야 합니다.

azdata bdc hdfs acl set --path '/sales' --aclspec  'user::rw-,user:tom:rwx,group::rw-,other::rw-'

디렉터리에 대한 기본 ACL

기본 ACL을 사용하면 하위 디렉터리가 부모 디렉터리에서 권한을 상속할 수 있습니다. 디렉터리만 기본 ACL을 가질 수 있습니다. 새 파일 또는 하위 디렉터리가 만들어지면 해당 부모의 기본 ACL을 자체 액세스 ACL에 자동으로 상속합니다. 이러한 방식으로 새 하위 디렉터리가 만들어질 때 기본 ACL은 임의 심층 디렉터리 수준을 통해 상속됩니다.

다음은 azdata를 사용하여 기본 ACL을 설정하는 방법의 예입니다.

azdata bdc hdfs acl set --path '/sale' --aclspec  'user::rw-,user:tom:rwx,group::rw-,other::rw-,default:group::rw-,default:user::rw-,default:other::rw-'