デプロイワークフロー
15 minutes初回デプロイ
パイプラインの設定が完了したので、最初のSmart Agentデプロイを実行してみましょう。
ステップ1: パイプラインに移動
- Jenkins Dashboard に移動します
- Deploy-Smart-Agent パイプラインをクリックします
ステップ2: パラメータを指定してビルド
左サイドバーの Build with Parameters をクリックします
デフォルトパラメータを確認します:
- SMARTAGENT_ZIP_PATH: パスが正しいことを確認します
- REMOTE_INSTALL_DIR:
/opt/appdynamics/appdsmartagent - APPD_USER:
ubuntu(または使用するSSHユーザー) - APPD_GROUP:
ubuntu - SSH_PORT:
22 - AGENT_NAME:
smartagent - LOG_LEVEL:
DEBUG
必要に応じてパラメータを調整します
Build をクリックします
ヒント
初回デプロイでは、IPアドレスが1つだけの別の認証情報を作成して、単一ホストでテストすることを検討してください。
ステップ3: パイプラインの実行を監視
Build をクリックすると、以下が表示されます:
- Build added to queue - Build Historyにビルド番号が表示されます
- ビルド番号をクリック します(例: #1)
- Console Output をクリックしてリアルタイムのログを表示します
ステップ4: コンソール出力の理解
コンソール出力にはデプロイの各ステージが表示されます:
表示される主要なステージ:
- Preparation - ホストリストの読み込みと検証
- Extract Smart Agent - ZIPファイルの展開
- Configure Smart Agent - config.iniの作成
- Deploy to Remote Hosts - 各ホストへのデプロイ
- Verify Installation - Smart Agentの状態確認
ステップ5: 結果の確認
完了後、以下のいずれかが表示されます:
成功:
部分的な成功:
失敗:
インストールの検証
デプロイが成功したら、ターゲットホストでSmart Agentが稼働していることを確認します。
Smart Agent の状態確認
ターゲットホストにSSH接続して状態を確認します:
期待される出力:
インストール済みエージェントの一覧表示
期待される出力:
ログの確認
AppDynamics Controllerへの接続成功メッセージを確認します。
AppDynamics Controller での確認
- AppDynamics Controllerにログインします
- Servers → Servers に移動します
- 新しくデプロイされたホストを探します
- Smart AgentがMetricをレポートしていることを確認します
追加エージェントのインストール
Smart Agentがデプロイされたら、他のパイプラインを使用して特定のエージェントタイプをインストールできます。
Machine Agent のインストール
- Install-Machine-Agent パイプラインに移動します
- Build with Parameters をクリックします
- パラメータを確認します:
- AGENT_NAME:
machine-agent - SSH_PORT:
22
- AGENT_NAME:
- Build をクリックします
パイプラインは各ホストにSSH接続して以下を実行します:
Database Agent のインストール
- Install-Database-Agent パイプラインに移動します
- Build with Parameters をクリックします
- データベース接続パラメータを設定します
- Build をクリックします
パイプラインはすべてのホストにDatabase Agentをインストールして設定します。
エージェントインストールの確認
エージェントのインストール後、表示されることを確認します:
期待される出力:
一般的なデプロイシナリオ
シナリオ1: 初回デプロイ
ワークフロー:
- Deploy-Smart-Agent パイプラインを実行します
- 完了を待って検証します
- 必要に応じて Install-Machine-Agent を実行します
- 必要に応じて Install-Database-Agent を実行します
シナリオ2: Smart Agent のアップデート
Smart Agentを新しいバージョンにアップデートするには:
- 新しいSmart Agent ZIPをダウンロードします
- 設定済みのパスにJenkinsに配置します
- Deploy-Smart-Agent パイプラインを再度実行します
パイプラインは自動的に以下を行います:
- 既存のSmart Agentを停止
- 古いファイルを削除
- 新しいバージョンをインストール
- Smart Agentを再起動
シナリオ3: 新しいホストの追加
Smart Agentを新しいホストに追加するには:
- Jenkinsの
deployment-hosts認証情報を更新します - 新しいIPアドレスを追加します(1行に1つ)
- Deploy-Smart-Agent パイプラインを実行します
パイプラインは以下を行います:
- 設定済みのホストをスキップします(冪等性がある場合)
- 新しいホストにのみデプロイします
シナリオ4: 完全な削除
すべてのホストからSmart Agentを完全に削除するには:
- Cleanup-All-Agents パイプラインに移動します
- Build with Parameters をクリックします
CONFIRM_CLEANUPチェックボックスに チェックを入れます- Build をクリックします
細部
これにより、すべてのホストから /opt/appdynamics/appdsmartagent ディレクトリが完全に削除されます。この操作は元に戻せません。
デプロイのトラブルシューティング
Preparation ステージでビルドが失敗する
症状: ホストリストの読み込み時にパイプラインが失敗する
原因: deployment-hosts 認証情報が見つからないか、正しくない
解決策:
- Manage Jenkins → Credentials に移動します
deployment-hosts認証情報が存在することを確認します- フォーマットを確認します(1行に1つのIP、カンマなし)
- 末尾にスペースがないことを確認します
SSH 接続の失敗
症状:「Permission denied」または「Connection refused」エラーが発生する
解決策:
セキュリティグループの確認:
SSH の手動テスト:
SSH 鍵の確認:
ssh-private-key認証情報が正しいことを確認します- ターゲットホストの
~/.ssh/authorized_keysに公開鍵があることを確認します
Smart Agent が起動しない
症状: デプロイは完了するがSmart Agentが稼働していない
解決策:
ターゲットホストのログを確認:
よくある問題:
- 無効なアクセスキー:
account-access-key認証情報を確認します - ネットワーク接続: Controllerへの送信HTTPS接続を確認します
- 権限の問題: APPD_USERに正しい権限があることを確認します
デプロイの部分的な成功
症状: 一部のホストは成功するが、他のホストは失敗する
解決策:
- Console Output を確認 します - どのホストが失敗したかを特定します
- 失敗したホストを調査 します - SSHで接続して手動でテストします
- パイプラインを再実行 します - Jenkinsがリトライが必要なホストを追跡します
パイプラインのベストプラクティス
1. まず単一ホストでテスト
本番環境にデプロイする前に、必ず単一ホストで新しい設定をテストします:
2. 説明的なビルド説明を使用
ビルドをトリガーした後、説明を追加します:
- ビルドページに移動します
- Edit Build Information をクリックします
- 説明を追加します:「本番環境デプロイ - 2024年第4四半期」
3. ビルド履歴の監視
ビルド履歴を定期的にチェックしてパターンを確認します:
- 失敗したビルド
- 所要時間の傾向
- エラーメッセージ
4. メンテナンスウィンドウ中にデプロイをスケジュール
本番システムの場合:
- Jenkinsのスケジュールビルドを使用します
- トラフィックの少ない時間帯にデプロイします
- ロールバック計画を準備しておきます
5. 認証情報を最新に保つ
- SSH鍵を四半期ごとにローテーションします
- インフラストラクチャの変更に合わせてホストリストを更新します
- AppDynamicsアクセスキーの有効性を確認します
次のステップ
大規模デプロイのスケーリングと運用上の考慮事項について見ていきましょう。