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 vault
Copy 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:8100
Copy 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.hcl
Copy 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 kv
Copy 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 transit
Copy 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 testnamespace1
Copy 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/data
Copy 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-key
Copy 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-key
Copy 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.service
Copy 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.service
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 스토리지 클러스터의 모든 노드에서 Ceph Object Gateway를 다시 시작하려면 다음을 수행합니다.
구문
ceph orch restart SERVICE_TYPE
ceph orch restart SERVICE_TYPE
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예제
ceph orch restart rgw
[root@rgw]# ceph orch restart rgw
Copy to Clipboard Copied! Toggle word wrap Toggle overflow