8.3.3. Microsoft Azure でのログベースのバケットレプリケーションの有効化
前提条件
Microsoft Azure ドキュメントを参照し、Microsoft Azure ポータルで次のタスクを完了している。
新しいアプリケーションを作成し、名前、アプリケーション (クライアント) ID、およびディレクトリー (テナント) ID を書き留めていることを確認します。
詳細は、Register an application を参照してください。
- 新しいクライアントシークレットが作成され、アプリケーションシークレットが書き留められていることを確認します。
新しい Log Analytics ワークスペースが作成され、その名前とワークスペース ID が表示されていることを確認します。
詳細は、Create a Log Analytics workspace を参照してください。
Access control で
Readerロールが割り当てられていること、メンバーが選択されていること、および前の手順で登録したアプリケーションの名前が指定されていることを確認します。詳細は、Assign Azure roles using the Azure portal を参照してください。
- 新しいストレージアカウントが作成され、アクセスキーが表示されていることを確認します。
作成したストレージアカウントの Monitoring セクションで Blob を選択し、Diagnostic settings 画面で
StorageWriteとStorageDeleteのみを選択して、前に作成した Log Analytics ワークスペースを宛先の詳細に追加します。作成したストレージアカウントの Monitoring セクションの Diagnostic settings 画面で Blob が選択されていることを確認します。また、StorageWriteとStorageDeleteのみが選択されていることを確認し、宛先の詳細に、前に作成した Log Analytics ワークスペースが追加されていることを確認します。詳細は、Diagnostic settings in Azure Monitor を参照してください。
- オブジェクトソースおよびオブジェクトの宛先に 2 つの新規コンテナーが作成されていることを確認します。
- OpenShift Web コンソールへの管理者アクセス。
手順
namespacestoresで使用される認証情報を含むシークレットを作成します。apiVersion: v1 kind: Secret metadata: name: <namespacestore-secret-name> type: Opaque data: TenantID: <AZURE TENANT ID ENCODED IN BASE64> ApplicationID: <AZURE APPLICATIOM ID ENCODED IN BASE64> ApplicationSecret: <AZURE APPLICATION SECRET ENCODED IN BASE64> LogsAnalyticsWorkspaceID: <AZURE LOG ANALYTICS WORKSPACE ID ENCODED IN BASE64> AccountName: <AZURE ACCOUNT NAME ENCODED IN BASE64> AccountKey: <AZURE ACCOUNT KEY ENCODED IN BASE64>Azure で作成したコンテナーを基盤とする
NamespaceStoreを作成します。詳細は、OpenShift Container Platform ユーザーインターフェイスを使用した namespace バケットの追加 を参照してください。
- これを使用する新規の Namespace-Bucketclass および OBC を作成します。
-
ターゲット OBC の YAML を調べるか、すべての S3 バケット (例:
- s3 ls)をリストして、オブジェクトバケット名を確認します。 次のテンプレートを使用し、
.specの下の YAML に次の内容を追加して、ソース OBC に Azure レプリケーションポリシーを適用します。replicationPolicy:'{"rules":[ {"rule_id":"ID goes here", "sync_deletions": "<true or false>"", "destination_bucket":object bucket name"} ], "log_replication_info":{"endpoint_type":"AZURE"}}'sync_deletion-
ブール値
trueまたはfalseを指定します。 destination_bucket-
要求ではなく、オブジェクトバケットの名前を使用するようにしてください。この名前は、
s3 lsコマンドを使用するか、OBC の YAML での値を検索して取得できます。
検証手順
- オブジェクトをソースバケットに書き込みます。
- MCG が複製するまで待ちます。
- ソースバケットからオブジェクトを削除します。
- オブジェクトがターゲットバケットから削除されたことを確認します。