プライベートモードでの導入の準備
プライベートモードでNetApp Consoleを導入する前に、環境を準備します。ホストの要件を確認し、ネットワークを準備し、権限を設定するなどの作業が必要です。
|
|
NetApp Consoleを "AWS Secret Cloud"または "AWS Top Secret Cloud"で使用するには、それぞれの環境に応じた手順に従ってください。 "AWS Secret CloudまたはTop Secret CloudでCloud Volumes ONTAPを使い始める方法を学ぶ" |
ステップ1:プライベートモードの仕組みを理解する
プライベートモードでは、オンプレミスまたはクラウドにコンソールエージェントをインストールし、NetApp Console を使用してストレージシステム(ONTAP オンプレミスおよび Cloud Volumes ONTAP)を管理します。NetApp Console API エンドポイントまたは NetApp Console SaaS アプリケーションへの接続はないため、コンソールエージェントによって提供されるローカル UI からコンソールにアクセスします。
ステップ2: インストールオプションを確認する
プライベートモードでは、独自の Linux ホストにエージェントを手動でインストールすることで、Console エージェントをオンプレミスまたはクラウドにインストールできます。
コンソールエージェントをインストールする場所によって、プライベートモードを使用する際に利用できるNetApp Consoleのサービスと機能が決まります。Cloud Volumes ONTAPを導入および管理する場合は、コンソールエージェントをクラウドにインストールする必要があります。
ステップ3: ホストの要件を確認する
NetApp Console エージェントを実行するには、ホストが特定のオペレーティング システム要件、RAM 要件、ポート要件などを満たしている必要があります。
- 専用ホスト
-
コンソール エージェントには専用のホストが必要です。次のサイズ要件を満たすアーキテクチャであれば、どれでもサポートされます。
-
CPU: 8コアまたは8vCPU
-
メモリ: 32 GB
-
ディスク容量: ホストには 165 GB が推奨され、パーティション要件は次のとおりです。
-
/opt: 120 GiBの空き容量が必要ですエージェントは `/opt`インストールするには `/opt/application/netapp`ディレクトリとその内容。
-
/var: 40 GiBの空き容量が必要ですコンソールエージェントにはこのスペースが必要です `/var`Podman または Docker は、このディレクトリ内にコンテナを作成するように設計されているためです。具体的には、 `/var/lib/containers/storage`ディレクトリと `/var/lib/docker`Docker用。このスペースでは外部マウントまたはシンボリックリンクは機能しません。
-
-
- オペレーティングシステムとコンテナの要件
-
コンソールをプライベート モードで使用する場合、コンソール エージェントは次のオペレーティング システムでサポートされます。エージェントをインストールする前に、コンテナ オーケストレーション ツールが必要です。
オペレーティング システム サポートされるOSバージョン サポートされているエージェントのバージョン 必要なコンテナツール SELinux Red Hat Enterprise Linux
9.1~9.4
8.6~8.10
3.9.42 以降、コンソールがプライベート モードの場合
Podman バージョン 4.6.1 または 4.9.4
強制モードまたは許可モードでサポートされます
Ubuntu
22.04 LTS
3.9.29以降
Docker エンジン 23.0.6 から 26.0.0
26.0.0は、_新しい_エージェント3.9.44以降のインストールでサポートされます。
サポート対象外
注:
-
コンソール エージェントは、これらのオペレーティング システムの英語版でサポートされています。
-
RHEL の場合、ホストは Red Hat Subscription Management に登録されている必要があります。登録されていない場合、ホストはエージェントのインストール中に必要なサードパーティ製ソフトウェアを更新するためにリポジトリにアクセスできません。
-
- ハイパーバイザー
-
サポートされているオペレーティング システムを実行することが認定されているベア メタルまたはホスト型ハイパーバイザーが必要です。
- CPU
-
8コアまたは8vCPU
- RAM
-
32 GB
- AWS EC2インスタンスタイプ
-
CPU と RAM の要件を満たすインスタンス タイプ。 NetAppt3.2xlarge を推奨します。
- Azure VM サイズ
-
CPU と RAM の要件を満たすインスタンス タイプ。 NetAppStandard_D8s_v3 を推奨します。
- Google Cloud マシンタイプ
-
CPU と RAM の要件を満たすインスタンス タイプ。NetAppn2-standard-8 を推奨しています。
コンソールエージェントは、Google Cloud の VM インスタンスで、以下の OS がサポートする環境でサポートされます。 "シールドされたVMの機能"
- /optのディスク容量
-
100 GiBの空き容量が必要です
エージェントは `/opt`インストールするには `/opt/application/netapp`ディレクトリとその内容。
- /varのディスク容量
-
20 GiBの空き容量が必要です
コンソールエージェントにはこのスペースが必要です `/var`Docker または Podman は、このディレクトリ内にコンテナを作成するように設計されているためです。具体的には、 `/var/lib/containers/storage`ディレクトリ。このスペースでは外部マウントまたはシンボリックリンクは機能しません。
ステップ4: PodmanまたはDocker Engineをインストールする
Podman または Docker Engine をインストールして、Console エージェント用のホストを準備する必要があります。
オペレーティング システムに応じて、エージェントをインストールする前に Podman または Docker Engine のいずれかが必要になります。
-
Red Hat Enterprise Linux 8 および 9 には Podman が必要です。
-
Ubuntu には Docker Engine が必要です。
Podman をインストールして設定するには、次の手順に従います。
-
podman.socket サービスを有効にして起動します
-
Python3をインストールする
-
podman-compose パッケージ バージョン 1.0.6 をインストールします。
-
podman-composeをPATH環境変数に追加する
-
Red Hat Enterprise Linux を使用している場合は、Podman バージョンが CNI ではなく Netavark Aardvark DNS を使用していることを確認してください。
|
|
DNS ポートの競合を避けるために、エージェントをインストールした後、aardvark-dns ポート (デフォルト: 53) を調整します。指示に従ってポートを構成します。 |
-
ホストに podman-docker パッケージがインストールされている場合は削除します。
dnf remove podman-docker rm /var/run/docker.sock -
Podman をインストールします。
Podman は、公式の Red Hat Enterprise Linux リポジトリから入手できます。
-
Red Hat Enterprise Linux 9.6 の場合:
sudo dnf install podman-5:<version><version> は、インストールする Podman のサポートされているバージョンです。サポートされているPodmanのバージョンを表示する 。
-
Red Hat Enterprise Linux 9.1 から 9.4 の場合:
sudo dnf install podman-4:<version><version> は、インストールする Podman のサポートされているバージョンです。サポートされているPodmanのバージョンを表示する 。
-
Red Hat Enterprise Linux 8 の場合:
sudo dnf install podman-4:<version><version> は、インストールする Podman のサポートされているバージョンです。サポートされているPodmanのバージョンを表示する 。
-
-
podman.socket サービスを有効にして起動します。
sudo systemctl enable --now podman.socket -
python3 をインストールします。
sudo dnf install python3 -
システムにまだインストールされていない場合は、EPEL リポジトリ パッケージをインストールします。
podman-compose は、Extra Packages for Enterprise Linux (EPEL) リポジトリから入手できるため、この手順は必須です。
-
Red Hat Enterprise 9 を使用している場合:
-
EPEL リポジトリ パッケージをインストールします。
sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm+
-
podman-compose パッケージ 1.5.0 をインストールします。
sudo dnf install podman-compose-1.5.0
-
-
Red Hat Enterprise Linux 8 を使用している場合:
-
EPEL リポジトリ パッケージをインストールします。
sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm -
podman-compose パッケージ 1.0.6 をインストールします。
sudo dnf install podman-compose-1.0.6使用して `dnf install`コマンドは、PATH 環境変数に podman-compose を追加するための要件を満たしています。インストールコマンドは、すでにインストールされているpodman-composeを/usr/binに追加します。 `secure_path`ホスト上のオプション。 -
Red Hat Enterprise Linux 8 を使用している場合は、Podman バージョンが CNI ではなく Aardvark DNS を備えた NetAvark を使用していることを確認します。
-
次のコマンドを実行して、networkBackend が CNI に設定されているかどうかを確認します。
podman info | grep networkBackend -
networkBackendが
CNI、それを変更する必要がありますnetavark。 -
インストール `netavark`そして `aardvark-dns`次のコマンドを使用します。
dnf install aardvark-dns netavark -
開く `/etc/containers/containers.conf`ファイルを編集し、network_backend オプションを変更して、「cni」の代わりに「netavark」を使用します。
もし
/etc/containers/containers.conf`存在しない場合は、設定を変更してください `/usr/share/containers/containers.conf。 -
podman を再起動します。
systemctl restart podman -
次のコマンドを使用して、networkBackend が「netavark」に変更されていることを確認します。
podman info | grep networkBackend
-
-
Docker のドキュメントに従って Docker Engine をインストールします。
-
サポートされている Docker エンジン バージョンをインストールするには、手順に従ってください。最新バージョンはコンソールでサポートされていないため、インストールしないでください。
-
Docker が有効になっていて実行されていることを確認します。
sudo systemctl enable docker && sudo systemctl start docker
ステップ5:ネットワークを準備する
コンソール エージェントがパブリック クラウド内のリソースを管理できるようにネットワークを設定します。コンソール エージェント用の仮想ネットワークとサブネットを用意するほか、次の要件が満たされていることを確認してください。
- ターゲットネットワークへの接続
-
コンソール エージェントは、ストレージを管理する予定の場所へのネットワーク接続を持っている必要があります。たとえば、Cloud Volumes ONTAP をデプロイする予定の VPC または VNet 、またはオンプレミス ONTAP クラスタが存在するデータセンターなどです。
- 日常業務のエンドポイント
-
Cloud Volumes ONTAP システムの作成を計画している場合、コンソールエージェントは、クラウド プロバイダの公開されているリソース内のエンドポイントへの接続が必要です。
エンドポイント 目的 AWS サービス (amazonaws.com):
-
クラウドフォーメーション
-
エラスティックコンピューティングクラウド (EC2)
-
アイデンティティとアクセス管理(IAM)
-
キー管理サービス (KMS)
-
セキュリティトークンサービス(STS)
-
シンプルストレージサービス(S3)
AWS リソースを管理します。エンドポイントは AWS リージョンによって異なります。 "詳細についてはAWSドキュメントを参照してください"
NetApp ONTAP用の Amazon FsX:
-
api.workloads.netapp.com
Web ベースのコンソールは、このエンドポイントに接続して Workload Factory API と対話し、FSx for ONTAPベースのワークロードを管理および操作します。
https://management.azure.com https://login.microsoftonline.com https://blob.core.windows.net https://core.windows.net
Azure パブリック リージョン内のリソースを管理します。
https://management.azure.microsoft.scloud https://login.microsoftonline.microsoft.scloud https://blob.core.microsoft.scloud https://core.microsoft.scloud
Azure IL6 リージョン内のリソースを管理します。
https://management.chinacloudapi.cn https://login.chinacloudapi.cn https://blob.core.chinacloudapi.cn https://core.chinacloudapi.cn
Azure China リージョンのリソースを管理します。
https://www.googleapis.com/compute/v1/ https://compute.googleapis.com/compute/v1 https://cloudresourcemanager.googleapis.com/v1/projects https://www.googleapis.com/compute/beta https://storage.googleapis.com/storage/v1 https://www.googleapis.com/storage/v1 https://iam.googleapis.com/v1 https://cloudkms.googleapis.com/v1 https://config.googleapis.com/v1/projects
Google Cloud 内のリソースを管理します。
-
- AzureのパブリックIPアドレス
-
Azure のコンソール エージェント VM でパブリック IP アドレスを使用する場合は、コンソールがこのパブリック IP アドレスを使用するように、IP アドレスで Basic SKU を使用する必要があります。

代わりに標準 SKU IP アドレスを使用する場合、コンソールはパブリック IP ではなく、コンソール エージェントのプライベート IP アドレスを使用します。コンソールにアクセスするために使用しているマシンがそのプライベート IP アドレスにアクセスできない場合、コンソールからのアクションは失敗します。
- プロキシ サーバ
-
NetApp は明示的プロキシ構成と透過的プロキシ構成の両方をサポートしています。透過プロキシを使用している場合は、プロキシ サーバーの証明書のみを提供する必要があります。明示的なプロキシを使用している場合は、IP アドレスと資格情報も必要になります。
-
IPアドレス
-
Credentials
-
HTTPS証明書
プライベートモードでは、NetApp Consoleがアウトバウンドトラフィックを送信するのは、Cloud Volumes ONTAPシステムを作成するためにクラウド プロバイダに対してのみです。
-
- ポート
-
ユーザーが開始しない限り、Console エージェントへの着信トラフィックは発生しません。
HTTP(80)とHTTPS(443)は、NetApp Consoleへのアクセスを提供します。トラブルシューティングのためにホストに接続する必要がある場合は、SSH(22)が必要です。
- NTP を有効にする
-
NetApp Data Classificationを使用して企業のデータ ソースをスキャンする予定の場合は、システム間で時刻が同期されるように、コンソール エージェントとNetApp Data Classificationシステムの両方で Network Time Protocol (NTP) サービスを有効にする必要があります。 "NetAppデータ分類の詳細"
ステップ6: クラウド権限を準備する
コンソールエージェントがクラウドにインストールされており、Cloud Volumes ONTAPシステムを作成する予定がある場合、NetApp Consoleにはクラウド プロバイダの権限が必要です。クラウド プロバイダで権限を設定してから、インストール後にそれらの権限をコンソール エージェント インスタンスに関連付ける必要があります。
必要な手順を確認するには、クラウド プロバイダに使用する認証オプションを選択してください。
IAM ロールを使用して、Console エージェントに権限を付与します。Console エージェントの EC2 インスタンスにロールを手動でアタッチする必要があります。
-
AWS コンソールにログインし、IAM サービスに移動します。
-
ポリシーを作成します。
-
*ポリシー > ポリシーの作成*を選択します。
-
*JSON*を選択し、その内容をコピーして貼り付けます。"コンソールエージェントのIAMポリシー" 。
-
残りの手順を完了してポリシーを作成します。
-
-
IAM ロールを作成します。
-
*[ロール] > [ロールの作成]*を選択します。
-
AWS サービス > EC2 を選択します。
-
作成したポリシーを添付して権限を追加します。
-
残りの手順を完了してロールを作成します。
-
これで、コンソール エージェント EC2 インスタンスの IAM ロールが作成されました。
IAM ユーザーの権限とアクセスキーを設定します。Console エージェントをインストールして NetApp Console をセットアップしたら、NetApp Console に AWS アクセスキーを指定します。
-
AWS コンソールにログインし、IAM サービスに移動します。
-
ポリシーを作成します。
-
*ポリシー > ポリシーの作成*を選択します。
-
*JSON*を選択し、その内容をコピーして貼り付けます。"コンソールエージェントのIAMポリシー" 。
-
残りの手順を完了してポリシーを作成します。
使用する予定のNetApp Consoleサービスに応じて、2番目のポリシーを作成する必要がある場合があります。
標準リージョンの場合、権限は 2 つのポリシーに分散されます。 AWS の管理ポリシーの最大文字サイズ制限により、2 つのポリシーが必要になります。"コンソールエージェントのIAMポリシーの詳細" 。
-
-
IAM ユーザーにポリシーをアタッチします。
-
コンソール エージェントをインストールした後、 NetApp Consoleに追加できるアクセス キーがユーザーにあることを確認します。
これで、アカウントに必要な権限が付与されました。
必要な権限を持つ Azure カスタム ロールを作成します。このロールを Console エージェント VM に割り当てます。
Azure ポータル、Azure PowerShell、Azure CLI、または REST API を使用して、Azure カスタム ロールを作成できます。次の手順は、Azure CLI を使用してロールを作成する方法を示しています。別の方法をご希望の場合は、 "Azureドキュメント"
-
Console エージェントをインストールする予定の VM でシステム割り当てマネージド ID を有効にして、カスタム ロールを通じて必要な Azure アクセス許可を提供できるようにします。
-
の内容をコピーします"コンソールエージェントのカスタムロール権限"JSON ファイルに保存します。
-
割り当て可能なスコープに Azure サブスクリプション ID を追加して、JSON ファイルを変更します。
NetApp Consoleで使用する各 Azure サブスクリプションの ID を追加する必要があります。
例
"AssignableScopes": [ "/subscriptions/d333af45-0d07-4154-943d-c25fbzzzzzzz", "/subscriptions/54b91999-b3e6-4599-908e-416e0zzzzzzz", "/subscriptions/398e471c-3b42-4ae7-9b59-ce5bbzzzzzzz" ] -
JSON ファイルを使用して、Azure でカスタム ロールを作成します。
次の手順では、Azure Cloud Shell で Bash を使用してロールを作成する方法について説明します。
-
始める "Azure クラウド シェル"Bash 環境を選択します。
-
JSON ファイルをアップロードします。

-
Azure CLI を使用してカスタム ロールを作成します。
az role definition create --role-definition agent_Policy.json
-
Microsoft Entra IDでサービスプリンシパルを作成して設定し、NetApp Consoleに必要なAzure資格情報を取得します。ConsoleエージェントをインストールしてNetApp Consoleをセットアップした後、これらの資格情報をNetApp Consoleに提供する必要があります。
-
Azure で Active Directory アプリケーションを作成し、そのアプリケーションをロールに割り当てるためのアクセス許可があることを確認します。
詳細については、 "Microsoft Azure ドキュメント: 必要な権限"
-
Azure ポータルから、Microsoft Entra ID サービスを開きます。

-
メニューで*アプリ登録*を選択します。
-
*新規登録*を選択します。
-
アプリケーションの詳細を指定します。
-
名前: アプリケーションの名前を入力します。
-
アカウント タイプ: アカウント タイプを選択します (いずれのタイプもNetApp Consoleで使用できます)。
-
リダイレクト URI: このフィールドは空白のままにすることができます。
-
-
*登録*を選択します。
AD アプリケーションとサービス プリンシパルを作成しました。
-
カスタム ロールを作成します。
Azure ポータル、Azure PowerShell、Azure CLI、または REST API を使用して、Azure カスタム ロールを作成できます。次の手順は、Azure CLI を使用してロールを作成する方法を示しています。別の方法をご希望の場合は、 "Azureドキュメント"
-
の内容をコピーします"コンソールエージェントのカスタムロール権限"JSON ファイルに保存します。
-
割り当て可能なスコープに Azure サブスクリプション ID を追加して、JSON ファイルを変更します。
ユーザーがCloud Volumes ONTAPシステムを作成する各 Azure サブスクリプションの ID を追加する必要があります。
例
"AssignableScopes": [ "/subscriptions/d333af45-0d07-4154-943d-c25fbzzzzzzz", "/subscriptions/54b91999-b3e6-4599-908e-416e0zzzzzzz", "/subscriptions/398e471c-3b42-4ae7-9b59-ce5bbzzzzzzz" ] -
JSON ファイルを使用して、Azure でカスタム ロールを作成します。
次の手順では、Azure Cloud Shell で Bash を使用してロールを作成する方法について説明します。
-
始める "Azure クラウド シェル"Bash 環境を選択します。
-
JSON ファイルをアップロードします。

-
Azure CLI を使用してカスタム ロールを作成します。
az role definition create --role-definition agent_Policy.jsonこれで、コンソール エージェント仮想マシンに割り当てることができる、コンソール オペレーターと呼ばれるカスタム ロールが作成されます。
-
-
-
アプリケーションをロールに割り当てます。
-
Azure ポータルから、サブスクリプション サービスを開きます。
-
サブスクリプションを選択します。
-
アクセス制御 (IAM) > 追加 > ロール割り当ての追加 を選択します。
-
*役割*タブで、*コンソールオペレーター*役割を選択し、*次へ*を選択します。
-
*メンバー*タブで、次の手順を実行します。
-
*ユーザー、グループ、またはサービス プリンシパル*を選択したままにします。
-
*メンバーを選択*を選択します。

-
アプリケーションの名前を検索します。
次に例を示します。

-
アプリケーションを選択し、[選択] を選択します。
-
*次へ*を選択します。
-
-
*レビュー + 割り当て*を選択します。
これで、サービス プリンシパルに、コンソール エージェントをデプロイするために必要な Azure アクセス許可が付与されました。
複数の Azure サブスクリプションからCloud Volumes ONTAPをデプロイする場合は、サービス プリンシパルを各サブスクリプションにバインドする必要があります。 NetApp Consoleでは、 Cloud Volumes ONTAP をデプロイするときに使用するサブスクリプションを選択できます。
-
-
Microsoft Entra ID サービスで、アプリの登録 を選択し、アプリケーションを選択します。
-
API 権限 > 権限の追加 を選択します。
-
Microsoft API の下で、Azure Service Management を選択します。

-
組織ユーザーとして Azure サービス管理にアクセスする を選択し、権限の追加 を選択します。

-
Microsoft Entra ID サービスで、アプリの登録 を選択し、アプリケーションを選択します。
-
アプリケーション (クライアント) ID と ディレクトリ (テナント) ID をコピーします。

Azure アカウントをコンソールに追加するときは、アプリケーションのアプリケーション (クライアント) ID とディレクトリ (テナント) ID を指定する必要があります。コンソールは ID を使用してプログラムでサインインします。
-
Microsoft Entra ID サービスを開きます。
-
*アプリ登録*を選択し、アプリケーションを選択します。
-
*証明書とシークレット > 新しいクライアント シークレット*を選択します。
-
シークレットの説明と期間を指定します。
-
*追加*を選択します。
-
クライアント シークレットの値をコピーします。

これでサービス プリンシパルが設定され、アプリケーション(クライアント)ID、ディレクトリ(テナント)ID、およびクライアント シークレットの値がコピーされているはずです。Azure クレデンシャルを追加するときに、この情報を NetApp Console に入力します。
ロールを作成し、コンソール エージェント VM インスタンスに使用するサービス アカウントに適用します。
-
Google Cloud でカスタムロールを作成します。
-
定義された権限を含むYAMLファイルを作成します。"Google Cloud のコンソール エージェント ポリシー" 。
-
Google Cloud から Cloud Shell を有効にします。
-
コンソール エージェントに必要な権限を含む YAML ファイルをアップロードします。
-
カスタムロールを作成するには、 `gcloud iam roles create`指示。
次の例では、プロジェクト レベルで「agent」という名前のロールを作成します。
gcloud iam roles create agent --project=myproject --file=agent.yaml -
-
Google Cloud でサービス アカウントを作成します。
-
IAM & Admin サービスから、サービス アカウント > サービス アカウントの作成 を選択します。
-
サービス アカウントの詳細を入力し、[作成して続行] を選択します。
-
作成したロールを選択します。
-
残りの手順を完了してロールを作成します。
-
ステップ7: Google Cloud APIを有効にする
Google Cloud に Cloud Volumes ONTAP をデプロイするには、いくつかの API を有効にする必要があります。
-
"プロジェクトで次の Google Cloud API を有効にします"
-
Cloud Build API(Infrastructure Managerを使用したプライベートモードCloud Volumes ONTAPデプロイメントに必要)
-
クラウド デプロイメント マネージャー V2 API
-
クラウド インフラストラクチャ マネージャー API
-
クラウドロギングAPI
-
クラウド リソース マネージャー API
-
コンピューティングエンジン API
-
アイデンティティとアクセス管理 (IAM) API
-
Cloud Key Management Service(KMS)API(お客様が管理する暗号化キー(CMEK)でNetApp Backup and Recoveryを使用する予定の場合のみ必要)
-
Cloud Quotas API(Infrastructure Managerを使用したCloud Volumes ONTAPデプロイメントに必要)
-