5.2.8. 동일한 스토리지 클러스터에서 여러 영역 구성
이 섹션에서는 동일한 스토리지 클러스터에서 여러 영역을 구성하는 방법에 대해 설명합니다. 이것은 멀티사이트의 고급 사용 사례입니다. 동일한 스토리지 클러스터에서 여러 영역을 구성하면 로컬 영역을 사용하여 로컬 RGW 클라이언트 트래픽을 처리할 수 있으며 보조 사이트에 복제될 데이터의 복제 영역을 처리할 수 있습니다.
Red Hat은 각 영역에 고유한 Ceph Object Gateway를 보유하는 것이 좋습니다.
사전 요구 사항
- 스토리지 클러스터의 각 데이터 센터에 대한 액세스 키 및 시크릿 키입니다.
- 스토리지 클러스터에서 Red Hat Ceph Storage 데이터 센터를 실행하는 두 가지.
- 각 데이터 센터에는 고유의 로컬 영역이 있습니다. 두 사이트에서 복제되는 영역을 공유합니다.
- Ceph Object Gateway 노드에서 Red Hat Ceph Storage 설치 가이드에 있는 Red Hat Ceph Storage 설치 요구 사항에 나열된 작업을 수행합니다.
- 각 Ceph Object Gateway 노드에 대해 Red Hat Ceph Storage 설치 가이드의 Ceph Object Gateway 설치 섹션에서 1~7단계를 수행합니다.
절차
동기화 사용자를 생성합니다.
구문
radosgw-admin user create --uid="SYNCHRONIZATION_USER" --display-name="Synchronization User" --system
스토리지 클러스터의 첫 번째 데이터 센터에 하나의 로컬 영역을 생성합니다.
구문
radosgw-admin realm create --rgw-realm=REALM_NAME --default
예제
[user@rgw1]$ radosgw-admin realm create --rgw-realm=ldc1 --default
첫 번째 데이터 센터에 하나의 로컬 마스터 영역 그룹을 생성합니다.
구문
radosgw-admin zonegroup create --rgw-zonegroup=ZONE_GROUP_NAME --endpoints=http://RGW_NODE_NAME:80 --rgw-realm=REALM_NAME --master --default
예제
[user@rgw1]$ radosgw-admin zonegroup create --rgw-zonegroup=ldc1zg --endpoints=http://rgw1:80 --rgw-realm=ldc1 --master --default
첫 번째 데이터 센터에 하나의 로컬 영역을 생성합니다.
구문
radosgw-admin zone create --rgw-zonegroup=ZONE_GROUP_NAME --rgw-zone=ZONE_NAME --master --default --endpoints=HTTP_FQDN[,HTTP_FQDN]
예제
[user@rgw1]$ radosgw-admin zone create --rgw-zonegroup=ldc1zg --rgw-zone=ldc1z --master --default --endpoints=http://rgw.example.com
기간을 커밋합니다.
예제
[user@rgw1]$ radosgw-admin period update --commit
rgw_realm, rgw_
zonegroup 및
이름으로rgw_zone
ceph.conf
를 업데이트합니다.구문
rgw_realm = REALM_NAME rgw_zonegroup = ZONE_GROUP_NAME rgw_zone = ZONE_NAME
예제
rgw_realm = ldc1 rgw_zonegroup = ldc1zg rgw_zone = ldc1z
Ceph 개체 게이트웨이를 다시 시작합니다.
참고NAME
열 아래의ceph orch ps
명령의 출력을 사용하여 SERVICE_TYPE.ID 정보를 가져옵니다.스토리지 클러스터의 개별 노드에서 Ceph Object Gateway를 다시 시작하려면 다음을 수행합니다.
구문
systemctl restart ceph-CLUSTER_ID@SERVICE_TYPE.ID.service
예제
[root@rgw1]# systemctl restart ceph-c4b34c6f-8365-11ba-dc31-529020a7702d@rgw.realm.zone.node1.gwasto.service
스토리지 클러스터의 모든 노드에서 Ceph Object Gateway를 다시 시작하려면 다음을 수행합니다.
구문
ceph orch restart SERVICE_TYPE
예제
[root@rgw1]# ceph orch restart rgw
스토리지 클러스터의 두 번째 데이터 센터에 하나의 로컬 영역을 생성합니다.
구문
radosgw-admin realm create --rgw-realm=REALM_NAME --default
예제
[user@rgw2]$ radosgw-admin realm create --rgw-realm=ldc2 --default
두 번째 데이터 센터에 하나의 로컬 마스터 영역 그룹을 생성합니다.
구문
radosgw-admin zonegroup create --rgw-zonegroup=ZONE_GROUP_NAME --endpoints=http://RGW_NODE_NAME:80 --rgw-realm=REALM_NAME --master --default
예제
[user@rgw2]$ radosgw-admin zonegroup create --rgw-zonegroup=ldc2zg --endpoints=http://rgw2:80 --rgw-realm=ldc2 --master --default
두 번째 데이터 센터에 하나의 로컬 영역을 생성합니다.
구문
radosgw-admin zone create --rgw-zonegroup=ZONE_GROUP_NAME --rgw-zone=ZONE_NAME --master --default --endpoints=HTTP_FQDN[, HTTP_FQDN]
예제
[user@rgw2]$ radosgw-admin zone create --rgw-zonegroup=ldc2zg --rgw-zone=ldc2z --master --default --endpoints=http://rgw.example.com
기간을 커밋합니다.
예제
[user@rgw2]$ radosgw-admin period update --commit
rgw_realm, rgw_
zonegroup 및
이름으로rgw_zone
ceph.conf
를 업데이트합니다.구문
rgw_realm = REALM_NAME rgw_zonegroup = ZONE_GROUP_NAME rgw_zone = ZONE_NAME
예제
rgw_realm = ldc2 rgw_zonegroup = ldc2zg rgw_zone = ldc2z
Ceph 개체 게이트웨이를 다시 시작합니다.
참고NAME
열 아래의ceph orch ps
명령의 출력을 사용하여 SERVICE_TYPE.ID 정보를 가져옵니다.스토리지 클러스터의 개별 노드에서 Ceph Object Gateway를 다시 시작하려면 다음을 수행합니다.
구문
systemctl restart ceph-CLUSTER_ID@SERVICE_TYPE.ID.service
예제
[root@rgw2]# systemctl restart ceph-c4b34c6f-8365-11ba-dc31-529020a7702d@rgw.realm.zone.node1.gwasto.service
스토리지 클러스터의 모든 노드에서 Ceph Object Gateway를 다시 시작하려면 다음을 수행합니다.
구문
ceph orch restart SERVICE_TYPE
예제
[root@rgw2]# ceph orch restart rgw
복제/동기화 사용자를 생성합니다.
구문
radosgw-admin user create --uid="REPLICATION_SYNCHRONIZATION_USER" --display-name="Replication-Synchronization User" --system
스토리지 클러스터의 첫 번째 데이터 센터에 복제된 영역을 생성합니다.
구문
radosgw-admin realm create --rgw-realm=REPLICATED_REALM_1
예제
[user@rgw1] radosgw-admin realm create --rgw-realm=rdc1
첫 번째 데이터 센터에 대한 마스터 영역 그룹을 생성합니다.
구문
radosgw-admin zonegroup create --rgw-zonegroup=RGW_ZONE_GROUP --endpoints=http://_RGW_NODE_NAME:80 --rgw-realm=_RGW_REALM_NAME --master --default
예제
[user@rgw1] radosgw-admin zonegroup create --rgw-zonegroup=rdc1zg --endpoints=http://rgw1:80 --rgw-realm=rdc1 --master --default
첫 번째 데이터 센터에 마스터 영역을 생성합니다.
구문
radosgw-admin zone create --rgw-zonegroup=RGW_ZONE_GROUP --rgw-zone=_MASTER_RGW_NODE_NAME --master --default --endpoints=HTTP_FQDN[,HTTP_FQDN]
예제
[user@rgw1]$ radosgw-admin zone create --rgw-zonegroup=rdc1zg --rgw-zone=rdc1z --master --default --endpoints=http://rgw.example.com
기간을 커밋합니다.
예제
[user@rgw1]$ radosgw-admin period update --commit
첫 번째 데이터 센터에 대해
rgw_realm
,rgw_zonegroup
및rgw_zone
이름으로ceph.conf
를 업데이트합니다.구문
rgw_realm = REALM_NAME rgw_zonegroup = ZONE_GROUP_NAME rgw_zone = ZONE_NAME
예제
rgw_realm = rdc1 rgw_zonegroup = rdc1zg rgw_zone = rdc1z
Ceph 개체 게이트웨이를 다시 시작합니다.
참고NAME
열 아래의ceph orch ps
명령의 출력을 사용하여 SERVICE_TYPE.ID 정보를 가져옵니다.스토리지 클러스터의 개별 노드에서 Ceph Object Gateway를 다시 시작하려면 다음을 수행합니다.
구문
systemctl restart ceph-CLUSTER_ID@SERVICE_TYPE.ID.service
예제
[root@rgw1]# systemctl restart ceph-c4b34c6f-8365-11ba-dc31-529020a7702d@rgw.realm.zone.node1.gwasto.service
스토리지 클러스터의 모든 노드에서 Ceph Object Gateway를 다시 시작하려면 다음을 수행합니다.
구문
ceph orch restart SERVICE_TYPE
예제
[root@rgw1]# ceph orch restart rgw
두 번째 데이터 센터에서 복제 영역을 가져옵니다.
구문
radosgw-admin realm pull --url=https://tower-osd1.cephtips.com --access-key=ACCESS_KEY --secret-key=SECRET_KEY
예제
[user@rgw1]$ radosgw-admin realm pull --url=https://tower-osd1.cephtips.com --access-key=3QV0D6ZMMCJZMSCXJ2QJ --secret-key=VpvQWcsfI9OPzUCpR4kynDLAbqa1OIKqRB6WEnH8
첫 번째 데이터 센터에서 기간을 가져옵니다.
구문
radosgw-admin period pull --url=https://tower-osd1.cephtips.com --access-key=ACCESS_KEY --secret-key=SECRET_KEY
예제
[user@rgw1]$radosgw-admin period pull --url=https://tower-osd1.cephtips.com --access-key=3QV0D6ZMMCJZMSCXJ2QJ --secret-key=VpvQWcsfI9OPzUCpR4kynDLAbqa1OIKqRB6WEnH8
두 번째 데이터 센터에 보조 영역을 생성합니다.
구문
radosgw-admin zone create --rgw-zone=RGW_ZONE --rgw-zonegroup=RGW_ZONE_GROUP --endpoints=https://tower-osd4.cephtips.com --access-key=_ACCESS_KEY --secret-key=SECRET_KEY
예제
[user@rgw2]$ radosgw-admin zone create --rgw-zone=rdc2z --rgw-zonegroup=rdc1zg --endpoints=https://tower-osd4.cephtips.com --access-key=3QV0D6ZMMCJZMSCXJ2QJ --secret-key=VpvQWcsfI9OPzUCpR4kynDLAbqa1OIKqRB6WEnH8
기간을 커밋합니다.
예제
[user@rgw2]$ radosgw-admin period update --commit
두 번째 데이터 센터의
rgw_realm
,rgw_zonegroup
및rgw_zone
이름으로ceph.conf
를 업데이트합니다.구문
rgw_realm = REALM_NAME rgw_zonegroup = ZONE_GROUP_NAME rgw_zone = ZONE_NAME
예제
rgw realm = rdc1 rgw zonegroup = rdc1zg rgw zone = rdc2z
Ceph 개체 게이트웨이를 다시 시작합니다.
참고NAME
열 아래의ceph orch ps
명령의 출력을 사용하여 SERVICE_TYPE.ID 정보를 가져옵니다.스토리지 클러스터의 개별 노드에서 Ceph Object Gateway를 다시 시작하려면 다음을 수행합니다.
구문
systemctl restart ceph-CLUSTER_ID@SERVICE_TYPE.ID.service
예제
[root@rgw2]# systemctl restart ceph-c4b34c6f-8365-11ba-dc31-529020a7702d@rgw.realm.zone.node1.gwasto.service
스토리지 클러스터의 모든 노드에서 Ceph Object Gateway를 다시 시작하려면 다음을 수행합니다.
구문
ceph orch restart SERVICE_TYPE
예제
[root@rgw2]# ceph orch restart rgw
-
두 번째 데이터 센터의 엔드포인트에
root
로 로그인합니다. 마스터 영역에서 동기화 상태를 확인합니다.
구문
radosgw-admin sync status
예제
[root@rgw2]# radosgw-admin sync status realm 59762f08-470c-46de-b2b1-d92c50986e67 (ldc2) zonegroup 7cf8daf8-d279-4d5c-b73e-c7fd2af65197 (ldc2zg) zone 034ae8d3-ae0c-4e35-8760-134782cb4196 (ldc2z) metadata sync no sync (zone is master)
-
첫 번째 데이터 센터의 엔드포인트에
root
로 로그인합니다. replication-synchronization 영역의 동기화 상태를 확인합니다.
구문
radosgw-admin sync status --rgw-realm RGW_REALM_NAME
예제
[root@rgw1]# radosgw-admin sync status --rgw-realm rdc1 realm 73c7b801-3736-4a89-aaf8-e23c96e6e29d (rdc1) zonegroup d67cc9c9-690a-4076-89b8-e8127d868398 (rdc1zg) zone 67584789-375b-4d61-8f12-d1cf71998b38 (rdc2z) metadata sync syncing full sync: 0/64 shards incremental sync: 64/64 shards metadata is caught up with master data sync source: 705ff9b0-68d5-4475-9017-452107cec9a0 (rdc1z) syncing full sync: 0/128 shards incremental sync: 128/128 shards data is caught up with source realm 73c7b801-3736-4a89-aaf8-e23c96e6e29d (rdc1) zonegroup d67cc9c9-690a-4076-89b8-e8127d868398 (rdc1zg) zone 67584789-375b-4d61-8f12-d1cf71998b38 (rdc2z) metadata sync syncing full sync: 0/64 shards incremental sync: 64/64 shards metadata is caught up with master data sync source: 705ff9b0-68d5-4475-9017-452107cec9a0 (rdc1z) syncing full sync: 0/128 shards incremental sync: 128/128 shards data is caught up with source
로컬 사이트에 데이터를 저장하고 액세스하려면 로컬 영역의 사용자를 생성합니다.
구문
radosgw-admin user create --uid="LOCAL_USER" --display-name="Local user" --rgw-realm=_REALM_NAME --rgw-zonegroup=ZONE_GROUP_NAME --rgw-zone=ZONE_NAME
예제
[user@rgw2] #radosgw-admin user create --uid="local-user" --display-name="Local user" --rgw-realm=ldc1 --rgw-zonegroup=ldc1zg --rgw-zone=ldc1z
중요기본적으로 사용자는 다중 사이트 구성에 추가됩니다. 사용자가 로컬 영역의 데이터에 액세스하려면
radosgw-admin
명령에--rgw-realm
arugument가 필요합니다.