AWS のElastic Beanstalkにホストエージェントをインストールする

AWS のElastic Beanstalk環境に Instana ホストエージェントをインストールし、その環境で実行されている JVM アプリケーションを監視およびトレースします。

AWS のElastic Beanstalkにエージェントをインストールおよび設定する方法については、以下のセクションを参照してください:

インストールする前に

AWS のElastic Beanstalkに Instana エージェントをインストールする前に、以下のガイドラインを確認してください:

  • 本番環境では、または largerm5.large インスタンス型を使用してください。 デフォルトの t3.micro インスタンスでは、リソース不足の問題が発生する可能性があります。

  • Instana エージェントに対して、適切なネットワーク接続(送信通信)を設定してください。 詳細については、 「アウトバウンドのネットワークアクセス要件」 を参照してください。

環境の準備

環境の準備として、以下の手順を実行してください:

  1. AWS Cloud Shell にアクセスし、以下のコマンドを実行して Elastic Beanstalk CLI (EBCLI) をインストールします:

    git clone https://github.com/aws/aws-elastic-beanstalk-cli-setup.git
    
    pip install virtualenv
    
    python ./aws-elastic-beanstalk-cli-setup/scripts/ebcli_installer.py
    
  2. 次のコマンドを実行して、EBCLI実行ファイルへのパスをファイル ~/.bashrc に追加します:

    echo 'export PATH="/home/cloudshell-user/.ebcli-virtual-env/executables:$PATH"' >> ~/.bashrc
    
  3. 次のコマンドを実行して、現在のBashセッションを更新してください:

    source ~/.bashrc
    
  4. 次のコマンドを実行して、EBCLIのインストール状況を確認してください:

    eb --version
    

サンプルアプリケーションの作成

Tomcatのサンプルアプリケーションを準備するには、まずサンプルアプリケーションをダウンロードしてください。 次に、アプリケーションに Instana エージェントの設定を追加します。

サンプルアプリケーションのダウンロード

  1. 次のコマンドを実行して、作業ディレクトリを作成してください:

    mkdir -p eb-tomcat1
    cd eb-tomcat1
    
  2. 次のコマンドを実行して、Tomcatのサンプルアプリケーションをダウンロードしてください:

    wget https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/samples/tomcat.zip
    unzip tomcat.zip
    

Instana エージェントの設定を追加する

  1. 次のコマンドを実行して .ebextensions ディレクトリを作成します:

    mkdir -p .ebextensions
    
  2. エージェント設定ファイルを作成し、ワンライナースクリプトを使用して Instana エージェントをインストールするように設定します。 以下の例を参照してください。

    cat > .ebextensions/instana-agent.config << 'EOF'
    commands:
      01_install_instana:
        command: |
          curl -o setup.sh https://setup.instana.io/agent && chmod +x setup.sh && ./setup.sh -a <INSTANA_AGENT_KEY> -t dynamic
    EOF
    

    <INSTANA_AGENT_KEY> を、ご自身の Instana エージェントキーに置き換えてください。

このワンライナースクリプトは、 Instana エージェントをインストールして設定します。

その後、コマンドまたは eb initAWS コンソールを使用して、Elastic Beanstalk環境を作成および初期化できます。

注:Amazon Linux 2023 を使用する場合は、 GP3 のディスク構成も指定する必要があります。 以下の例を参照してください:cat >. ebextensions/storage.config << 'EOF' option_settings: aws:autoscaling:launchconfiguration: RootVolumeType: gp3 EOF 環境変数を設定する場合は、次のコマンドを使用してください:cat >. ebextensions/environment.config << 'EOF' option_settings: aws:elasticbeanstalk:application:environment: SERVICE_NAME: "beanstalk-tomcat" EOF

エージェントのインストールを確認する

エージェントのインストールが完了したら、インストールが正常に行われたことを確認し、 ログを確認してください

  1. エージェントのインストール状況を確認するには、まず次のコマンドを実行して EC2 インスタンスに接続します:

    eb ssh
    
  2. 次のコマンドを実行して、エージェントのステータスを確認してください:

    sudo systemctl status instana-agent
    

以下の回答例をご覧ください:

```bash {: codeblock}
● instana-agent.service - "Instana(tm) agent."
    Loaded: loaded (/usr/lib/systemd/system/instana-agent.service; enabled; preset: disabled)
    Drop-In: /etc/systemd/system/instana-agent.service.d
            └─agent-custom-start.conf, custom-environment.conf
    Active: active (running) since Thu 2025-03-06 16:06:29 UTC; 7s ago
  Main PID: 3675 (java)
      Tasks: 28 (limit: 9245)
    Memory: 170.3M
```

また、 Instana のUIで「インフラストラクチャ」マップを開き、トレースを確認することで、エージェントの状態を確認することもできます。

ログの確認

エージェントのログファイルを確認するには、次のコマンドを実行してください:

```bash {: codeblock}
cd /opt/instana/agent/data/log/

cat agent.log
```

ログを消去して最新のエントリのみを表示するには、次のコマンドを実行してください:

```bash {: codeblock}
sudo systemctl stop instana-agent

sudo rm agent.log

sudo systemctl start instana-agent
```

Instana エージェントの設定を変更する

環境を設定し、 Instana エージェントをインストールした後、以下の手順を実行することで、エージェントの設定をさらに変更できます:

  1. AWS ( Cloud Shell )で、 Instana の設定ディレクトリを開きます。 以下の例を参照してください。

    cd /opt/instana/agent/etc/instana/
    
  2. 次のコマンドを実行して設定を確認してください:

    ls -la
    
  3. 次のコマンドを実行して、設定ファイルを編集してください:

    sudo vi configuration.yaml
    
  4. 変更を適用するには、次のコマンドを実行してエージェントを再起動してください:

    sudo systemctl restart instana-agent
    

エージェントのインストールに関するトラブルシューティング

エージェントのインストールに失敗した場合は、ログメッセージやトラブルシューティングのヒントを確認してください。 ホストエージェントのトラブルシューティングに関する詳細については、 「トラブルシューティング」 を参照してください。

AWS のElastic Beanstalkにおける Instana エージェントのインストールでよく見られる問題とその解決策については、以下のイシューをご覧ください:

エージェント接続

エージェントの接続に問題がある場合は、以下の方法を試してみてください:

  • Instana エージェントのキーが正しいかどうかを確認してください。

  • EC2 インスタンスから Instana バックエンドへの接続を確認してください。

  • セキュリティグループの設定を確認してください。

Java アプリケーションのトレース

Java のアプリケーショントレーシングに問題がある場合は、以下の方法を試してみてください:

  • Java センサーが有効になっていることを確認してください。

  • Java のバージョン互換性を確認してください。