7.3. ストレージオブジェクト設定フィールド
ストレージフィールドは、コンテナーイメージ Blob とマニフェストの保存先のバックエンドを定義します。Red Hat Quay では、次のストレージプロバイダーがサポートされています。
- Amazon Web Services (AWS) S3
- AWS STS S3 (セキュリティートークンサービス)
- AWS CloudFront (CloudFront S3Storage)
- Google Cloud Storage
- Microsoft Azure Blob Storage
- Swift Storage
- Nutanix オブジェクトストレージ
- IBM Cloud Object Storage
- NetApp ONTAP S3 オブジェクトストレージ
- Hitachi Content Platform (HCP)オブジェクトストレージ
S3 互換 API により、サポートされているストレージプロバイダーの多くは RadosGWStorage
ドライバーを使用します。
7.3.1. ストレージ設定フィールド リンクのコピーリンクがクリップボードにコピーされました!
以下の表は、Red Hat Quay のストレージ設定フィールドを説明しています。バックエンドストレージの設定時に、これらのフィールドが必要です。
フィールド | 型 | 説明 |
---|---|---|
DISTRIBUTED_STORAGE_CONFIG | Object |
Red Hat Quay で使用するストレージエンジンの設定。各キーは、ストレージエンジンの一意の ID を表します。この値は、ストレージエンジンパラメーターを記述するオブジェクトのタプル (キー、値) で構成されます。 |
DISTRIBUTED_STORAGE_DEFAULT_LOCATIONS | 文字列の配列 |
イメージをデフォルトで他のすべてのストレージエンジンに対して完全にレプリケートする必要のあるストレージエンジンの一覧 ( |
DISTRIBUTED_STORAGE_PREFERENCE | 文字列の配列 |
使用する優先ストレージエンジン ( |
MAXIMUM_LAYER_SIZE | String |
イメージレイヤーの最大許容サイズ。 |
ストレージ設定の例
DISTRIBUTED_STORAGE_CONFIG: DISTRIBUTED_STORAGE_DEFAULT_LOCATIONS: [] DISTRIBUTED_STORAGE_PREFERENCE: - default MAXIMUM_LAYER_SIZE: 100G
DISTRIBUTED_STORAGE_CONFIG:
DISTRIBUTED_STORAGE_DEFAULT_LOCATIONS: []
DISTRIBUTED_STORAGE_PREFERENCE:
- default
MAXIMUM_LAYER_SIZE: 100G
7.3.2. ローカルストレージ リンクのコピーリンクがクリップボードにコピーされました!
以下の YAML は、ローカルストレージを使用した設定例を示しています。
概念実証の ためにレジストリーをデプロイする場合は、ローカルストレージのみを使用してください。これは実稼働環境での使用を目的としていません。ローカルストレージを使用する場合は、レジストリーの起動時に、レジストリーをコンテナー内の datastorage
パスにマップする必要があります。詳細は、Proof of Concept - Deploying Red Hat Quayを参照してください。
ローカルストレージの例
7.3.3. Red Hat OpenShift Data Foundation リンクのコピーリンクがクリップボードにコピーされました!
以下の YAML は、Red Hat OpenShift Data Foundation を使用した設定のサンプルを示しています。
7.3.4. Ceph オブジェクトゲートウェイ(RadosGW)ストレージの例 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Quay は、Ceph Object Gateway (RadosGW)をオブジェクトストレージのバックエンドとして使用することをサポートします。radosgw は、プライベートアーキテクチャー用のストレージプラットフォームである Red Hat Ceph Storage のコンポーネントです。Red Hat Ceph Storage は、Ceph と対話するための S3 互換の REST API を提供します。
radosgw は、オンプレミスの S3 互換ストレージソリューションです。S3 API を実装し、access_key
、secret_key
、bucket_name
などの同じ認証フィールドを必要とします。Ceph Object Gateway および S3 API の詳細は、Ceph Object Gateway を参照してください。
以下の YAML は、RadosGW を使用した設定例を示しています。
一般的な s3 アクセスの例
- 1
- 一般的な s3 アクセスに使用します。一般的な s3 アクセスは、厳密には Amazon Web Services (AWS) s3 に限定されず、RadosGW または他のストレージサービスでも使用できることに注意してください。AWS S3 ドライバーを使用した一般的な s3 アクセスの例は、「AWS S3 ストレージ」を参照してください。
- 2
- オプション: 最終コピーの最大チャンクサイズ (MB 単位) を定義します。
server_side_assembly
がFalse
に設定されている場合には効果はありません。 - 3
- オプション: Red Hat Quay がクライアントアセンブリーではなく、サーバー側アセンブリーと最終的なチャンクコピーの使用を試みるかどうか指定します。デフォルトは
True
に設定されます。
7.3.5. サポートされている AWS ストレージバックエンド リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Quay は、複数の Amazon Web Services (AWS)ストレージバックエンドをサポートします。
- S3 ストレージ: AWS のネイティブオブジェクトストレージサービスを使用する AWS S3 バケットの標準サポート。
- STS S3 ストレージ: IAM ロールを引き受けるための AWS Security Token Service (STS)のサポートにより、よりセキュアな S3 操作が可能になります。
- CloudFront S3 ストレージ: AWS CloudFront と統合して、AWS S3 をオリジンとして使用しながらコンテンツの高可用性ディストリビューションを有効にします。
以下のセクションでは、YAML の例と各 AWS ストレージバックエンドに関する追加情報を提供します。
7.3.5.1. Amazon Web Services S3 ストレージ リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Quay は、AWS S3 をオブジェクトストレージのバックエンドとして使用することをサポートします。AWS S3 は、データの可用性、スケーラビリティー、セキュリティー、およびパフォーマンスのために設計されたオブジェクトストレージサービスです。以下の YAML は、AWS S3 を使用した設定例を示しています。
AWS S3 の例
7.3.5.2. Amazon Web Services STS S3 ストレージ リンクのコピーリンクがクリップボードにコピーされました!
AWS Security Token Service (STS)は、AWS リソースにアクセスするための一時的な制限付き権限の認証情報を提供し、長期アクセスキーを保存する必要性を回避してセキュリティーを強化します。これは、IAM ロールで認証情報をローテーションしたり、管理できる OpenShift Container Platform などの環境で役立ちます。
以下の YAML は、OpenShift Container Platform 設定で AWS STS を Red Hat Quay で使用する設定例を示しています。
AWS STS S3 ストレージの例
7.3.5.3. AWS CloudFront ストレージ リンクのコピーリンクがクリップボードにコピーされました!
AWS CloudFront はコンテンツ配信ネットワーク(CDN)サービスで、ユーザーにコンテンツをキャッシュして配信し、パフォーマンスを向上させ、レイテンシーを短縮します。Red Hat Quay は、CloudFrontedS3Storage
ドライバーを介して CloudFront をサポートします。これにより、CloudFront ディストリビューションを介した S3 バケットへの安全で署名されたアクセスが可能になります。
Red Hat Quay デプロイメント用に AWS CloudFront を設定する場合は、次の例を使用します。
AWS Cloudfront ストレージを設定する場合、Red Hat Quay を適切に使用するには次の条件を満たす必要があります。
-
config.yaml
ファイルで定義されている Red Hat Quay のストレージパスと一致するように Origin パス を設定する必要があります。この要件を満たさない場合、イメージを取得するときに403
エラーが発生します。詳細は、Origin path を参照してください。 - Bucket policy と Cross-origin resource sharing (CORS) ポリシーを設定する必要があります。
-
Cloudfront S3 の YAML 例
バケットポリシーの例
7.3.6. Google Cloud Storage リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Quay は、Google Cloud Storage (GCS)をオブジェクトストレージバックエンドとして使用することをサポートします。Red Hat Quay で使用すると、コンテナーイメージとアーティファクトを保存するためのクラウドネイティブソリューションが提供されます。
以下の YAML は、Google Cloud Storage を使用した設定例を示しています。
Google Cloud Storage の例
- 1
- オプション: 接続から読み取ろうとしたときにタイムアウト例外が出力されるまでの時間 (秒単位)。デフォルトは
60
秒です。また、接続を試行するときにタイムアウト例外が出力されるまでの時間 (秒単位) も含まれます。デフォルトは60
秒です。
7.3.7. Microsoft Azure Blob Storage リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Quay は、Microsoft Azure Blob Storage をオブジェクトストレージのバックエンドとして使用することをサポートします。Azure Blob Storage を使用すると、コンテナーイメージ、メタデータ、およびその他のアーティファクトを安全でクラウドネイティブな方法で永続化できます。
以下の YAML は、Azure Storage を使用した設定のサンプルを示しています。
Microsoft Azure Blob Storage の例
- 1
- Azure ストレージの
endpoint_url
パラメーターは任意であり、Microsoft Azure Government (MAG) エンドポイントで使用できます。空白のままにすると、endpoint_url
は通常の Azure リージョンに接続します。Red Hat Quay 3.7 以降では、MAG Blob サービスのプライマリーエンドポイントを使用する必要があります。MAG Blob サービスのセカンダリーエンドポイントを使用すると、
AuthenticationErrorDetail:Cannot find the claimed account when trying to GetProperties for the account whusc8-secondary
エラーが発生します。
7.3.8. Swift オブジェクトストレージ リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Quay は、Red Hat OpenStack Platform (RHOSP) Object Storage サービス(Swift) をオブジェクトストレージバックエンドとして使用することをサポートします。Swift は、独自の API と認証メカニズムで S3 のような機能を提供します。
以下の YAML は、Swift ストレージを使用した設定のサンプルを示しています。
Swift オブジェクトストレージの例
7.3.9. Nutanix オブジェクトストレージ リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Quay は、Nutanix Objects Storage をオブジェクトストレージバックエンドとしてサポートします。Nutanix Object Storage は、Nutanix を使用してプライベートクラウドインフラストラクチャーを実行している組織に適しています。
以下の YAML は、Nutanix オブジェクトストレージを使用した設定例を示しています。
Nutanix Objects ストレージの例
7.3.10. IBM Cloud Object Storage リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Quay は、IBM Cloud Object Storage をオブジェクトストレージバックエンドとしてサポートします。IBM Cloud Object Storage は、IBM Cloud 上のスケーラブルで安全なストレージを必要とするクラウドネイティブアプリケーションに適しています。
以下の YAML は、IBM Cloud Object Storage を使用した設定例を示しています。
IBM Cloud Object Storage
- 1
- オプション:
100mb
に設定することを推奨します。 - 2
- オプション: デフォルトは
5mb
です。このフィールドは、Red Hat サポート に相談せずに調整しないでください。意図しない結果が生じる可能性があるためです。
7.3.11. NetApp ONTAP S3 オブジェクトストレージ リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Quay は、NetApp ONTAP S3 をオブジェクトストレージバックエンドとして使用することをサポートしています。
次の YAML は、NetApp ONTAP S3 を使用したサンプル設定を示しています。
NetApp ONTAP S3 の例
7.3.12. Hitachi Content Platform オブジェクトストレージ リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Quay は、オブジェクトストレージバックエンドとしての Hitachi Content Platform (HCP) の使用をサポートします。
次の YAML は、オブジェクトストレージに HCP を使用するサンプル設定を示しています。
HCP ストレージ設定の例