このドキュメントには、Ansible® のドキュメントへの参照が含まれています。AppDynamics はいかなる権利も所有しておらず、そのようなサードパーティのドキュメントの正確性または完全性について責任を負いません。


次の項では、.Net エージェント MSI の Ansible ロールの使用例を示します。

重要

  1. この Ansible ロールを使用したエージェントのアップグレードでは、以前の .Net エージェント MSI の設定は保持されません。ロールで指定した設定で既存の設定が上書きされます。ロールで設定の詳細が指定されていない場合、デフォルトの最小限の設定が使用されます。
    このロールを実行する前に、すべての重要な設定をバックアップしたことを確認してください。
  2. .Net エージェント MSI のロールバックは、次のシナリオではサポートされていません。
    • .Net エージェント MSI がマシンにインストールされていないか、前の .Net エージェント MSI のインストールがこのロールによって管理されていない場合
    • ロールバックがすでに実行されている場合。1 つ前のバージョンへのロールバックのみがサポートされています

.Net エージェント MSI のインストール

Example 1:以下の基本機能を備えた .Net エージェント MSI のインストールに使用される Ansible® ロール:

  • 最新の .Net エージェントのインストール
  • コントローラ アプリケーション名の自動生成
  • すべての IIS アプリケーションのインストゥルメント化。インストール後に IIS を再起動する必要があります。

このプレイブックには、vars/args.yaml からの、コントローラと通信するためのパラメータが含まれています。

---
- name: .Net Agent MSI Minimal Configuration
  hosts: windows
  tasks:
    - name: Include variables for the controller settings
      # Include all yaml files under the vars directory
      ansible.builtin.include_vars:
        dir: vars
        extensions:
          - 'yaml'
          - 'yml'

    - ansible.builtin.include_role:
        name: appdynamics.agents.dotnet_msi
YML

Example 2:以下の拡張機能を備えた .Net エージェント MSI のインストールに使用される Ansible ロール:

  • .Net エージェントバージョン 22.12.0 のインストール
  • 特定のコントローラ アプリケーション名の定義。設定時にロールで使用されるコントローラ アプリケーション名を指定します。
  • デフォルトの階層名とノード名の有無にかかわらない、特定の IIS アプリケーションのみのインストゥルメント化。インストール後に IIS を再起動する必要があります。
  • デフォルトの階層名とノード名の有無にかかわらない、スタンドアロン アプリケーションのインストゥルメント化。インストール後にスタンドアロン アプリケーションを再起動する必要があります。

以下のプレイブックでは、コントローラと通信するためのパラメータがプレイブック内で定義されています。

---
- name: .Net Agent MSI Extended Configuration
  hosts: windows
  tasks:
    - ansible.builtin.include_role:
        name: appdynamics.agents.dotnet_msi
      vars:
        agent_version: '22.12.0'
        # Your controller details
        controller_host_name: 'something.saas.appdynamics.com'
        controller_port: '443'
        enable_ssl: 'true'
        controller_account_name: 'customer1'
        controller_account_access_key: '123456'
        application_name: 'DotNetAgent_Application'

        monitor_all_IIS_apps: 'false'

        iis_applications:
            # instrument a web application 'PaymentService' under a web site 'Default Web Site'
          - site: 'Default Web Site'
            path: '/PaymentService'
            # default tier: 'site/path'
            # default node: 'host-tier'

            # instrument an entire web site 'BillingWebSite'
          - site: 'BillingWebSite'
            tier_name: 'BillingWebSiteTier'
            node_name: 'BillingWebSiteNode'

        standalone_applications:
            # instrument any execution of a standalone aplication 'login.exe'
          - executable: 'login.exe'
            # default tier: 'executable'
            # default node: 'host-tier'

            # instrument a standalone aplication 'checker.exe' with a specific set of command line arguments
          - executable: 'checker.exe'
            command_line: '-arg1 value1 -flag1'
            tier_name: 'CheckerTier'
            node_name: 'CheckedNode'
YML

.Net エージェントの変数

変数説明使用可能な値必須デフォルト
custom_ad_setup_fileAnsible 制御ノード上のカスタムインストール構成ファイルへのローカルパスを定義します。静的ファイルまたは動的 Jinja テンプレートを使用することができます。システムパスなし
custom_configAnsible 制御ノード上のカスタム config.xml 静的ファイルへのローカルパスを定義します。他の設定よりも優先されます。システムパスなし
enable_tls12コントローラ SSL TLS1.2 接続を有効にします。[truefalse]なしfalse
iis_applicationsモニターする IIS アプリケーションのリスト。これは、アプリケーションに monitor_all_IIS_apps=false またはカスタムの階層名とノード名が必要な場合に役立ちます。「.NET エージェントの構成プロパティ」を参照してください。
なし
iis_application.siteIIS Web サイトの名前。
はい(iis_applications が定義されている場合は IIS アプリケーションごと)
iis_application.pathIIS Web サイトに関連する IIS Web アプリケーションへのパス。パスの先頭には必ず '/' を付けます。パスがない場合、デフォルト値の '/' は、Web サイトの下のすべてのアプリケーションがインストゥルメント化されていることを示します。
なし'/'
iis_application.tier_nameIIS アプリケーションのコントローラ階層名。
なしiis_application.site/iis_application.pathパスが定義されている場合。または iis_application.site
iis_application.node_nameIIS アプリケーションのコントローラノード名。
なしhostname-iis_application.tier_name
monitor_all_IIS_appsすべての IIS アプリケーションのモニタリングを有効にします。[truefalse]なしtrue
restart_app

IIS がシステムにインストールされている場合に、IIS を再起動するには、true に設定します。ただし、このロールでは、インストゥルメンテーションで追加または削除されたスタンドアロン アプリケーションは再起動されません。

エージェントの変更を有効にするには、インストゥルメンテーションで追加または削除されたすべてのアプリケーションを再起動する必要があります。


[truefalse]なしfalse
standalone_applicationsモニターする .Net スタンドアロン アプリケーションのリスト。「.NET エージェントの構成プロパティ」を参照してください。
なし
standalone_application.executableスタンドアロン アプリケーションの実行ファイルの名前(拡張子付きまたは拡張子なし)。
はい(standalone_applications が定義されている場合はスタンドアロン アプリケーションごと)
standalone_application.command_lineモニタリングをアプリケーションの特定の実行に制限する実行ファイルのコマンドライン引数。
なし
standalone_application.tier_nameスタンドアロン アプリケーションのコントローラ階層名。
なしstandalone_application.executable
standalone_application.node_nameスタンドアロン アプリケーションのコントローラノード名。
なしhostname-standalone_application.tier_name

このドキュメントには、Ansible のドキュメントへの参照が含まれています。AppDynamics はいかなる権利も所有しておらず、そのようなサードパーティのドキュメントの正確性または完全性について責任を負いません。

.Net エージェント MSI の環境変数の設定

ansible.windows.win_environment Ansible モジュールを使用して、.Net エージェント MSI の環境変数を設定することができます。次の例では、エージェントがインストールされるシステムで APPDYNAMICS_AGENT_UNIQUE_HOST_ID 環境変数を定義します。詳細については、「Modify environment variables on Windows hosts」を参照してください。

---
- name: .Net Agent MSI Test Play
  hosts: windows
  tasks:
    - name: Include variables for the controller settings
      # Include all yaml files under the vars directory
      ansible.builtin.include_vars:
        dir: vars
        extensions:
          - 'yaml'
          - 'yml'

    - ansible.windows.win_environment:
        state: present
        name: 'APPDYNAMICS_AGENT_UNIQUE_HOST_ID'
        value: '{{ ansible_hostname }}' # can be jinja template like in this example or a static `value` if needed
        level: machine

    - ansible.builtin.include_role:
        name: appdynamics.agents.dotnet_msi
YML

特定の階層/ノードでの .Net エージェント MSI のインストールおよびアップグレード

.Net エージェント MSI は、グローバルなマシンでのインストールを実行します。マシンに異なるバージョンのエージェントをインストールすることはできません。また、マシン上のすべてのアプリケーションは、同じバージョンのエージェントを使用してインストゥルメント化されます

特定の Windows マシンでエージェントを更新するには、Ansible インベントリファイルを作成し、目的のホストでプレイブックを実行します。詳細については、「How to build your inventory」を参照してください。

---
# updating agent version on certain windows machines only
- name: .Net Agent MSI Test Play
 hosts: windows_region_1 # a group 'windows_region_1' should be defined in ansible inventory and lisy all desired machines
 tasks:
   - ansible.builtin.include_role:
       name: appdynamics.agents.dotnet_msi
       vars:
         agent_version: '22.12.0' # or providing custom_config or any other changes to the configuration
YML

マシン内のインストゥルメント化されたアプリケーションのリストを更新するには、ロール設定で目的のアプリケーションを追加または削除して、プレイブックを再実行します。


Ansible® は米国およびその他の国における Red Hat, Inc. の登録商標です。