LambdaリンクでFSx for ONTAPファイルシステムに接続
高度なONTAP管理操作を実行するには、ワークロード ファクトリー アカウントと 1 つ以上の FSx for ONTAPファイル システム間の接続を設定します。これには、新しい Lambda リンクと既存の Lambda リンクの関連付けと、リンクの認証が含まれます。リンクの関連付けにより、 Amazon FSx for ONTAP API 経由では利用できない特定の機能を FSx for ONTAPファイルシステムから直接監視および管理できます。
"リンクの詳細"です。
リンクはAWS Lambdaを利用してイベントに応じてコードを実行し、そのコードに必要なコンピューティングリソースを自動的に管理します。作成したリンクはNetAppアカウントの一部であり、AWSアカウントに関連付けられています。
FSx for ONTAPファイルシステムを定義するときに、アカウントにリンクを作成できます。リンクはそのファイルシステムに使用され、他の FSx for ONTAPファイルシステムにも使用できます。後でファイル システムのリンクを関連付けることもできます。
リンクには認証が必要です。ワークロードファクトリー認証情報サービスに保存されている認証情報、または AWS Secrets Manager に保存されている認証情報を使用してリンクを認証できます。リンクごとに 1 つの認証方法のみがサポートされます。たとえば、AWS Secrets Manager を使用したリンク認証を選択した場合、後で認証方法を変更することはできません。
|
コネクタを使用する場合、AWS Secrets Managerはサポートされません。 |
新しいリンクの関連付け
新しいリンクの関連付けには、リンクの作成と関連付けが含まれます。
このワークフローでリンクを作成するには、自動または手動の 2 つのオプションがあります。リンクを作成するには、AWSアカウントでAWS CloudFormationスタックを起動する必要があります。
-
自動: ワークロード ファクトリを介して自動登録されたリンクを作成します。これには、ワークロード ファクトリー自動化用のトークンが必要であり、CloudFormation コードの有効期間は短く、最大 6 時間使用できます。
-
手動: Codebox から CloudFormation または Terraform を使用して手動で登録し、リンクを作成します。コードが存続し、操作を完了するための時間が延長されます。これは、セキュリティや DevOps などのさまざまなチームと連携して作業する場合に便利です。これらのチームには、リンクの作成を完了するために必要な権限を最初に付与する必要があります。
-
どのリンク作成オプションを使用するかを検討する必要があります。
-
Workload Factoryには、FSx for ONTAPファイルシステムが少なくとも1つ必要です。FSx for ONTAPファイルシステムを検出または作成するには、FSx for ONTAPインスタンスに対する権限を持つAWSアカウントと"ワークロードファクトリにクレデンシャルを追加"ストレージ管理用の 読み取り専用 または 読み取り/書き込み 権限を持ちます。
-
リンク接続のために、FSx for ONTAP ファイル システムに関連付けられたセキュリティ グループで次のポートが開いている必要があります。
-
ワークロードファクトリーコンソールの場合: ポート 443 (HTTPS)
-
CloudShellの場合: ポート22(SSH)
-
-
CloudFormationスタックを使用してリンクを追加する場合は、AWSアカウントで次の権限が必要です。
Details
"cloudformation:GetTemplateSummary", "cloudformation:CreateStack", "cloudformation:DeleteStack", "cloudformation:DescribeStacks", "cloudformation:ListStacks", "cloudformation:DescribeStackEvents", "cloudformation:ListStackResources", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "ec2:DescribeVpcs", "iam:ListRoles", "iam:GetRolePolicy", "iam:GetRole", "iam:DeleteRolePolicy", "iam:CreateRole", "iam:DetachRolePolicy", "iam:PassRole", "iam:PutRolePolicy", "iam:DeleteRole", "iam:AttachRolePolicy", "lambda:AddPermission", "lambda:RemovePermission", "lambda:InvokeFunction", "lambda:GetFunction", "lambda:CreateFunction", "lambda:DeleteFunction", "lambda:TagResource", "codestar-connections:GetSyncConfiguration", "ecr:BatchGetImage", "ecr:GetDownloadUrlForLayer"
CloudFormationを使用して、ワークロードファクトリ内のリンクを自動的に作成して登録します。
-
いずれかを使用してログインし"コンソールエクスペリエンス"ます。
-
[Storage]で、*[Go to storage inventory]*を選択します。
-
[FSx for ONTAP ]タブで、リンクを関連付けるファイルシステムの3ドットメニューを選択し、[Associate link]*を選択します。
-
[リンクの関連付け]ダイアログで、[新しいリンクの作成]*を選択し、[続行]*を選択します。
-
[Create Link]ページで、次の情報を指定します。
-
リンク名:このリンクに使用する名前を入力します。名前はアカウント内で一意である必要があります。
-
* AWS Secrets Manager *:オプション。Workload FactoryがAWS Secrets ManagerからFSx for ONTAPアクセスクレデンシャルを取得できるようにします。
リンク デプロイメント スタックは、次のデフォルトのシークレット マネージャー ARN 正規表現を Lambda アクセス許可ポリシーに自動的に追加します。
arn:aws:secretsmanager:<link_deployment_region>:<link_deployment_account_id>:secret:FSxSecret*
。デフォルトの権限に合わせてシークレットを作成するか、リンクポリシーにカスタムの権限を割り当てることができます。
-
VPCプライベートエンドポイントをAWS Secrets Managerに設定*はデフォルトで無効になっています。このオプションを選択すると、シークレットはローカルではなくVPCプライベートエンドポイントを使用して格納されます。
-
-
リンクの権限: リンクの権限について、次のいずれかのオプションを選択します。
-
自動: このオプションを選択すると、AWS CloudFormation コードによって Lambda アクセス許可ポリシーと実行ロールが自動的に作成されます。
-
ユーザー指定: 指定したLambda実行ロールとそれに紐付けられたポリシーをLambdaリンクに割り当てるには、このオプションを選択します。Lambdaには以下の権限が必要です。
secretsmanager:GetSecretValue
AWS Secrets Manager を有効にした場合にのみ、権限が必要です。"ec2:CreateNetworkInterface", "ec2:DescribeNetworkInterfaces", "ec2:DeleteNetworkInterface", "ec2:AssignPrivateIpAddresses", "ec2:UnassignPrivateIpAddresses", "secretsmanager:GetSecretValue"
テキストボックスに Lambda 実行ロール ARN を入力します。
-
-
タグ:必要に応じて、リソースをより簡単に分類できるように、このリンクに関連付けるタグを追加します。たとえば、FSx for ONTAPファイルシステムでこのリンクが使用されていることを示すタグを追加できます。
ワークロードファクトリーは、FSx for ONTAPファイルシステムに基づいて、AWS アカウント、場所、セキュリティグループを自動的に取得します。
-
-
「 * Create * 」を選択します。
「CloudFormation にリダイレクト」ダイアログが表示され、AWS CloudFormation サービスからリンクを作成する方法が説明されます。
-
[続行]*を選択してAWS管理コンソールを開き、このFSx for ONTAPファイルシステムのAWSアカウントにログインします。
-
[Quick create stack]ページの[Capabilities]で、*[I acknowledge that AWS CloudFormation might create IAM resources]*を選択します。
CloudFormationテンプレートを起動すると、Lambdaに3つの権限が付与されます。Workload Factoryでは、リンクの使用時にこれらの権限が使用さ
"lambda:InvokeFunction", "lambda:GetFunction", "lambda:UpdateFunctionCode"
-
を選択し、[続行]*を選択します。
リンク作成ステータスはイベント ページで監視できます。これには 5 分もかかりません。
-
ワークロードファクトリのインターフェイスに戻ると、リンクがFSx for ONTAPファイルシステムに関連付けられていることがわかります。
Codebox の 2 つの Infrastructure-as-Code (IaC) ツール、CloudFormation または Terraform を使用してリンクを作成できます。このオプションを使用すると、AWS CloudFormation からリンクの ARN を抽出し、ここで報告します。ワークロード ファクトリーがリンクを手動で登録します。
-
いずれかを使用してログインし"コンソールエクスペリエンス"ます。
-
[Storage]で、*[Go to storage inventory]*を選択します。
-
[FSx for ONTAP ]タブで、リンクを関連付けるファイルシステムの3ドットメニューを選択し、[Associate link]*を選択します。
-
[リンクの関連付け]ダイアログで、[新しいリンクの作成]*を選択し、[続行]*を選択します。
-
[リンクの作成] ページで、コードボックスから CloudFormation または Terraform を選択し、次の情報を入力します。
-
リンク名:このリンクに使用する名前を入力します。名前はアカウント内で一意である必要があります。
-
* AWS Secrets Manager *:オプション。Workload FactoryがAWS Secrets ManagerからFSx for ONTAPアクセスクレデンシャルを取得できるようにします。
リンク デプロイメント スタックは、次のデフォルトのシークレット マネージャー ARN 正規表現を Lambda アクセス許可ポリシーに自動的に追加します。
arn:aws:secretsmanager:<link_deployment_region>:<link_deployment_account_id>:secret:FSxSecret*
。デフォルトの権限に合わせてシークレットを作成するか、リンクポリシーにカスタムの権限を割り当てることができます。
-
VPCプライベートエンドポイントをAWS Secrets Managerに設定*はデフォルトで無効になっています。このオプションを選択すると、シークレットはローカルではなくVPCプライベートエンドポイントを使用して格納されます。
-
-
リンクの権限: リンクの権限について、次のいずれかのオプションを選択します。
-
自動: このオプションを選択すると、AWS CloudFormation コードによって Lambda アクセス許可ポリシーと実行ロールが自動的に作成されます。
-
ユーザー指定: 指定したLambda実行ロールとそれに紐付けられたポリシーをLambdaリンクに割り当てるには、このオプションを選択します。Lambdaには以下の権限が必要です。
secretsmanager:GetSecretValue
AWS Secrets Manager を有効にした場合にのみ、権限が必要です。"ec2:CreateNetworkInterface", "ec2:DescribeNetworkInterfaces", "ec2:DeleteNetworkInterface", "ec2:AssignPrivateIpAddresses", "ec2:UnassignPrivateIpAddresses" "secretsmanager:GetSecretValue"
テキストボックスに Lambda 実行ロール ARN を入力します。
-
-
タグ:必要に応じて、リソースをより簡単に分類できるように、このリンクに関連付けるタグを追加します。たとえば、FSx for ONTAPファイルシステムでこのリンクが使用されていることを示すタグを追加できます。
-
リンクの登録: リンクの登録方法については、CloudFormation または Terraform を選択し、指示に従います。
CloudFormationテンプレートを起動すると、Lambdaに3つの権限が付与されます。Workload Factoryでは、リンクの使用時にこれらの権限が使用さ
"lambda:InvokeFunction", "lambda:GetFunction", "lambda:UpdateFunctionCode"
+ スタックが正常に作成されたら、テキストボックスにLambda ARNを貼り付けます。
-
ワークロードファクトリーは、FSx for ONTAPファイルシステムに基づいて、AWS アカウント、場所、セキュリティグループを自動的に取得します。
-
-
「 * Create * 」を選択します。
リンク作成ステータスはイベント ページで監視できます。これには 5 分もかかりません。
-
ワークロードファクトリのインターフェイスに戻ると、リンクがFSx for ONTAPファイルシステムに関連付けられていることがわかります。
ワークロード ファクトリーは、リンクを FSx for ONTAPファイル システムに関連付けます。高度なONTAP操作を実行できます。
既存のリンクをFSx for ONTAPファイルシステムに関連付ける
リンクを作成したら、1つ以上のFSx for ONTAPファイルシステムに関連付けます。
-
いずれかを使用してログインし"コンソールエクスペリエンス"ます。
-
[Storage]で、*[Go to storage inventory]*を選択します。
-
[FSx for ONTAP ]タブで、リンクを関連付けるファイルシステムの3ドットメニューを選択し、[Associate link]*を選択します。
-
[リンクの関連付け]ページで*を選択し、リンクを選択して[続行]*を選択します。
-
認証モードを選択します。
-
Workload Factory:パスワードを2回入力します。
-
AWS Secrets Manager:シークレットARNを入力します。
filesystemID はオプションですが、シークレット ARN に次の有効なキー ペアが含まれていることを確認します。
-
filesystemID = FSx_filesystem_id (オプション)
-
ユーザー = FSx_user
-
password = user_password
AWS Secrets Manager を使用した認証には、指定した FSx_user または FSx for ONTAPファイルシステムで作成された別のユーザーが必要です。デフォルトのユーザーは `fsxadmin`ユーザーを指定しない場合は、
-
-
-
* 適用 * を選択します。
リンクはFSx for ONTAPファイルシステムに関連付けられています。高度なONTAP処理を実行できます。
AWS Secrets Managerのリンク認証に関する問題のトラブルシューティング
- 問題
-
リンクにシークレットを取得する権限がありません。
解決策:リンクがアクティブになった後に権限を追加します。AWSコンソールにログインし、Lambdaリンクを見つけて、添付されている権限ポリシーを編集します。
- 問題
-
その秘密は見つからない。
解決策:正しいシークレットARNを指定します。
- 問題
-
その秘密は正しい形式ではない。
解決方法:AWS Secrets Managerに移動して形式を編集します。
シークレットには、次のキー有効なペアが含まれている必要があります。
-
filesystemID = fsx_filesystem_id
-
ユーザー名 = FSx_user
-
password = user_password
-
- 問題
-
シークレットに、ファイルシステム認証用の有効なONTAPクレデンシャルが含まれていません。
解決方法:AWS Secrets ManagerでFSx for ONTAPファイルシステムを認証するためのクレデンシャルを指定します。