重要
Agent Control と New Relic Control が Kubernetes で一般提供されました。Linux ホストと Windows ホストのサポートも、弊社のプレリリース ポリシーに従ってパブリック プレビュープログラムで提供されます。
概要
Agent Controlアップデートを含むエージェントのライフサイクル全体をシームレスかつ一元的に管理できる方法を提供します。 各ホストまたはクラスタ上のエージェントを手動で更新する代わりに、Fleet Controlで希望する状態を定義するだけで、Agent Controlが残りの処理を自動的に行います。
Agent Controlとそれが管理するエージェントの更新プロセスは、無停止で自動化されるように設計されています。
New Relic Control を使用したアップデートプロセスの主なメリット
- 集中管理: フリート全体のすべてのエージェント バージョンを 1 つの場所から管理します。
- 非中断型:ダウンタイムを回避するため、ローリングアップデート戦略を用いてアップデートを実施します。
- 自動化: 新しいバージョンを定義すると、デプロイメントと調整プロセス全体が自動的に処理されます。
- 回復力: システムは失敗した更新に対して回復力を持つように設計されており、問題が発生した場合には最後の既知の正常な状態にフォールバックできます。
管理対象エージェントの更新
Agent Controlで管理されているエージェントは、Fleet Control内のリモート設定でバージョンを変更するだけで簡単にアップデートできます。この宣言型アプローチにより、車両全体にわたって一貫性と信頼性が確保されます。
- 設定を編集する: Fleet Controlでフリートの設定に移動します。
- バージョンを更新する:更新するエージェント (例:
infrastructure) を見つけて、chart_version値を新しいバージョン番号に変更します。 - 変更をデプロイする:更新された設定を保存してデプロイします。
Agent Controlは変更を自動的に検知し、中断のないローリングアップデートを実行します。これにより、古いエージェントを置き換える前に、新しいエージェントが正常に動作していることを確認します。
例: New Relicインフラストラクチャ エージェントのアップグレード
この例では、インフラストラクチャエージェントを新しいバージョンにアップグレードする方法を示します。
$# Remote configuration for a single agent$chart_version: "5.0.109" # Change this value$chart_values:$ newrelic-infrastructure:$ enableProcessMetrics: trueAgent Controlアップグレード
Kubernetes
次の手順は、 Kubernetesクラスタ上で実行されているAgent Controlに適用されます。
Agent Controlリモートで自身を更新できます。 これにより、クラスター上で実行されているスーパーバイザーが常に最新の機能、パフォーマンスの向上、セキュリティ パッチを適用した最新の状態になります。
Agent Controlスーパーバイザを更新するプロセスは、他の管理対象エージェントの場合と同じです。設定で新しいバージョンを指定し、 Fleet Controlからの変更をデプロイします。
- Agent Control設定を編集する: Fleet Controlで、 Agent Control自体の設定にアクセスします。
chart_version更新します:chart_version新しい目的のバージョンに変更します。- 変更をデプロイする: 設定を保存してデプロイします。
このプロセスにより、クラスタ上のAgent Controlのローリング更新がトリガーされます。 Kubernetesに組み込まれているヘルスチェック機能により、古いバージョンが終了する前に新しいバージョンが正常に動作していることが確認され、中断のないアップグレードが実現します。
Linuxホスト
$sudo apt-get update && sudo apt-get install --only-upgrade newrelic-agent-control -y$sudo zypper -n update newrelic-agent-control$sudo yum update newrelic-agent-control -yWindowsホスト
Windows上のAgent Control 、ガイド付きインストールで提供されるインストール スクリプトを再実行することによってアップグレードされます。 このスクリプトは最新バージョンをダウンロードし、既存の実行ファイルを置き換えますが、設定ファイルは保持します。
アドミニストレーター権限で PowerShell を開きます。
新しいバージョンのガイド付きインストールからインストレーション スクリプトを実行します。
サービスの状態を確認して、アップグレードが正しく行われたことを検証してください。
Get-Service -Name newrelic-agent-controlInvoke-WebRequest -Uri "http://localhost:51200/status" -UseBasicParsing
管理対象エージェント (インフラストラクチャエージェント、NRDOT) は、他のプラットフォームと同じ方法でFleet Controlを通じてアップグレードされます。フリート設定で必要なエージェントのバージョンを更新し、変更をデプロイします。
Agent Control起動、停止、再起動
Agent Controlインストレーション スクリプトの実行後に自動的に開始されます。
Linux
Linuxの場合は、initシステムに適したコマンドを使用していることを確認してください。該当するstatus stop start restart選択してください。
systemdの例を以下に示します。
$sudo systemctl <start|stop|restart|status> newrelic-agent-controlウィンドウズ
PowerShell でアドミニストレーター権限を使用して次のコマンドを実行します。
Start-Service -Name newrelic-agent-controlStop-Service -Name newrelic-agent-controlRestart-Service -Name newrelic-agent-controlGet-Service -Name newrelic-agent-control