ARMS エージェントを手動でインストールし、アプリケーションを Serverless App Engine (SAE) にデプロイすると、Application Real-Time Monitoring Service (ARMS) で Go アプリケーションを監視できるようになります。ARMS では、アプリケーションのトポロジー、呼び出しトレース分析、SQL パフォーマンス分析などの各種監視データを確認できます。このトピックでは、アプリケーション用の ARMS エージェントを手動でインストールし、SAE にデプロイする方法について説明します。
前提条件
Container Registry をアクティブ化し、Enterprise Edition インスタンスまたはPersonal Edition インスタンスを作成していること。
イメージビルド環境がインターネットまたは Alibaba Cloud 内部ネットワークに接続できることを確認してください。ビルド環境のセキュリティグループでは、ポート 8080、9990、80、443 での TCP アウトバウンドトラフィックを許可する必要があります。
ネットワーク環境を確認してください。詳細については、「Go アプリケーション監視のネットワーク設定」をご参照ください。
イメージビルド環境のオペレーティングシステムとアーキテクチャを確認し、Go のバージョンとフレームワークのバージョンをチェックしてください。詳細については、「ARMS Application Monitoring でサポートされる Go コンポーネントとフレームワーク」をご参照ください。
制限事項
この機能は、イメージからデプロイされた Go アプリケーションにのみ適用されます。
操作手順
プロジェクトの準備:このトピックでは、デモプロジェクトを例として使用します。
イメージのビルドと ACR イメージリポジトリへのプッシュ:プロジェクト用のイメージをビルドし、Alibaba Cloud Container Registry (ACR) リポジトリにプッシュします。これにより、SAE でマイクロサービスアプリケーションを作成する際にイメージを利用できるようになります。
アプリケーションの作成:イメージリポジトリからイメージを SAE にデプロイし、アプリケーションにアクセスします。
アプリケーション監視データの確認:アプリケーションが生成するさまざまな監視データを確認します。
ステップ 1: プロジェクトの準備
Go プロジェクトを環境にアップロードします。
ステップ 2: イメージのビルドとイメージリポジトリへのプッシュ
2.1. イメージのビルド
このセクションでは、コンパイルツールのダウンロードとアプリケーションのビルドに関するコマンドのみを提供します。
コンパイルツールをダウンロードします。
# wget コマンドをインストールします。 RUN yum -y install wget # このトピックでは、中国 (杭州) のインターネットエンドポイントからコンパイルツールをダウンロードするコマンドを例として示します。 RUN wget "http://arms-apm-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/instgo/instgo-linux-amd64" -O instgo本番環境では、ビルドマシンのリージョンに基づいてダウンロードエンドポイントを選択する必要があります。ダウンロードエンドポイントの詳細については、「各リージョンのダウンロードコマンド」をご参照ください。
説明コンパイルツールはすべてのリージョンで同じです。環境がインターネット経由で OSS にアクセスできる場合は、中国 (杭州) リージョンのエンドポイントを使用して、オペレーティングシステムとアーキテクチャに対応したコンパイルツールを取得できます。
バイナリファイルに実行権限を追加します。
RUN chmod +x instgogo buildコマンドを./instgo go buildに変更して、アプリケーションをビルドします。RUN ./instgo go build {args1} {args2}コンパイルをテストしたい場合、またはライセンスキーを取得できない場合は、アプリケーションを直接コンパイルできます。
RUN ./instgo go build {args1} {args2}
2.2. イメージリポジトリへのイメージのプッシュ
ビルドした Go イメージを Alibaba Cloud Container Registry (ACR) リポジトリにプッシュします。詳細については、「Enterprise インスタンスを使用したイメージのプッシュとプル」または「イメージのプッシュとプル」をご参照ください。
ステップ 3: Go アプリケーションの作成
このセクションでは、主要なステップのみを説明します。アプリケーションの作成方法の詳細については、「イメージからアプリケーションをデプロイする」をご参照ください。
3.1. アプリケーションの作成
[Specify Image] パネルで、[Technology Stack Programming Language] を Go に設定し、イメージバージョンを選択します。
[My Alibaba Cloud Images] タブをクリックし、[Personal Edition for Container Registry] を選択してから、イメージリストから go-demo-2 をイメージバージョンとして選択します。
[Advanced Settings] ページの [Application Monitoring] セクションで、[Application Monitoring] をオンにします。
[Application Monitoring] を有効にする場合は、ビルドプロセス中に ARMS エージェントを手動でインストールするようにカスタムイメージを変更しておく必要があります。ARMS は、SAE ユーザーに月間 200 GB の無料クォータを提供しています。
[Create Application] をクリックします。
3.2. アクセスのテスト
アプリケーションにインターネット向けエンドポイントを追加します。詳細については、「CLB インスタンスをアプリケーションにアタッチし、アプリケーション用のインターネット向けまたは内部向け IP アドレスを生成する」をご参照ください。
エンドポイントを追加すると、[Internet-facing endpoint] セクションで、関連付けられたインターネット向け CLB インスタンスの IP アドレスとポート (
xxx.xxx.xxx.xxx:2222など) を確認できます。プロトコルはHTTPです。インターネット向けエンドポイントをコピーしてブラウザに貼り付け、アクセスをテストします。
ステップ 4: アプリケーション監視データの確認
ARMS コンソールにログインします。 左側のナビゲーションペインで、を選択します。 アプリケーションリストページで、アプリケーションをクリックしてモニタリングデータを表示します。
SAE コンソールにログオンします。 左側のナビゲーションペインで、を選択します。 アプリケーション名をクリックして、その[基本情報]ページに移動します。 左側のナビゲーションペインで、[アプリケーションモニタリング]をクリックしてモニタリングデータを表示します。
[Application Overview] ページでは、アプリケーションの健全性の概要が表示され、[リクエスト]、[エラー]、[平均応答時間]、[インスタンス数]などのコアメトリクスが前日比および前週比とともに表示されます。このページには、トレンドチャート、[ピーク CPU 使用率] のハニカムチャート、およびキーパフォーマンス指標のトップ 5 ランキングも表示されます。