IoTフロー・ランタイムのファイル・ストレージ・アクセスの構成
IoTフロー・ランタイムのネットワーク構成に最大5つのFile Storageマウントを追加します。
ファイル・ストレージ・マウントのフロー・ランタイムがアクティブ化に失敗した場合は、ファイル・ストレージ・マウントのフロー・ランタイムがアクティブ化に失敗することがありますの既知の問題を参照してください。
ファイル・ストレージまたはオブジェクト・ストレージの選択
フローがファイルにアクセスして処理する必要がある方法に基づいて、ストレージ・サービスを選択します。
| ストレージ・オプション | 使用条件 | アクセスと要件 |
|---|---|---|
| ファイル・ストレージ | フローには、通常のファイルシステムパスを介して使用可能な共有ファイルが必要です。 | フロー・ランタイムnetworkConfigまたは次のコンソール・ステップを使用して、マウントを構成します。エクスポートは、/mnt/の下のマウントされたファイルシステム・パスで使用可能なままであり、ファイル・システム、マウント・ターゲット、エクスポートおよびNFSネットワーク・アクセスが必要です。 |
| オブジェクト・ストレージ | フローは、ネームスペース、バケットおよびオブジェクト名によって取得された個別のバッチ・オブジェクトまたはアーカイブ・オブジェクトを処理します。 | リソース・プリンシパルを使用してオブジェクト・ストレージ・ノードを構成します。各オブジェクトはサービスAPIを介してダウンロードされ、バケット、動的グループ、IAMポリシーおよびネットワーク到達可能性が必要です。例については、オブジェクト・ストレージからのバッチ・データの取込みを参照してください。 |
/mnt/の下にマウントされます。historyなどの相対マウント・パスのみを指定します。 システムは、
/、/etc、/usr、/var、/devまたは/procなどのシステム上の場所にエクスポートをマウントできないように、先頭のスラッシュ、末尾のスラッシュおよびパス・トラバース・セグメントを拒否します。構成済ファイル・ストレージ・ファイル・システム内のデータは、フロー・ランタイムを非アクティブ化および再アクティブ化するときに保持されます。フロー・ランタイムのローカル・ファイル・システムは一時的であり、そのファイル上のファイルは非アクティブ化またはアクティブ化中に失われる可能性があります。ライフサイクル・アクションを実行する前に、必要なローカル・ファイルをファイル・ストレージ、オブジェクト・ストレージ、Autonomous Databaseまたは別の永続ストレージ・サービスに移動します。
始める前に
ファイル・システムの作成、マウント・ターゲットおよびエクスポート。フロー・ランタイム・サブネットが到達できるサブネットにマウント・ターゲットを配置します。
エクスポートの詳細ページで、NFSクライアントのエクスポート・オプションを編集し、「ポート」を「特権」に設定します。エクスポートおよびエクスポート・オプションの編集を参照してください。
可能な場合は、マウント・ターゲットにネットワーク・セキュリティ・グループ(NSG)を使用します。NSGを使用しない場合は、マウント・ターゲット・サブネットに関連付けられたセキュリティ・リストに次のステートフル・イングレス・ルールを追加します。これらのポートは、コンテナ・インスタンスのファイル・ストレージ・マウント要件と一致します。その他のネットワーク配置および補完エグレス・ルールについては、ファイル・ストレージのVCNセキュリティ・ルールの構成を参照してください。
| ソース | プロトコル | 宛先ポート |
|---|---|---|
| フロー・ランタイム・サブネットCIDR | TCP | 111 |
| フロー・ランタイム・サブネットCIDR | UDP | 111 |
| フロー・ランタイム・サブネットCIDR | TCP | 2048-2051 |
| フロー・ランタイム・サブネットCIDR | UDP | 2048-2051 |
最大5つのファイル・ストレージ・マウントを含めることができる完全なネットワーク構成ファイルを作成し、生成されたIoT Flow Runtimeの
updateコマンドを実行します。oci iot flow-runtime update --iot-flow-runtime-id <flow-runtime-OCID> --network-config file://network-config.jsonたとえば、
network-config.jsonには次が含まれます。{ "subnetId": "ocid1.subnet.oc1..exampleuniqueID", "networkSecurityGroupIds": [ "ocid1.networksecuritygroup.oc1..exampleuniqueID" ], "fileStorageMounts": [ { "mountPath": "history", "mountTargetId": "ocid1.mounttarget.oc1..exampleuniqueID", "exportId": "ocid1.export.oc1..exampleuniqueID" } ] }mountPath値は相対値です。この例では、フロー・ランタイムでエクスポートを/mnt/historyで使用できるようにします。--network-configを指定すると、ネットワーク構成全体が置き換えられます。VCNアタッチメントの保持中にすべてのファイル・ストレージ・マウントを削除するには、fileStorageMountsを省略する置換オブジェクトを指定します。すべてのオプションについては、CLIコマンド・リファレンスを参照してください。
UpdateIotFlowRuntime操作を実行して、
fileStorageMountsを含む完全な置換networkConfigを使用してファイル・ストレージ・アクセスを構成します。PUT /20250531/iotFlowRuntimes/{iotFlowRuntimeId} { "networkConfig": { "subnetId": "ocid1.subnet.oc1..exampleuniqueID", "networkSecurityGroupIds": [ "ocid1.networksecuritygroup.oc1..exampleuniqueID" ], "fileStorageMounts": [ { "mountPath": "history", "mountTargetId": "ocid1.mounttarget.oc1..exampleuniqueID", "exportId": "ocid1.export.oc1..exampleuniqueID" } ] } }mountPath値は相対値です。この例では、フロー・ランタイムでエクスポートを/mnt/historyで使用できるようにします。指定する場合、
fileStorageMountsには少なくとも1つの項目が含まれている必要があります。各項目には、mountPath、mountTargetIdおよびexportIdが必要です。mountPath値には、先頭のスラッシュ、末尾のスラッシュまたはパス・トラバース・セグメントを含めないでください。更新は部分的ですが、指定された
networkConfigによって完全なネットワーク構成が置き換えられます。すべてのマウントを削除するには、交換オブジェクトからfileStorageMountsを省略します。既存の完全なネットワーク構成を保持するには、更新リクエストからnetworkConfigを省略します。次の手順
IoTフロー・ランタイムを作成して、IoTフロー・ランタイムに関連付けられた同じOCIDを持つノード-REDフローをすべて作成できます。