Docker コンテナー割り当てソフトウェアは ArcGIS Notebook Server で使用されます。
Docker ソフトウェア
ArcGIS Notebook Server では Docker コンテナー割り当てソフトウェアを使ってセキュリティを提供し、ノートブック作成者のリソースを隔離します。 仮想マシンとは異なり、コンテナーは仮想化されたオペレーティング システムです。コンピューターの各コンテナーには隔離環境にすべての OS コンポーネントがあります。 ArcGIS Notebook Server はサイトの各ユーザーにコンテナーを個別に提供します。 各ユーザーはランタイムごとにコンテナーを 1 つ所有し、ユーザーは自分のコンテナーでだけノートブックを実行できます。
ArcGIS Notebook Server を使う前に、各 ArcGIS Notebook Server コンピューターに独立したサードパーティ ソフトウェア コンポーネントである Docker をインストールする必要があります。
Docker コンテナー イメージ
インストール前に My Esri からソフトウェア ダウンロードと認証ファイルを取得した場合は、ArcGIS Notebooks に専用の 2 つの Docker コンテナー イメージも提供されます。 これらのコンテナー イメージによって、ノートブック ユーザーに必要なランタイム (Python モジュールの特定のコレクション) が提供されます。
Esri では Standard と Advanced という 2 つの Docker コンテナー イメージを提供しています。 これら 2 つのコンテナー イメージにはシステム ツールとライブラリだけでなく、コンテナーを適切に構成するためのさまざまな設定が含まれています。 また、ノートブック ランタイムも含まれています。Standard コンテナー イメージには Standard ノートブック ランタイムがあり、Advanced コンテナー イメージには Advanced ランタイムがあります。
Standard ランタイムでは、ArcGIS Notebooks で ArcGIS API for Python のコードとサードパーティのモジュールを使用することができます。 Advanced ランタイムには Standard イメージのすべてのモジュールと、ArcPy および関連ライブラリがあります。
Advanced ライセンスがある場合は、My Esri から両方のコンテナー イメージをダウンロードしてインストールしてください。 Standard イメージと Advanced イメージに含まれている Python モジュールは「利用可能な Python ライブラリの表示」に一覧されています。
Advanced ランタイムを使ってノートブックを使用するには、Advanced Notebooks 権限を含む役割をポータルでユーザーに割り当てる必要があります。 ユーザーが初めてノートブックを開くと、Advanced コンテナー イメージが適用されたコンテナーが起動します。
Advanced Notebooks 権限を持つノートブック作成者は、Standard ランタイムを使用するノートブックを指定することもできます。 これにより、ユーザーは自分が作成したノートブックを Standard ランタイムにしかアクセスできないユーザーと共有することができます。 ユーザーが初めてこの操作を行うと、2 番目のコンテナーが起動して Standard コンテナー イメージが読み込まれます。
デフォルトでは、コンテナーには一定量の RAM と、一定数の CPU コア共有が割り当てられます。 これらのデフォルト リソースの制限は、次に示すように、コンテナーによって実行されるランタイムで決定されます。
- Standard ランタイムは、コンテナーあたり 1 CPU コアと 4 GB の RAM を割り当てます。
- Advanced ランタイムは、コンテナーあたり 2 CPU コアと 6 GB の RAM を割り当てます。
ArcGIS Notebook Server 管理者は、サイトで作業を行っているノートブック作成者の数と、各作成者が使用しているランタイムを監視する必要があります。 これらの条件によっては、ArcGIS Notebook Server に対して設定したリソースの制約を変更する必要があるか、変更を検討します。
Docker のエディション
Docker には 2 つのエディションがあります。 Docker および Mirantis Container Runtime (旧称: Docker Engine-Enterprise)。 いずれのエディションも機能的に完成されているとされています。
注意:
Docker のバージョンと価格の詳細については、「Docker FAQ」 をご参照ください。
ArcGIS Notebook Server は Ubuntu と Red Hat Enterprise Linux の 2 つの Linux オペレーティング システムをサポートしています。 コンピューターで Red Hat Enterprise Linux を実行している場合は、 Mirantis Container Runtime をインストールする必要があります。 コンピューターで Ubuntu を実行している場合は、どちらの Docker エディションでも ArcGIS Notebook Server を使うことができます。
各 ArcGIS Notebook Server コンピューターに Docker または Mirantis Container Runtime 20.10.0 以降をインストールしておく必要があります。Docker のインストールと構成の詳細については、「ArcGIS Notebook Server への Docker のインストール」をご参照ください。
注意:
ArcGIS Notebook Server は、コンピューター上にインストールされたいずれかのエディションの Docker でのみ機能します。 複数コンピューターのサイトでエディションを混在させることはできません。
ノートブック ランタイムとコンテナー イメージ
コンテナーは通常、初回起動時には空の状態です。 コンテナーが正常に動作するのに必要なシステム ライブラリ、ツール、および構成は、コンテナー イメージ ファイルから提供されます。 コンテナー イメージは、起動プロセスの一部としてコンテナーに適用されます。
ヒント:
クラウド ソフトウェアを配置したことがあれば、空の仮想コンピューターと動作させるのに必要なコード、ツール、および設定を提供するコンピューター イメージに慣れているでしょう。 コンテナー イメージは、コンテナーの空の仮想 OS のように動作します。
Esri では、ArcGIS Notebook Server 向けに 2 種類のコンテナー イメージを用意しています。 それぞれのコンテナー イメージには、Python リソースを ArcGIS Notebooks で利用できるようにするノートブック ランタイムが含まれています。 ランタイムごとに、これらのライブラリと従属ライブラリのリスト (各 Python ライブラリの特定バージョンを含む) がパッケージ化されています。
ArcGIS Notebook Server には、Standard (ArcGIS API for Python と他の Python モジュールを含む) および Advanced (上記に加えて ArcPy も含む) という 2 つのランタイムがあり、対応するコンテナー イメージの一部としてノートブックで利用できます。
ライセンスに応じて、Standard のコンテナー イメージか、Standard コンテナー イメージと Advanced コンテナー イメージの両方を受け取ることができます。
コンテナーを起動すると、Esri から受け取った 2 つのコンテナー イメージのうちの 1 つがコンテナーに適用されます。 適用されるランタイムとイメージは、次のようにポータル内のノートブック作成者の権限によって異なります。
- 作成者にノートブックの作成と編集権限を付与されている場合、その作成者のコンテナーは Standard コンテナー イメージに読み込まれます。 これらの作成者が開くすべてのノートブックでは Standard ランタイムが使用されます。
- [高度なノートブック] 権限も付与されている作成者のコンテナーには Advanced コンテナー イメージが読み込まれます。 これらの作成者のノートブックのデフォルト ノートブック ランタイムは Advanced ランタイムです。 ただし、これらの作成者には個々のノートブックのランタイムを指定するオプションも用意されているので、ノートブックで Standard ランタイムまたは Advanced ランタイムをどちらも使用できます。