OCIファイル・ストレージの作成方法と複数インスタンスへのマウント手順を徹底解説
本記事では、Oracle Cloud Infrastructure(OCI)のファイル・ストレージサービスについて、作成から複数インスタンスへのマウントまでの手順を詳しく解説します。
概要
Oracle® Storage Cloud Servicesは、要件に応じて複数のストレージサービスを提供しており、用途に合わせて最適なサービスを選択できます。選択の際に考慮すべき主な要件は以下のとおりです。
- 永続性: 永続的なストレージが必要か、非永続的なストレージで十分か。
- データの種類: テキスト、データベース、動画、音声、画像など、どのようなデータを保存するのか。
- パフォーマンス: 最大容量、IOPS、スループットなど、どのような性能が求められるのか。
- 耐久性: データのコピーを何重に保持する必要があるのか。
- 接続性: アプリケーションがローカルでデータにアクセスするのか、ネットワーク経由でアクセスするのか。
- プロトコル: ブロック、ファイル、HTTPSなど、どのプロトコルを使用する予定か。
これらの要件に応じて、OCIでは次のようなサービスが提供されています。
- ブロック・ボリューム・ストレージ
- ローカルNVMe
- ファイル・ストレージ
- オブジェクト・ストレージ
- アーカイブ・ストレージ
画像出典: https://www.youtube.com/watch?v=XXqTGF8G0dk
表の出典: https://www.youtube.com/watch?v=gzRXsXQJXmw
ファイル・ストレージとは?
ファイル・ストレージとは、名前付きディレクトリに整理された階層構造のドキュメント群のことです。ディレクトリ自体も構造化されたファイルとして扱われます。分散ファイルシステムを使用すると、分散環境があたかもローカルファイルシステムであるかのように見えます。
File Storage Services(FSS)とは
Oracle Cloud Infrastructureドキュメントによると、次のように説明されています。
「Oracle Cloud Infrastructure File Storage serviceは、事前プロビジョニングなしでクラウド内で拡張可能な、耐久性がありスケーラブルな分散型エンタープライズグレードのネットワークファイルシステムを提供します。仮想クラウドネットワーク(VCN)内のベアメタル、仮想マシン、コンテナ・インスタンスからファイルシステムに接続できるほか、OCI FastConnectやIPsec VPNを使用してVCN外からもアクセスできます。File Storage serviceはNFSv3(Network File System version 3.0)プロトコルをサポートし、ファイルロック機能のためのNetwork Lock Manager(NLM)プロトコルにも対応しています。」
OCI FSSの主な特徴
ケーススタディ「Using OCI File Storage Service (FSS) for PeopleSoft」によると、OCI FSSには以下のような特徴があります。
- NFS v3とPOSIX向けNLMをサポート
- すべてのOCIリージョンで利用可能なADローカルサービス
- 保存容量に対する予測可能な料金体系
- 保存容量の増加に伴ってスループットが向上する伸縮性のあるパフォーマンス。並列ワークロードに最適
OCI FSSのユースケース
同ケーススタディでは、以下のユースケースが挙げられています。
- 共有アクセスと容量のオンデマンドスケーリング
- リフト&シフトによるアプリケーション移行
- クラウドでのバックアップ
- ビッグデータや分析用の構造化・非構造化データの保存
- テストおよび開発環境
- ビッグデータとアナリティクス
- ハイパフォーマンスコンピューティング(HPC)
画像出典: https://www.youtube.com/watch?v=XXqTGF8G0dk
OCIでFSSを作成する方法
FSS作成の手順に入る前に、作成時に使用する重要な概念を理解しておく必要があります。以下の各項目は、Oracle Cloud Infrastructureドキュメントからの抜粋です。
仮想クラウドネットワーク(VCN)
「Oracleデータセンター内に設定するプライベートネットワークです。ファイアウォールルールや、必要に応じて選択できる特定タイプの通信ゲートウェイが含まれます。」
サブネット
「VCN内で定義する区分です(例: 10.0.0.0/24、10.0.1.0/24)。サブネットには、インスタンスにアタッチされる仮想ネットワークインターフェースカード(VNIC)が含まれます。サブネットはリージョン全体にまたがることも、単一の可用性ドメイン内に存在することもできます。サブネットは、VCN内の他のサブネットと重複しない連続したIPアドレス範囲で構成され、それぞれに対してルーティングルールとセキュリティリストを指定します。」
セキュリティルール
「VCN用の仮想ファイアウォールルールです。VCNにはデフォルトのセキュリティリストが付属しており、追加も可能です。セキュリティリストは、インスタンスへの流入・流出を許可するトラフィックの種類を指定するイングレスルールとエグレスルールを提供します。各ルールをステートフルにするかステートレスにするかを選択できます。クライアントがファイルシステムのマウントターゲットに接続できるよう、セキュリティリストのルールを設定する必要があります。」
マウントターゲット
「マウントターゲットは、任意のVCNサブネット上に存在するNFSエンドポイントであり、ファイルシステムへのネットワークアクセスを提供します。マウントターゲットは、一意のエクスポートパスと組み合わせてファイルシステムをマウントするために使用されるIPアドレスまたはDNS名を提供します。」
1つのマウントターゲットで多数のファイルシステムをエクスポートできます。
エクスポート
「エクスポートは、NFSクライアントがマウントターゲットに接続したときに、どのようにファイルシステムへアクセスするかを制御します。ファイルシステムはマウントターゲットを通じてエクスポート(公開)されます。各マウントターゲットは、1つ以上のエクスポートを含むエクスポートセットを保持します。インスタンスがファイルシステムをマウントするには、ファイルシステムが少なくとも1つのマウントターゲット内に1つのエクスポートを持っている必要があります。」
エクスポートセット
「1つ以上のエクスポートのコレクションです。NFSv3プロトコルを使用してマウントターゲットがどのファイルシステムをエクスポートするか、およびNFSマウントプロトコルを使用してそれらのファイルシステムがどのように検索されるかを制御します。各マウントターゲットにはエクスポートセットがあり、マウントターゲットに関連付けられた各ファイルシステムには、そのエクスポートセット内に少なくとも1つのエクスポートが必要です。」
エクスポートパス
「エクスポートの作成時に指定するパスです。マウントターゲット内でファイルシステムを一意に識別し、1つのマウントターゲットに最大100個のファイルシステムを関連付けることができます。このパスは、ファイルシステム自体の内部パスや、クライアントのマウントポイントのパスとは無関係です。」
セットアップの全体像
以下の画像のような構成を作成します。1つの可用性ドメイン(AD)に仮想クラウドネットワーク(VCN)を1つ作成し、そのVCN配下にパブリックとプライベートの2つのサブネットを作成します。マウントターゲットにはプライベートサブネットを使用し、NFSクライアントにはパブリックサブネットを使用します。各サブネットには、トラフィックの出入りを許可するための独自のセキュリティルールとルーティングテーブルを設定します。
画像出典: https://www.youtube.com/watch?v=F5Umaxw6IL8&t=319s
OCIでFSSを作成する手順
ステップ1: VCNの作成
メニュー > ネットワーキング > 仮想クラウドネットワークに移動します。
任意のVCN名を入力し、CIDRブロックでIP範囲を指定して、仮想クラウドネットワークの作成をクリックします。
これでVCNが作成されますが、この時点ではまだサブネットやインターネットゲートウェイは存在しません。
ステップ2: サブネットの作成
パブリックとプライベートの2つのサブネットを作成します。
サブネットの作成をクリックし、以下の情報を入力してサブネットの作成をクリックします。
- サブネット名
- サブネットのIPアドレス
- ルート表名
- サブネットアクセス
- セキュリティリスト
ステップ3: ファイルシステムの作成
以下の手順でファイルシステムを作成します。
まず: ファイルストレージの作成
メニューからファイル・ストレージ、次にファイルシステムをクリックします。次にマウントターゲットを作成します。先ほど作成したVCNとサブネットを選択し、IPアドレス欄は空のままにします。システムは自動的に設定されます。作成をクリックします。
次に: ファイルシステムの作成
ファイルシステムタブでファイルシステムの作成をクリックし、以下の情報を入力して作成をクリックします。
- 任意のファイルシステム名
- エクスポートパス
- マウントターゲット情報
このファイルシステムをマウントする前に、先ほど作成したセキュリティリストを設定する必要があります。設定しない場合、インスタンスはこのファイルシステムにアクセスできません。マウントターゲットのサブネットへのトラフィックを許可するよう、セキュリティリストを構成してください。
注記: コンソールから独自のプライベートセキュリティリストを作成し、サブネットに割り当てることができます。2つのセキュリティリストを使用します。マウントターゲットにはプライベートサブネットを、NFSクライアントにはデフォルトのセキュリティリストが適用されたパブリックサブネットを使用します。デフォルトのセキュリティリストに変更を加える必要はありませんが、後述のとおりプライベートセキュリティリストにはイングレスルールとエグレスルールを設定する必要があります。
3番目: イングレスルールの追加
マウントターゲットに移動し、サブネット > セキュリティリストをクリックし、PrivateSL > イングレスルールの追加をクリックします。
TCPトラフィックを許可する以下のイングレスルールを追加します。
イングレスルール1:
ソースCIDR: 10.0.0.0/16
IPプロトコル: TCP
ソースポート範囲: すべて
宛先ポート範囲: 2048-2050
イングレスルール2:
ソースCIDR: 10.0.0.0/16
IPプロトコル: TCP
ソースポート範囲: すべて
宛先ポート範囲: 111
イングレスルール3:
ソースCIDR: 10.0.0.0/16
IPプロトコル: UDP
ソースポート範囲: すべて
宛先ポート範囲: 111
イングレスルール4:
ソースCIDR: 10.0.0.0/16
IPプロトコル: UDP
ソースポート範囲: すべて
宛先ポート範囲: 2048
4番目: エグレスルールの追加
続いて、以下のエグレスルールを追加します。
エグレスルール1:
宛先CIDR: 10.0.0.0/16
IPプロトコル: TCP
宛先ポート範囲: すべて
ソースポート範囲: 2048-2050
エグレスルール2:
宛先CIDR: 10.0.0.0/16
IPプロトコル: TCP
宛先ポート範囲: すべて
ソースポート範囲: 111
エグレスルール3:
宛先CIDR: 10.0.0.0/16
IPプロトコル: UDP
宛先ポート範囲: すべて
ソースポート範囲: 111
5番目: プライベートサブネットへの割り当て
これで、プライベートセキュリティリストにイングレスルールとエグレスルールが設定され、プライベートサブネットに割り当てられました。次に、作成したファイルシステムをテストするために、2つのコンピュートインスタンス(FSS1とFSS2)を作成します。
それでは、コンピュートインスタンスへのファイルシステムのマウントに進みます。
ファイルシステムのマウント
NFSクライアントを使用してファイルシステムをマウントする流れは以下のとおりです。
- コンソールからOCIインスタンスを起動します。
- NFSv3プロトコルを使用してFSSボリュームをマウントします。
- Linuxシステムに
nfs-utils(Oracle Linux®およびCentOS®)またはnfs-common(Ubuntu®オペレーティングシステム)をインストールします。 - ディレクトリを作成します。
- FSSコンソールでマウントターゲットをクリックします。
プライベートIPアドレスの情報を使って、nfsコマンドでボリュームをマウントします。
具体的な手順は以下のとおりです。
ステップ1
メニュー > コンピュート > インスタンス > インスタンスの作成に移動し、以下の情報を入力して作成をクリックします。
- インスタンス名: FSS1
- 仮想クラウドネットワーク: FSSVCN(先ほど作成したもの)
- サブネット: コンピュートサブネット(Linuxマシンのデフォルト)
- SSHキー: OCI Linuxマシンにアクセスするローカルマシンからコピーします。
$ cd ~/.ssh $ ls authorized_keys id_rsa id_rsa.pub known_hosts $ cat id_rsa.pub
ステップ2
コンピュートインスタンスFSS1が起動したら、同じ手順でFSS2を作成します。
その後、ローカルマシンからFSS1にSSH接続します。
ssh opc@PublicIP_Address
ssh opc@132.145.214.12
ssh opc@132.145.214.12
開始したばかりのターミナルセッションで、以下の手順を実行してファイルシステムをマウントします。この作業は、FSS1とFSS2の両方のコンピュートインスタンスで実施します。
ステップ3
コンピュートインスタンスにNFSユーティリティをインストールします。
ステップ4
ファイルシステムをマウントするローカルマウントポイントを作成します。
ステップ5
ファイルシステムをマウントします。
もう一方のコンピュートインスタンスFSS2でも同じコマンドを実行します。
ファイルシステムのテスト
ファイルシステムをテストするには、以下を実行します。
FSS1での操作
$ cd <Local mount>
$ sudo vi <File Name> (任意のテキストを含むファイルを作成)
FSS2での操作
$ cd <Local mount>
$ ls
このコマンドにより、FSS1で作成したファイルが表示されれば成功です。
まとめ
利用規模が拡大しても、File Storage serviceのプロビジョニングは完全に管理・自動化されています。File Storageは、Oracle Cloud Infrastructureのデータに対して高度な永続性、セキュリティ、耐久性を備えたストレージを提供します。分散アーキテクチャを基盤としており、データとそのデータへのアクセスの両方をスケールさせることができます。
データサービスについてさらに詳しくは、弊社の関連資料をご覧ください。
ご意見やご質問がある場合は、フィードバックタブをご利用ください。「Sales Chat」をクリックすれば、今すぐチャットで会話を始めることもできます。
-
VLCとGIMPを使って動画ファイルからGIFアニメを作成する方法
GIFの読み方が「ジフ」でも「ギフ」でも、GIFがインターネットユーモアの大きな存在であることは否定できません。GIFはWeb上で特に有用なフォーマットです。軽量なアニメーション表現により、動画のようなパフォーマンス負荷をかけずに、コンテンツに動きと魅力を加えられるからです。 オンライン上の誰もがGIFを楽しんでいますが、その作り方がどれほど簡単かを知っている人は実は少数派。無料のオープンソースソフトウェア2つ――VLCとGIMP――を組み合わせれば、動画からクリップを切り出して、驚くほど手軽にGIFへ変換できます。 ステップ1:GIMPとVLCをインストール 作業を始める前に、VLCとGI
-
Androidストレージ入門:内部ストレージと外部ストレージの違いと使い分け
ストレージは誰もが知っている存在でありながら、ついその重要性を見過ごしてしまいがちなものです。かつてはストレージ容量のわずかな増加さえも大きな飛躍であり、実現不可能に思えることさえありました。しかし今では、デバイスにどれだけの容量があるかを気にする人はほとんどいません(その違いに関心を持つ人はさらに少ないでしょう)。 より重要なのは、ストレージに保存されるデータの変遷に目を向けることです。スマートフォン以前の時代、私たちが保存していたのはたまに撮影した写真数枚、いくつかのゲーム、そして大量のテキストメッセージ程度でした。しかし現在、標準的なスマートフォンには、アプリケーション、ドキュメント、写