AWS Lambda ディスカバリー

  • リリースバージョン: Washingtondc
  • 更新日 2024年02月01日
  • 読む7読むのに数分
  • 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 Cloud Provisioning and Governance ドキュメントの「ポリシーを使用した AWS アクセスおよび権限の制御」を参照してください。
    資格情報が設定されている AWS サービスアカウント
    適切な AWS 資格情報を使用して、サービスアカウントを設定する必要があります。サービスアカウントフォームから Discovery を実行できます。

    製品ドキュメントで ディスカバリー および サービスマッピング のサービスアカウントを参照してください。

    サービスアカウント
    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から Discovery and Service Mapping Patterns をダウンロードします。
    MID Server
    MID サーバー をインストールするときに、ServiceNow ドキュメントサイトで公開されている「MID Server システムの要件」をホストマシンが満たしているか、超過しているかを確認します。

    水平検出中に ディスカバリー によって収集されるデータ

    水平検出では、次のデータを CMDB に入力します。
    テーブルとフィールド 説明
    クラウド関数 [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 関係

    以下の関係は、AWS Lambda ディスカバリーをサポートするために作成されています。
    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 Lambda のトップダウン検出を実行します。AWS Lambda の発信接続を検出します。
    • 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 サーバー に対してこのパラメーターの値を増やします。