AWS パターンによる Lambda ディスカバリー
ServiceNow ディスカバリー と サービスマッピング の各アプリケーションでは、AWS クラウドで実行される Lambda 関数を検索しマッピングできます。 これらのリソースを検出するには、ServiceNow Storeからディスカバリーとサービスマッピングパターンアプリケーションを更新する必要があります。
ディスカバリー および サービスマッピング は、Amazon AWS Lambda パターンを使用して、水平ディスカバリーとトップダウンディスカバリーを実行します。クラウドディスカバリーを実行すると、インスタンスが、必要な認証情報を使用して AWS サービスアカウントを照会し、クエリを実行して Lambda 情報を取得します。パターンでは、この情報が解析され、CMDB に保存されます。
このパターンを ServiceNow プラットフォームで使用するには、Jakarta パッチ 10、Kingston パッチ 8、または London パッチ 1 を使用します。
ストアでアプリを要求する
ServiceNow Store Web サイトにアクセスして利用可能なすべてのアプリを表示し、ストアにリクエストを送信する方法について確認してください。リリースされたすべてのアプリのリリースノート情報については、「ServiceNow Storeバージョン履歴のリリースノート」を参照してください。
必須条件
- 更新セット
- Jakarta または Istanbul バージョンのインスタンスの場合は、「KB0679927:AWS Lambda トップダウンディスカバリー更新セット (AWS Lambda top-down discovery update set)」で用意されている更新セットをインポートします。サービスマッピング には、この更新セットが必要です。
- AWS ユーザーのユーザーポリシー
- Amazon Web サービス (AWS) プラットフォームで Identity and Access Management (IAM) を使用してユーザーを管理する場合は、AWS ユーザーのユーザーポリシーが作成されていることを確認します。詳細については、ServiceNow クラウドプロビジョニングとガバナンス ドキュメントの「ポリシーを使用した AWS アクセスおよび権限の制御」を参照してください。
- 認証情報が設定されている AWS サービスアカウント
- 適切な AWS 認証情報を使用して、サービスアカウントを設定する必要があります。サービスアカウントフォームからディスカバリーを実行できます。
製品ドキュメントで ディスカバリー および サービスマッピング のサービスアカウントを参照してください。
- サービスアカウント
- ServiceNow プラットフォームで、サービスアカウントを作成します。アカウント ID を、AWS Lambda が属する Amazon アカウント ID に設定します。AWS マネジメントコンソールに表示されるアカウント ID を使用します。必ず、検出しようとしているサービスアカウントの一部である仮想マシンに MID サーバー を配置します。
- 水平ディスカバリーを使用した論理データセンターの検出
- クラウドサービスアカウントフォームの [関連リンク] の下にある [データセンターを検出] をクリックします。
- ユーザー権限
- リソースに arn:aws:lambda:region:account-id:function:function-name を指定して ListFunctions API を実行する権限をユーザーに付与します。リソースに '*' を指定して GetFunction API を実行する権限をユーザーに付与します。
- Amazon リソースネーム (ARN)
- (エントリーポイントとして ARN を使用するアプリケーションサービスの場合はオプション) 検出する必要がある AWS Lambda の ARN がわかっていることを確認します。ARN は、Amazon Web サービスのリソース識別子として機能します。
- ホスト
- Jakarta または Istanbul バージョンのインスタンスの場合は、127.0.0.1 のホストを使用します。
- クラウドディスカバリー
- クラウドディスカバリーについては、ServiceNow Storeからディスカバリーとサービスマッピングパターンをダウンロードしてください。
- MID サーバー
- MID サーバー をインストールするときに、ServiceNow ドキュメントサイトで公開されている「MID サーバーシステムの要件」をホストマシンが満たしているか、超過しているかを確認します。
REST API 権限を確認する
をダウンロードする クラウドディスカバリー パターンスプレッドシート そのため、 ディスカバリー パターンの実行に必要なユーザー権限を付与できます。スプレッドシートには、権限に加えて、パターン名、タイプ、CI クラス、ベンダードキュメントへのリンクなどの有用な情報も含まれています。新しいパターンは四半期ごとに提供されるため、定期的にチェックして、スプレッドシートが最新バージョンであることを確認してください。
水平ディスカバリー中に ディスカバリー によって収集されるデータ
| テーブルとフィールド | 説明 |
|---|---|
| クラウド関数 [cmdb_ci_cloud_function] | |
| 名前 [name] | 関数の名前。 |
| オブジェクト ID [object_id] | AWS Lamdba 関数の ID (Amazon リソースネーム)。例:arn:aws:lambda:{datacenter}1:751200741520:function:{function-name} |
| バージョン [version] | 関数のバージョン。たとえば、 $Latest は公開された最新のバージョンを表します。 |
| 言語 [language] | ランタイム環境、つまり関数が記述されている言語とバージョン (例:JavaScript バージョン 6.10 の場合は Node.js6.10)。 |
| コードの場所の URL [code_location_url] | API Gateway コンソールからビルドした関数の URL。 |
| CodeSha256 [codesha256] | 関数の暗号ハッシュ署名。 |
| コードサイズ [code_size] | 関数コードのサイズ (MB)。 |
| 関数の最終変更日 [function_last_modified] | AWS Lamdba 環境で関数が最後に変更された日付。 |
CI 関係
| CI | 関係 | CI |
|---|---|---|
| クラウド関数 [cmdb_ci_cloud_function] |
Uses:Used by | クラウドデータベース [cmdb_ci_cloud_database] |
| Hosted on:Hosts | AWS データセンター [cmdb_ci_aws_datacenter] AWS データセンターには、アベイラビリティゾーン、サービスアカウントなどの他の AWS CI との関係性があります。製品ドキュメントの AWS と Azure クラウドディスカバリーの箇所を参照してください。 |
|
| Provides:Is provided by | クラウドイベントソース [cmdb_ci_cloud_event_source] この CI には、クラウド関数または API Gateway をトリガーする任意のイベントソースが考えられます。 |
トップダウンディスカバリー中に サービスマッピング によって検出される接続
- AWS API Gateway
- Amazon Relational Database Service (RDS)
- ARN を使用している、現在のリージョン内外の AWS Lambda の別インスタンス
トラブルシューティング
| 症状 | 原因 | ソリューション |
|---|---|---|
| ディスカバリーに失敗しました。ディスカバリーメッセージには、REST タイムアウトによって発生したエラーに関する情報が含まれています。 | 展開で REST コール応答を送信する CI が多数あります。MID サーバー は mid.sa.cloud.request_timeout パラメーターで制御される制限時間を超えずに REST コール応答を処理することはできません。 | デフォルトで、mid.sa.cloud.request_timeout パラメーターは 3 万ミリ秒に設定されています。 関連する MID サーバー に対してこのパラメーターの値を増やし、ディスカバリーを再実行します。 注: 関連する MID サーバー の [設定パラメーター] 関連リストにこのパラメーターが表示されない場合は、追加する必要があります。 |
| デバッグセッション中にパターンデザイナーでエラーが発生しました。パターンデザイナーのメッセージに、タイムアウトによって発生したエラーに関する情報が含まれています。 | パターンデザイナーは、(ディスカバリー時ではなく) パターンデバッグ中のタイムアウトが原因で失敗します。 | デフォルトで、sa.debugger.max_timeout パラメーターは 240 秒に設定されています。 関連する MID サーバー に対してこのパラメーターの値を増やします。 |