NetAppでSales Specialistをしている小寺です。
Red Hatが2025年12月15日に公開した「クラウド開発環境(CDE)における Amazon FSx for NetApp ONTAP ストレージの最適化」記事をベースに、本日はROSA(Red Hat OpenShift Service on AWS)上へ配置する、Amazon FSx for NetApp ONTAP(以下、FSx for ONTAP)のアーキテクチャについて、概要をお伝えします。
クラウド開発環境(Cloud Development Environment、以下CDE)でのストレージ
まず、Eclipse CheやRed Hat OpenShift Dev SpacesなどCDEに適した永続ストレージをどう選択するかが、開発者の生産性、コスト、アプリケーションの耐障害性に関わってきます。
CDEを利用する開発者は、プロジェクトのソースコード、設定ファイル、ビルド成果物を格納するためにストレージが必要です。このストレージは通常のディレクトリ構造(階層型ファイルシステム)として機能しなければなりません。所謂ファイルサーバ的な役割ですね。
Red Hat OpenShift Dev Spacesを例にすると、基本的な Kubernetes ストレージ概念である volumeMode に依存しています。ストレージのモードは「FileSystem」を選び、ディレクトリ構造を持つファイルシステムとして利用するのが、CDEとしての用途では望ましく、ブロックモードはrawデバイス扱いになるため、CDE用途には適していないといえるでしょう。
また、アクセスモードはプロトコルに依存します。NFSのようなファイルプロトコルなら複数Podから同時アクセスできるRWXが使え、iSCSIのようなブロックプロトコルでは単一Pod専用のRWOになります。これらをCSIドライバー(例:Trident)が自動的にプロビジョニングし、Podに適切な形式でマウントします。
2つの推奨構成パターン「Per-workspace」と「Per-user」
構成パターンは大きく二つです。ひとつは「Per-workspace」モデルで、各ワークスペースに専用PVCを割り当て、iSCSI+ReadWriteOnce (RWO) で高パフォーマンスと隔離性を確保します。
もうひとつは「Per-user」モデルで、ユーザー単位に共有PVCを作り、NFS+RWXで複数Podからの同時アクセスを可能にします。
それぞれのメリット・デメリットをまとめてみました。
Per-workspace + iSCSI(RWO)
・用途:各開発環境が独立して高パフォーマンスを要求する場合
・構成:iSCSIプロトコル × RWOアクセス
・メリット
各ワークスペースが専用ボリュームを持つため、高いパフォーマンスと隔離性を確保できる。iSCSIはブロックストレージなので、低レイテンシでIOPSが高く、ビルドやテストなど負荷の大きい処理に適している。multipath構成により、冗長性と耐障害性が高い。
・デメリット
ワークスペースごとにPVCを作成するため、管理コストが増える。
ストレージ容量の利用効率が低く、コストが高くなりやすい。
Pod間で共有できないため、チーム開発や共有リソース利用には不向き。
Per-user + NFS(RWX)
・用途:親和性重視、複数Podで共有アクセスを求める場合
・構成:NFSプロトコル × RWXアクセス、サブディレクトリ管理
・メリット
複数Podから同時アクセス可能なRWXにより、共有リソースやチーム開発に適している。
PVCがユーザー単位なので、管理がシンプルでストレージ利用効率も高い。
Pod再配置時に同じPVCを再利用できるため、自動復旧が容易。
・デメリット
NFSはファイルプロトコルなので、IOPSやレイテンシ性能はiSCSIより劣る。
複数Podで共有するため、アクセス競合やパフォーマンス低下のリスクがある。
セキュリティや権限管理を適切に設計しないと、データ分離が不十分になる可能性がある。
FSx for ONTAPと組み合わせることによる高可用性
まず、ROSAはAWS上でマネージドOpenShiftを提供し、コンテナベースの開発環境を簡単に構築できます。一方、FSx for ONTAPはエンタープライズレベルのストレージ機能を備え、スナップショットやSnapMirror、FlexCloneなどONTAPが提供する機能を活用してデータ保護や迅速な環境復旧を可能にします。この2つを組み合わせることで、開発環境の永続ストレージを高性能かつ安全に提供できます。
さらに、ROSAで一般的に使用されるローカルAmazon EBSボリュームとは異なり、FSx for ONTAPは複数のアベイラビリティゾーン(AZ)やポッド間でアクセス可能な共有ストレージを提供します。AZ障害時に自動フェイルオーバーが行われ、開発環境のダウンタイムを最小化でき、高可用性と共有データアクセスを可能にします。
AZ間の同期レプリケーションにより、最新データを保持しながら復旧できるため、ビジネス継続性が強化されます。加えて、CSIドライバー(Trident)を利用すれば、OpenShiftのPersistent VolumeをFSxで動的にプロビジョニングでき、Pod単位やユーザー単位で柔軟なストレージ割り当てが可能です。
参考情報
