10.7.4. S3 バケットレプリケーション API


S3 バケットレプリケーション API も実装され、ユーザーは異なるバケット間でレプリケーションルールを作成できるようになりました。AWS レプリケーション機能により、同じゾーン内のバケットレプリケーションが許可されますが、現時点では Ceph Object Gateway は許可しません。ただし、Ceph Object Gateway API には、特定のバケットを同期するゾーンをユーザーが選択できる Zone 配列も追加されました。

10.7.4.1. S3 バケットレプリケーションの作成

バケットのレプリケーション設定を作成するか、既存のレプリケーション設定を置き換えます。

レプリケーション設定には少なくとも 1 つのルールが含まれている必要があります。各ルールは、ソースバケット内のオブジェクトをフィルタリングすることにより、レプリケートするオブジェクトのサブセットを識別します。

前提条件

  • マルチサイト Ceph Object Gateway が設定された実行中の Red Hat Ceph Storage クラスター。マルチサイト同期ポリシーの作成の詳細は、同期ポリシーグループの作成 を参照してください。
  • ゾーングループレベルポリシーが作成されました。ゾーングループポリシーの作成の詳細は、バケットの詳細同期ポリシー を参照してください。

手順

  1. レプリケーションの詳細を含むレプリケーション設定ファイルを作成します。

    構文

    {
    "Role": "arn:aws:iam::account-id:role/role-name",
        "Rules": [
            {
                "ID": "String",
                "Status": "Enabled",
                "Priority": 1,
                "DeleteMarkerReplication": { "Status": "Enabled"|"Disabled" },
                "Destination": {
                    "Bucket": "BUCKET_NAME"
                }
            }
        ]
    }

    [root@host01 ~]# cat replication.json
    {
        "Role": "arn:aws:iam::account-id:role/role-name",
        "Rules": [
            {
                "ID": "pipe-bkt",
                "Status": "Enabled",
                "Priority": 1,
                "DeleteMarkerReplication": { "Status": "Disabled" },
                "Destination": {
                    "Bucket": "testbucket"
                }
            }
        ]
    }

  2. S3 API の put バケットレプリケーションを作成します。

    構文

    aws --endpoint-url=RADOSGW_ENDPOINT_URL s3api put-bucket-replication --bucket BUCKET_NAME --replication-configuration file://REPLICATION_CONFIIRATION_FILE.json

    [root@host01 ~]# aws --endpoint-url=http://host01:80 s3api put-bucket-replication --bucket testbucket --replication-configuration file://replication.json

検証

  1. sync policy get コマンドを使用して、同期ポリシーを確認します。

    構文

    radosgw-admin sync policy get --bucket BUCKET_NAME

    注記

    レプリケーションポリシーを適用すると、ルールは パイプ と呼ばれる同期ポリシールールに変換され、enableddisabled に分類されます。

    • Enabled: パイプは有効かつアクティブであり、グループステータスは 'rgw_sync_policy_group:STATUS' に設定されています。たとえば、s3-bucket-replication:enabled です。
    • Disabled: この配下のパイプは非アクティブで、グループステータスは 'rgw_sync_policy_group:STATUS' に設定されています。たとえば、s3-bucket-replication:disabled です。

    複数のルールをレプリケーションポリシーの一部として設定できるため、各グループを正確にマッピングするために 2 つの異なるグループ (1 つは 'enabled' の状態、もう 1 つは 'allowed' の状態) があります。

    [ceph: root@host01 /]# radosgw-admin sync policy get --bucket testbucket
    {
        "groups": [
            {
                "id": "s3-bucket-replication:disabled",
                "data_flow": {},
                "pipes": [],
                "status": "allowed"
            },
            {
                "id": "s3-bucket-replication:enabled",
                "data_flow": {},
                "pipes": [
                    {
                        "id": "",
                        "source": {
                            "bucket": "*",
                            "zones": [
                                "*"
                            ]
                        },
                        "dest": {
                            "bucket": "testbucket",
                            "zones": [
                                "*"
                            ]
                        },
                        "params": {
                            "source": {},
                            "dest": {},
                            "priority": 1,
                            "mode": "user",
                            "user": "s3cmd"
                        }
                    }
                ],
                "status": "enabled"
            }
        ]
    }

Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

Red Hat ドキュメントについて

Legal Notice

Theme

© 2026 Red Hat
トップに戻る