この文書は自動機械翻訳技術を使用して翻訳されています。 正確な翻訳を提供するように努めておりますが、翻訳された内容の完全性、正確性、信頼性については一切保証いたしません。 相違がある場合は、元の英語版 英語 が優先され、正式なテキストとなります。

バックアップターゲットを設定する

バックアップターゲットは、バックアップストアにアクセスするためのエンドポイントです。バックアップターゲットは、SUSE Storage UI(設定 > バックアップターゲット)で設定できます。バックアップストアは、Longhornボリュームのバックアップを保存するサーバーです。NFS、SMB/CIFS、Azure Blob Storage、およびS3互換サーバーを使用できます。

v1.8.0以降、SUSE Storageは複数のバックアップストアの使用をサポートしています。新しいバックアップターゲットを作成する前に、デフォルトのバックアップターゲットを設定することをお勧めします。

S3などのオブジェクトストアに保存することが望ましいです。一般的に、より良い信頼性を提供します。 もう一つの利点は、ターゲットをマウントおよびアンマウントする必要がないため、フェイルオーバーやアップグレードが複雑にならないことです。

SUSE Storageにおけるバックアップストアの動作についての詳細は、概念を参照してください。

AWS S3にアクセスできない場合や、バックアップストアを最初に試してみたい場合は、MinIOを使用してローカルS3テストバックアップストアをセットアップする方法も提供しています。

SUSE Storageは、SUSE Storage UIまたはKubernetesストレージクラスを介して、ボリュームの定期的なスナップショット/バックアップジョブの設定もサポートしています。詳細については、こちらを参照してください。

  • バックアップストア内のLonghornバックアップのライフサイクルは、完全にSUSE Storageによって管理されます。バックアップストアに直接保持ポリシーを適用することは厳禁です

  • SUSE Storageは、以下のシナリオでバックアップ関連のカスタムリソースをクリーンアップしようとします:

  • NFSサーバーが利用できなくなり、空の応答を送信します。

  • 関連するLonghornバックアップコントローラー間でレースコンディションが発生します。

バックアップ情報は、次のポーリング間隔中に再同期されます。詳細については、 問題 #9530を参照してください。

デフォルトバックアップターゲット

デフォルトバックアップターゲット(default)は、新規インストール時に自動的に作成されます。インストール中またはインストール後に、Helmまたは マニフェストYAMLファイルlonghorn.yaml)を使用してデフォルトバックアップターゲットを設定できます。

Helmを使用してデフォルトバックアップターゲットを設定する

`values.yaml`ファイル内で、デフォルトバックアップターゲットを管理するための3つのパラメータを設定できます。

  • defaultBackupStore.backupTarget:デフォルトバックアップストアにアクセスするために使用されるエンドポイント。

  • defaultBackupStore.backupTargetCredentialSecret:デフォルトバックアップターゲットに関連付けられたKubernetesシークレットの名前。

  • defaultBackupStore.pollInterval:SUSE Storageが新しいバックアップのためにデフォルトバックアップストアをチェックする前に待機する秒数。

# -- Setting that allows you to update the default backupstore.
defaultBackupStore:
  # -- Endpoint used to access the default backupstore.
  backupTarget: ~
  # -- Name of the Kubernetes secret associated with the default backup target.
  backupTargetCredentialSecret: ~
  # -- Number of seconds that {longhorn-product-name} waits before checking the default backupstore for new backups.
  pollInterval: ~

マニフェストYAMLファイルを使用してデフォルトバックアップターゲットを設定する

v1.8.0以降、デフォルトバックアップターゲットリソースを含むリソースの設定を管理するために、`ConfigMap`という新しいリソース名の`longhorn-default-resource`を使用できます。

  • backup-target:デフォルトバックアップストアにアクセスするために使用されるエンドポイント。

  • backup-target-credential-secret:デフォルトバックアップターゲットに関連付けられたKubernetesシークレットの名前。

  • backupstore-poll-interval:Longhornが新しいバックアップのためにデフォルトバックアップストアをチェックする前に待機する秒数。

# Example
apiVersion: v1
kind: ConfigMap
metadata:
  name: longhorn-default-resource
  namespace: longhorn-system
data:
  default-resource.yaml: |
    "backup-target": "s3://example@us-west-1/"
    "backup-target-credential-secret": "example-secret"
    "backupstore-poll-interval": "180"

AWS S3バックアップストアを設定する

  1. AWS S3.に新しいバケットを作成する

  2. SUSE Storageの権限を設定する。資格情報を設定するための2つのオプションがあります。最初のオプションは、AWS IAMユーザーの資格情報を持つKubernetesシークレットを設定することです。2番目のオプションは、AWS資格情報を使用するのではなく、アノテーションを介してPodの一時的なAWS IAM権限を管理するためにサードパーティアプリケーションを使用することです。

    • オプション1:IAMユーザー資格情報を持つKubernetesシークレットを作成する

      1. 以下の権限を設定して新しいAWS IAMユーザーを作成するために ガイドに従ってください。あなたのS3バケット名を使用するように`Resource`セクションを編集してください:

        {
          "Version": "2012-10-17",
          "Statement": [
            {
              "Sid": "GrantLonghornBackupstoreAccess0",
              "Effect": "Allow",
              "Action": [
                "s3:PutObject",
                "s3:GetObject",
                "s3:ListBucket",
                "s3:DeleteObject"
              ],
              "Resource": [
                "arn:aws:s3:::<your-bucket-name>",
                "arn:aws:s3:::<your-bucket-name>/*"
              ]
            }
          ]
        }
      2. `aws-secret`という名前のKubernetesシークレットを、SUSE Storageが配置されているネームスペース(`longhorn-system`がデフォルト)に作成します。シークレットは、SUSE Storageがアクセスできるように`longhorn-system`ネームスペースに作成する必要があります:

        kubectl create secret generic <aws-secret> \
            --from-literal=AWS_ACCESS_KEY_ID=<your-aws-access-key-id> \
            --from-literal=AWS_SECRET_ACCESS_KEY=<your-aws-secret-access-key> \
            -n longhorn-system
        • オプション2:AWS STS AssumeRole (kube2iamまたはkiam)を使用してIAM一時認証情報で権限を設定します。

          kube2iamまたは kiamは、AWSの認証情報を操作するのではなく、アノテーションを介してPodのAWS IAM権限を管理するKubernetesアプリケーションです。kube2iamまたはkiamのGitHubリポジトリの指示に従って、Kubernetesクラスターにインストールします。

      3. 新しいAWS IAMロールをAWS S3サービス用に作成するために、 ガイドに従ってください。以下の権限が設定されています:

        {
          "Version": "2012-10-17",
          "Statement": [
            {
              "Sid": "GrantLonghornBackupstoreAccess0",
              "Effect": "Allow",
              "Action": [
                "s3:PutObject",
                "s3:GetObject",
                "s3:ListBucket",
                "s3:DeleteObject"
              ],
              "Resource": [
                "arn:aws:s3:::<your-bucket-name>",
                "arn:aws:s3:::<your-bucket-name>/*"
              ]
            }
          ]
        }
      4. 以下の信頼関係でAWS IAMロールを編集します:

        {
          "Version": "2012-10-17",
          "Statement": [
            {
              "Effect": "Allow",
              "Principal": {
                  "Service": "ec2.amazonaws.com"
              },
              "Action": "sts:AssumeRole"
            },
            {
              "Effect": "Allow",
              "Principal": {
                "AWS": "arn:aws:iam::<AWS_ACCOUNT_ID>:role/<AWS_EC2_NODE_INSTANCE_ROLE>"
              },
              "Action": "sts:AssumeRole"
            }
          ]
        }
      5. `aws-secret`という名前のKubernetesシークレットを、Longhornが配置されているネームスペース(`longhorn-system`がデフォルト)に作成します。シークレットは、SUSE Storageがアクセスできるように`longhorn-system`ネームスペースに作成する必要があります:

        kubectl create secret generic <aws-secret> \
            --from-literal=AWS_IAM_ROLE_ARN=<your-aws-iam-role-arn> \
            -n longhorn-system
  3. SUSE Storage UIで、*バックアップと復元 > バックアップターゲット*に移動し、バックアップターゲットを作成または編集します。

    *URL*を次のように設定します:

     s3://<your-bucket-name>@<your-aws-region>/

    最後に`/`があることを確認してください。そうしないとエラーが発生します。サブディレクトリ(プレフィックス)を使用することができます:

     s3://<your-bucket-name>@<your-aws-region>/mypath/

    また、*`<your-aws-region>`をURL*に設定したことを確認してください。

    例えば、AWSの場合、リージョンコードは こちらで見つけることができます。

    Google Cloud Storageの場合、リージョンコードは こちらで見つけることができます。

    *認証シークレット*を次のように設定します:

    aws-secret

    これはAWS認証情報またはAWS IAMロールを持つシークレット名です。

結果: SUSE StorageはS3にバックアップを保存できます。バックアップを作成するには、このセクションを参照してください。

プロキシの背後でSUSE Storageを操作し、AWS S3をバックアップストアとして使用したい場合は、以下のようにSUSE Storageにプロキシに関する情報を提供する必要があります。aws-secret
kubectl create secret generic <aws-secret> \
    --from-literal=AWS_ACCESS_KEY_ID=<your-aws-access-key-id> \
    --from-literal=AWS_SECRET_ACCESS_KEY=<your-aws-secret-access-key> \
    --from-literal=HTTP_PROXY=<your-proxy-ip-and-port> \
    --from-literal=HTTPS_PROXY=<your-proxy-ip-and-port> \
    --from-literal=NO_PROXY=<excluded-ip-list> \
    -n longhorn-system

`NO_PROXY`には、プロキシの使用から除外すべきネットワークアドレス、ネットワークアドレス範囲、およびドメインが含まれていることを確認してください。SUSE Storageが機能するためには、`NO_PROXY`に対して必要な最小値は次のとおりです:

  • localhost

  • 127.0.0.1

  • 0.0.0.0

  • 10.0.0.0/8(K8sコンポーネントのIP)

  • 192.168.0.0/16(クラスター内の内部IP)

GCP Cloud Storage Backupstoreを設定する

  1. Google Cloud Storageに新しいバケットを作成します。

  2. IAM & AdminにGCPサービスアカウントを作成します。

  3. GCPサービスアカウントにバケット内のオブジェクトを読み取り、書き込み、削除する権限を付与します。

    サービスアカウントは、バケット内のオブジェクトを読み取り、書き込み、削除するために`roles/storage.objectAdmin`ロールが必要です。

    サービスアカウントにアクセスを付与するために利用可能なGCP IAMロールの参照は以下の通りです https://cloud.google.com/storage/docs/access-control/iam-roles.。

このサービスアカウントがオブジェクト管理者アクセスを持つバケットの数を減らすために、IAM条件を作成することを検討してください。Google Cloudコンソールで、*Cloud Storage > Buckets*に移動し、ターゲットバケットを選択します。*バケットの詳細*画面で、*権限*タブに移動し、*アクセスを付与*をクリックして、ターゲットバケットに対してサービスアカウントにストレージオブジェクト管理者権限を付与します。

  1. クラウドストレージのバケットに移動し、新しく作成したバケットを選択します。

  2. クラウドストレージの設定メニューに移動し、 相互運用性タブに移動します。

  3. _サービスアカウントHMAC_までスクロールし、`+ CREATE A KEY FOR A SERVICE ACCOUNT`を押します。

  4. 以前に作成したGCPサービスアカウントを選択し、`CREATE KEY`を押します。

  5. _アクセスキー_と_シークレット_を保存します。

    相互運用性メニューにいる間に、_ストレージURI_を_リクエストエンドポイント_の下にメモしておいてください。

    • アクセスキーは、後で作成するKubernetesシークレットの`AWS_ACCESS_KEY_ID`フィールドにマッピングされます。

    • シークレットは、後で作成するKubernetesシークレットの`AWS_SECRET_ACCESS_KEY`フィールドにマッピングされます。

    • ストレージURIは、後で作成するKubernetesシークレットの`AWS_ENDPOINTS`フィールドにマッピングされます。

  6. SUSE Storage UIに移動します。上部のナビゲーションバーで、*バックアップと復元/バックアップターゲット*をクリックし、バックアップターゲットを作成または編集します。

    *URL*を次のように設定します:

    s3://${BUCKET_NAME}@us/

    *認証シークレット*を次のように設定します:

    longhorn-gcp-backups
  7. 次の内容で、`longhorn-system`ネームスペースに`longhorn-gcp-backups`という名前のKubernetesシークレットを作成します:

apiVersion: v1
kind: Secret
metadata:
  name: longhorn-gcp-backups
  namespace: longhorn-system
type: Opaque
stringData:
  AWS_ACCESS_KEY_ID: GOOG1EBYHGDE4WIGH2RDYNZWWWDZ5GMQDRMNSAOTVHRAILWAMIZ2O4URPGOOQ
  AWS_ENDPOINTS: https://storage.googleapis.com
  AWS_SECRET_ACCESS_KEY: BKoKpIW021s7vPtraGxDOmsJbkV/0xOVBG73m+8f
シークレットは、SUSE Storageの設定と一致する限り、好きな名前を付けることができます。

シークレットが作成され、SUSE Storageの設定が保存されたら、SUSE Storageのバックアップタブに移動します。問題が発生した場合は、トースト通知として表示されるはずです。

エラーメッセージが表示されない場合は、バックアップを作成して、新しいバケットにコンテンツがプッシュされていることを確認してください。

SUSE Storage UIの*バックアップターゲット*画面には、各バックアップターゲットのステータスが表示されます。ステータスが*エラー*で、他の詳細が提供されていない場合は、ブラウザの*検査*機能を使用して`/v1/backuptargets`のレスポンスデータを表示できます。GCPからのエラーは「AWSエラー」とラベル付けされています(例:AWS Error: AccessDenied)。詳細については、 問題 #10428を参照してください。

ローカルテストバックアップストアをセットアップします。

SUSE Storageは、テスト目的のためのサンプルバックアップストアサーバーのセットアップを提供します。 `longhorn/deploy/backupstores`フォルダーには、AWS S3(MinIO)、Azure、CIFS、NFSのサンプルがあります。

  1. `longhorn-system`ネームスペースにバックアップストア用のMinIO S3サーバーを設定します。

     kubectl create -f https://raw.githubusercontent.com/longhorn/longhorn/v1.11.2/deploy/backupstores/minio-backupstore.yaml
  2. SUSE Storage UIに移動します。*バックアップと復元/バックアップターゲット*をクリックし、バックアップターゲットを作成または編集します。

    *URL*を次のように設定します:

     s3://backupbucket@us-east-1/

    *認証シークレット*を次のように設定します:

     minio-secret

    minio-secret yamlは次のようになります:

     apiVersion: v1
     kind: Secret
     metadata:
       name: minio-secret
       namespace: longhorn-system
     type: Opaque
     data:
       AWS_ACCESS_KEY_ID: bG9uZ2hvcm4tdGVzdC1hY2Nlc3Mta2V5 # longhorn-test-access-key
       AWS_SECRET_ACCESS_KEY: bG9uZ2hvcm4tdGVzdC1zZWNyZXQta2V5 # longhorn-test-secret-key
       AWS_ENDPOINTS: aHR0cHM6Ly9taW5pby1zZXJ2aWNlLmRlZmF1bHQ6OTAwMA== # https://minio-service.default:9000
       AWS_CERT: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURMRENDQWhTZ0F3SUJBZ0lSQU1kbzQycGhUZXlrMTcvYkxyWjVZRHN3RFFZSktvWklodmNOQVFFTEJRQXcKR2pFWU1CWUdBMVVFQ2hNUFRHOXVaMmh2Y200Z0xTQlVaWE4wTUNBWERUSXdNRFF5TnpJek1EQXhNVm9ZRHpJeApNakF3TkRBek1qTXdNREV4V2pBYU1SZ3dGZ1lEVlFRS0V3OU1iMjVuYUc5eWJpQXRJRlJsYzNRd2dnRWlNQTBHCkNTcUdTSWIzRFFFQkFRVUFBNElCRHdBd2dnRUtBb0lCQVFEWHpVdXJnUFpEZ3pUM0RZdWFlYmdld3Fvd2RlQUQKODRWWWF6ZlN1USs3K21Oa2lpUVBvelVVMmZvUWFGL1BxekJiUW1lZ29hT3l5NVhqM1VFeG1GcmV0eDBaRjVOVgpKTi85ZWFJNWRXRk9teHhpMElPUGI2T0RpbE1qcXVEbUVPSXljdjRTaCsvSWo5Zk1nS0tXUDdJZGxDNUJPeThkCncwOVdkckxxaE9WY3BKamNxYjN6K3hISHd5Q05YeGhoRm9tb2xQVnpJbnlUUEJTZkRuSDBuS0lHUXl2bGhCMGsKVHBHSzYxc2prZnFTK3hpNTlJeHVrbHZIRXNQcjFXblRzYU9oaVh6N3lQSlorcTNBMWZoVzBVa1JaRFlnWnNFbQovZ05KM3JwOFhZdURna2kzZ0UrOElXQWRBWHExeWhqRDdSSkI4VFNJYTV0SGpKUUtqZ0NlSG5HekFnTUJBQUdqCmF6QnBNQTRHQTFVZER3RUIvd1FFQXdJQ3BEQVRCZ05WSFNVRUREQUtCZ2dyQmdFRkJRY0RBVEFQQmdOVkhSTUIKQWY4RUJUQURBUUgvTURFR0ExVWRFUVFxTUNpQ0NXeHZZMkZzYUc5emRJSVZiV2x1YVc4dGMyVnlkbWxqWlM1awpaV1poZFd4MGh3Ui9BQUFCTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFDbUZMMzlNSHVZMzFhMTFEajRwMjVjCnFQRUM0RHZJUWozTk9kU0dWMmQrZjZzZ3pGejFXTDhWcnF2QjFCMVM2cjRKYjJQRXVJQkQ4NFlwVXJIT1JNU2MKd3ViTEppSEtEa0Jmb2U5QWI1cC9VakpyS0tuajM0RGx2c1cvR3AwWTZYc1BWaVdpVWorb1JLbUdWSTI0Q0JIdgpnK0JtVzNDeU5RR1RLajk0eE02czNBV2xHRW95YXFXUGU1eHllVWUzZjFBWkY5N3RDaklKUmVWbENtaENGK0JtCmFUY1RSUWN3cVdvQ3AwYmJZcHlERFlwUmxxOEdQbElFOW8yWjZBc05mTHJVcGFtZ3FYMmtYa2gxa3lzSlEralAKelFadHJSMG1tdHVyM0RuRW0yYmk0TktIQVFIcFc5TXUxNkdRakUxTmJYcVF0VEI4OGpLNzZjdEg5MzRDYWw2VgotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0t

    秘密を作成する方法の詳細については、 Kubernetesのドキュメントを参照してください。 秘密は、longhorn-system ネームスペースで作成する必要があり、SUSE Storage がアクセスできるようにしてください。

    base64エンコーディングを生成する際には必ず echo -n を使用してください。そうしないと、文字列の末尾に改行が追加され、S3にアクセスする際にエラーが発生します。
  3. UIの バックアップ タブをクリックしてください。エラーなしで空のリストが報告されるべきです。

結果: SUSE StorageはS3にバックアップを保存できます。バックアップを作成するには、このセクションを参照してください。

S3通信に自己署名のSSL証明書を使用する

自己署名のSSL証明書を使用したい場合は、SUSE Storage に提供したKubernetesシークレットにAWS_CERTを指定できます。ローカルテストバックアップストアの設定例を参照してください。 証明書はPEM形式である必要があり、自身がCAであることに注意することが重要です。また、CA証明書を含む証明書チェーンを含める必要があります。 複数の証明書を含めるには、異なる証明書(PEMファイル)を単に連結すればよいです。

S3互換のバックアップストアに対して、仮想ホストスタイルのアクセスを有効にする

この新しいアドレッシングアプローチをS3互換のバックアップストアに対して有効にする必要があるかもしれません。

  1. 今すぐこの新しいアクセススタイルに切り替えたい場合、 Amazon S3パスの非推奨計画について心配する必要がなくなります。

  2. 使用しているバックアップストアが仮想ホストスタイルのアクセスのみをサポートしている場合、例えば、Alibaba Cloud(Aliyun) OSSなどです。

  3. MINIO_DOMAIN 環境変数を MinIOサーバーのために仮想ホストスタイルのリクエストを有効にする ように設定しました。

  4. エラー …​…​ error: AWS Error: SecondLevelDomainForbidden Please use virtual hosted style to access. …​.. が発生します。

仮想ホストスタイルのアクセスを有効にする方法

  1. バックアップターゲットの秘密に新しいフィールド VIRTUAL_HOSTED_STYLE を値 true で追加してください。例:

     apiVersion: v1
     kind: Secret
     metadata:
       name: s3-compatible-backup-target-secret
       namespace: longhorn-system
     type: Opaque
     data:
       AWS_ACCESS_KEY_ID: bG9uZ2hvcm4tdGVzdC1hY2Nlc3Mta2V5
       AWS_SECRET_ACCESS_KEY: bG9uZ2hvcm4tdGVzdC1zZWNyZXQta2V5
       AWS_ENDPOINTS: aHR0cHM6Ly9taW5pby1zZXJ2aWNlLmRlZmF1bHQ6OTAwMA==
       VIRTUAL_HOSTED_STYLE: dHJ1ZQ== # true
  2. シークレットをデプロイまたは更新してください。

  3. 次の詳細を提供して、*バックアップと復元 > バックアップターゲット*に対応するバックアップターゲットを作成します。

    1. 名前:バックアップターゲットの希望する名前を入力してください。

    2. URL:`s3://<bucket-name>@<region>/`の形式を使用してS3 URLを指定してください。

    3. 資格情報シークレット:資格情報シークレットを選択してください。この例では、`s3-compatible-backup-target-secret`です。

NFSバックアップストアを設定します。

NFSサーバーがNFSv4をサポートしていることを確認し、ターゲットURLがサービスを指していることを確認してください。

例:

nfs://longhorn-test-nfs-svc.default:/opt/backupstore

デフォルトのマウントオプションは`actimeo=1,soft,timeo=300,retry=2`です。 他のオプションを使用するには、キーワード「nfsOptions」とオプション文字列をターゲットURLに追加してください。

例:

nfs://longhorn-test-nfs-svc.default:/opt/backupstore?nfsOptions=soft,timeo=330,retrans=3

指定したマウントオプションは、デフォルトのオプションを追加するのではなく、置き換えます。

テスト目的のためのNFSバックアップストアの例を こちらで見つけることができます。

結果: SUSE StorageはNFSにバックアップを保存できます。バックアップを作成するには、このセクションを参照してください。

SMB/CIFSバックアップストアを設定します。

SMB/CIFSバックアップストアを構成する前に、バックアップストアのための資格情報シークレットを作成してデプロイできます。

  #!/bin/bash

  USERNAME=${Username of SMB/CIFS Server}
  PASSWORD=${Password of SMB/CIFS Server}

  CIFS_USERNAME=`echo -n ${USERNAME} | base64`
  CIFS_PASSWORD=`echo -n ${PASSWORD} | base64`

  cat <<EOF >>cifs_secret.yml
  apiVersion: v1
  kind: Secret
  metadata:
    name: cifs-secret
    namespace: longhorn-system
  type: Opaque
  data:
    CIFS_USERNAME: ${CIFS_USERNAME}
    CIFS_PASSWORD: ${CIFS_PASSWORD}
  EOF

  kubectl apply -f cifs_secret.yml

SUSE Storage UIで、*バックアップと復元 > バックアップターゲット*に移動します。

  1. バックアップターゲットを作成または編集します。

    *URL*を次のように設定します:

     cifs://longhorn-test-cifs-svc.default/backupstore

    デフォルトのCIFSマウントオプションは「soft」です。 他のオプションを使用するには、キーワード「cifsOptions」とオプション文字列をターゲットURLに追加してください。

    例:

     cifs://longhorn-test-cifs-svc.default/backupstore?cifsOptions=rsize=65536,wsize=65536,soft

    指定したマウントオプションは、デフォルトのオプションを追加するのではなく、置き換えます。

  2. *バックアップターゲット資格情報シークレット*を設定します。

    *資格情報シークレット*を次のように設定します:

     cifs-secret

    これはCIFS資格情報を持つ資格情報シークレットの名前です。

テスト目的のためのCIFSバックアップストアの例は こちらで見つけることができます。

結果: SUSE StorageはCIFSにバックアップを保存できます。バックアップを作成するには、このセクションを参照してください。

Azure Blob Storageバックアップストアを設定します。

  1. Azure Blob Storageにバックアップストア用のコンテナが存在することを確認します。

  2. Azureサービスアカウントにコンテナ内のオブジェクトを読み取り、書き込み、削除する権限を付与します。

    詳細については、Microsoftのドキュメントの Azureポータルを使用してBlobコンテナを管理するを参照してください。

  3. *ホーム → serviceaccount → セキュリティ + ネットワーキング → アクセスキー*に移動します。

  4. 次の情報を保存します:

    • Storage account name:これは、作成するKubernetesシークレットの`AZBLOB_ACCOUNT_NAME`フィールドにマップされます。

    • Key:これは、作成するKubernetesシークレットの`AZBLOB_ACCOUNT_KEY`フィールドにマップされます。

  5. SUSE Storage UIに移動します。上部のナビゲーションバーで、*バックアップと復元/バックアップターゲット*をクリックし、バックアップターゲットを作成または編集します。

    *URL*を設定します。ターゲットURLは次のようになります:

    azblob://[your-container-name]@core.windows.net/

    最後に`/`があることを確認してください。そうしないとエラーが発生します。サブディレクトリ(プレフィックス)を使用することができます:

    azblob://[your-container-name]@core.windows.net/my-path/

    *資格情報シークレット*を設定します。

    longhorn-azblob-secret
  6. `longhorn-azblob-secret`という名前のKubernetesシークレットを作成します。

    このシークレットは、次の内容でSUSE Storageネームスペース(デフォルト: longhorn-system)のバックアップストアにアクセスするために使用されます:

    #!/bin/bash
    cat <<EOF >>longhorn-azblob-secret.yml
    apiVersion: v1
    kind: Secret
    metadata:
      name: longhorn-azblob-secret
      namespace: longhorn-system
    type: Opaque
    stringData:
      AZBLOB_ACCOUNT_NAME: "<Storage account name>"
      AZBLOB_ACCOUNT_KEY:  "<Key>"
      ...
      # Parameters below are used for the compatible azure server for instance `Azurite` or
      # you have a proxy to redirect the requests.
      #AZBLOB_ENDPOINT: ""
      #AZBLOB_CERT: ""
      #HTTP_PROXY: ""
      #HTTPS_PROXY: ""
    EOF
    kubectl apply -f longhorn-azblob-secret.yml

上記の設定を構成した後、Azure Blobストレージでバックアップを管理できます。詳細についてはバックアップ作成のハウツーを参照してください。