6.5.7. Vault를 사용하도록 Ceph Object Gateway 구성
H¢Corp Vault를 사용하도록 Ceph Object Gateway를 구성하려면 암호화 키 저장소로 설정해야 합니다. 현재 Ceph Object Gateway는 두 가지 비밀 엔진과 두 가지 다른 인증 방법을 지원합니다.
사전 요구 사항
- 실행 중인 Red Hat Ceph Storage 클러스터.
- Ceph Object Gateway 소프트웨어 설치.
- Ceph Object Gateway 노드에 대한 루트 수준 액세스.
절차
ceph config set client.rgw OPTION VALUE명령을 사용하여 암호화 키 저장소로 Vault를 활성화합니다.구문
ceph config set client.rgw rgw_crypt_s3_kms_backend vault
ceph config set client.rgw rgw_crypt_s3_kms_backend vaultCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 옵션과 값을 추가합니다.
구문
ceph config set client.rgw rgw_crypt_vault_auth agent ceph config set client.rgw rgw_crypt_vault_addr http://VAULT_SERVER:8100
ceph config set client.rgw rgw_crypt_vault_auth agent ceph config set client.rgw rgw_crypt_vault_addr http://VAULT_SERVER:8100Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 사용 사례에 따라 정책을 사용자 지정합니다.
role-id를 가져옵니다.
예제
vault read auth/approle/role/rgw-ap/role-id -format=json | \ jq -r .data.role_id > _PATH_TO_FILE_
[root@rgw ~]# vault read auth/approle/role/rgw-ap/role-id -format=json | \ jq -r .data.role_id > _PATH_TO_FILE_Copy to Clipboard Copied! Toggle word wrap Toggle overflow secret-id를 가져옵니다.
예제
vault read auth/approle/role/rgw-ap/role-id -format=json | \ jq -r .data.secret_id > _PATH_TO_FILE_
[root@rgw ~]# vault read auth/approle/role/rgw-ap/role-id -format=json | \ jq -r .data.secret_id > _PATH_TO_FILE_Copy to Clipboard Copied! Toggle word wrap Toggle overflow Vault 에이전트에 대한 구성을 생성합니다.
예제
Copy to Clipboard Copied! Toggle word wrap Toggle overflow systemctl을 사용하여 영구 데몬을 실행합니다.
예제
/usr/local/bin/vault agent -config=/usr/local/etc/vault/rgw-agent.hcl
[root@rgw ~]# /usr/local/bin/vault agent -config=/usr/local/etc/vault/rgw-agent.hclCopy to Clipboard Copied! Toggle word wrap Toggle overflow - Vault 에이전트가 실행될 때 토큰 파일은 유효한 토큰으로 채워집니다.
Vault 비밀 엔진(키/값 또는 Transit)을 선택합니다.
Key/Value 를 사용하는 경우 다음 행을 추가합니다.
예제
ceph config set client.rgw rgw_crypt_vault_secret_engine kv
[root@rgw ~]# ceph config set client.rgw rgw_crypt_vault_secret_engine kvCopy to Clipboard Copied! Toggle word wrap Toggle overflow Transit 을 사용하는 경우 다음 행을 추가합니다.
예제
ceph config set client.rgw rgw_crypt_vault_secret_engine transit
[root@rgw ~]# ceph config set client.rgw rgw_crypt_vault_secret_engine transitCopy to Clipboard Copied! Toggle word wrap Toggle overflow
ceph config set client.rgw OPTION VALUE명령을 사용하여 Vault 네임스페이스를 설정하여 암호화 키를 검색합니다.예제
ceph config set client.rgw rgw_crypt_vault_namespace testnamespace1
[root@rgw ~]# ceph config set client.rgw rgw_crypt_vault_namespace testnamespace1Copy to Clipboard Copied! Toggle word wrap Toggle overflow 경로 접두사를 설정하여 Ceph Object Gateway에서 Vault에서 암호화 키를 검색하는 위치를 제한합니다.
예제
ceph config set client.rgw rgw_crypt_vault_prefix /v1/secret/data
[root@rgw ~]# ceph config set client.rgw rgw_crypt_vault_prefix /v1/secret/dataCopy to Clipboard Copied! Toggle word wrap Toggle overflow 내보낼 수 있는 전송 키의 경우 다음과 같이 접두사 경로를 설정합니다.
예제
ceph config set client.rgw rgw_crypt_vault_prefix /v1/transit/export/encryption-key
[root@rgw ~]# ceph config set client.rgw rgw_crypt_vault_prefix /v1/transit/export/encryption-keyCopy to Clipboard Copied! Toggle word wrap Toggle overflow Vault 서버의 도메인 이름이
vault-server라고 가정하면 Ceph Object Gateway는 다음 URL에서 암호화된 전송 키를 가져옵니다.예제
http://vault-server:8200/v1/transit/export/encryption-key
http://vault-server:8200/v1/transit/export/encryption-keyCopy to Clipboard Copied! Toggle word wrap Toggle overflow
Ceph Object Gateway 데몬을 다시 시작합니다.
스토리지 클러스터의 개별 노드에서 Ceph Object Gateway를 다시 시작하려면 다음을 수행합니다.
구문
systemctl restart ceph-CLUSTER_ID@SERVICE_TYPE.ID.service
systemctl restart ceph-CLUSTER_ID@SERVICE_TYPE.ID.serviceCopy to Clipboard Copied! Toggle word wrap Toggle overflow 예제
systemctl restart ceph-c4b34c6f-8365-11ba-dc31-529020a7702d@rgw.realm.zone.node1.gwasto.service
[root@rgw]# systemctl restart ceph-c4b34c6f-8365-11ba-dc31-529020a7702d@rgw.realm.zone.node1.gwasto.serviceCopy to Clipboard Copied! Toggle word wrap Toggle overflow 스토리지 클러스터의 모든 노드에서 Ceph Object Gateway를 다시 시작하려면 다음을 수행합니다.
구문
ceph orch restart SERVICE_TYPE
ceph orch restart SERVICE_TYPECopy to Clipboard Copied! Toggle word wrap Toggle overflow 예제
ceph orch restart rgw
[root@rgw]# ceph orch restart rgwCopy to Clipboard Copied! Toggle word wrap Toggle overflow