4.3. 공유 액세스 권한 부여
계산 인스턴스와 같은 클라이언트에 공유를 마운트하려면 다음과 유사한 명령을 사용하여 클라이언트에 공유에 대한 액세스 권한을 부여해야 합니다.
# manila access-allow <share> <accesstype> --access-level <accesslevel> <clientidentifier>
다음 값을 바꿉니다.
-
공유
- 4.1.5절. “공유 생성” 에 생성된 공유의 공유 이름 또는 ID입니다. accesstype
- 공유에서 요청할 액세스 유형입니다. 몇 가지 유형은 다음과 같습니다.-
user
: 를 사용하여 사용자 또는 그룹 이름으로 인증합니다. -
IP
: 을 사용하여 IP 주소를 통해 인스턴스를 인증합니다. cephx
: 를 사용하여 기본 CephFS 클라이언트 사용자 이름으로 인증합니다.참고액세스 유형은 공유의 프로토콜에 따라 다릅니다. NFS 공유의 경우
ip
액세스 유형만 허용됩니다. CIFS의 경우사용자
액세스 유형이 적합합니다. 기본 CephFS 공유의 경우cephx
를 사용해야 합니다.
-
accessLevel
- 선택 사항, 기본값은rw
입니다.-
w
: 공유에 대한 읽기-쓰기 액세스. -
ro
: 공유에 대한 읽기 전용 액세스.
-
클라이언트 ID
-액세스 유형에 따라 다릅니다
.-
ip
액세스 유형에 IP 주소를 사용합니다
. -
사용자
액세스 유형에는 CIFS
.사용자
또는 그룹을 사용합니다 -
cephx 액세스 유형에 사용자 이름 문자열을 사용합니다
.
-
4.3.1. 공유에 대한 액세스 권한 부여
사용자가 공유에서 데이터를 읽고 데이터를 작성할 수 있도록 최종 사용자 클라이언트에 공유에 대한 액세스 권한을 부여해야 합니다.
이 절차를 사용하여 인스턴스의 IP 주소를 통해 NFS 공유에 대한 클라이언트 계산 인스턴스 액세스 권한을 부여합니다. CIFS 공유 및 CephFS 공유에 대한 cephx
규칙의 사용자
규칙은 유사한 패턴을 따릅니다. user
및 cephx
액세스 유형을 사용하면 필요한 경우 여러 클라이언트에서 동일한 클라이언트
ID를 사용할 수 있습니다.
예제 절차에서 클라이언트의 IP 주소 제품군 버전은 중요하지 않습니다. 이 절차의 단계에서는 IPv4 주소를 사용하지만 단계는 IPv6와 동일합니다.
절차
공유를 마운트하려는 클라이언트 계산 인스턴스의 IP 주소를 검색합니다. 공유에 연결할 수 있는 네트워크에 해당하는 IP 주소를 선택해야 합니다. 이 예제에서는 StorageNFS 네트워크의 IP 주소입니다.
(user) [stack@undercloud-0 ~]$ openstack server list -f yaml - Flavor: m1.micro ID: 0b878c11-e791-434b-ab63-274ecfc957e8 Image: manila-test Name: demo-instance0 Networks: demo-network=172.20.0.4, 10.0.0.53; StorageNFS=172.17.5.160 Status: ACTIVE (user) [stack@undercloud-0 ~]$ manila access-allow share-01 ip 172.17.5.160
참고공유에 대한 액세스에는 자체 ID(access
id
)가 있습니다.+-----------------+---------------------------------------+ | Property | Value | +-----------------+---------------------------------------+ | access_key | None | share_id | db3bedd8-bc82-4100-a65d-53ec51b5cba3 | created_at | 2018-09-17T21:57:42.000000 | updated_at | None | access_type | ip | access_to | 172.17.5.160 | access_level | rw | state | queued_to_apply | id | 875c6251-c17e-4c45-8516-fe0928004fff +-----------------+---------------------------------------+
액세스 구성이 성공적으로 수행되었는지 확인합니다.
(user) [stack@undercloud-0 ~]$ manila access-list share-01 +--------------+-------------+--------------+--------------+--------+ ... | id | access_type | access_to | access_level | state | ... +--------------+-------------+--------------+--------------+--------+ | 875c6251-... | ip | 172.17.5.160 | rw | active | ... +--------------+------------+--------------+--------------+---------+ ...
4.3.2. 공유에 대한 액세스 박탈
공유 소유자는 어떠한 이유로 공유에 대한 액세스를 취소할 수 있습니다. 이전에 제공된 공유에 대한 액세스를 취소하려면 다음 단계를 완료합니다.
절차
공유에 대한 액세스를 취소합니다.
# manila access-deny <share> <accessid>
참고<share>
를 공유 이름 또는 공유 ID로 바꿉니다.예를 들면 다음과 같습니다.
(user) [stack@undercloud-0 ~]$ manila access-list share-01 +--------------+-------------+--------------+--------------+--------+ | id | access_type | access_to | access_level | state | ... +--------------+-------------+--------------+--------------+--------+ ... | 875c6251-... | ip | 172.17.5.160 | rw | active | ... +--------------+-------------+--------------+--------------+--------+ (user) [stack@undercloud-0 ~]$ manila access-deny share-01 875c6251-c17e-4c45-8516-fe0928004fff (user) [stack@undercloud-0 ~]$ manila access-list share-01 +--------------+------------+--------------+--------------+--------+ ... | id | access_type| access_to | access_level | state | ... +--------------+------------+--------------+--------------+--------+ ... +--------------+------------+--------------+--------------+--------+ ...
읽기-쓰기 권한이 있는 기존 클라이언트가 있는 경우 공유에 대한 액세스를 취소하고 클라이언트가 읽기 전용 권한을 갖도록 하려면 읽기 전용 규칙을 추가해야 합니다.