インストールと使用
DBX for Cloud、DBXCは2つの主要コンポーネントで構成されています。
- dbxc-agent: クラウド指標を監視するバックグラウンドサービス(エージェント)
- dbxc-ctl: エージェントを制御するCLIツール(開始、停止、状態確認、ログ参照)
エージェントのインストール
| OS | アーキテクチャー | パッケージ |
|---|---|---|
| Linux | amd64、arm64 | .tar.gz |
| Windows 10、Windows Server 2016以上 | amd64 | .zip |
- Linux
- Windows
インストールスクリプトがアーキテクチャー(x86_64、aarch64)を検出し、現在のパスのdbxcディレクトリにインストールします。
curl -fsSL https://repo.whatap.io/agent/dbx/cloud/install.sh | bash
cd dbxc
インストール後、dbxcディレクトリにconfig.yamlを作成し、./dbxc-ctl startで実行します。
PowerShellで次のコマンドを実行します。インストールパスはC:\whatap\dbxcを例としています。
# 最新パッケージをダウンロード
Invoke-WebRequest -Uri "https://repo.whatap.io/agent/dbx/cloud/dbxc.latest.windows-amd64.zip" -OutFile "$env:TEMP\dbxc.zip"
# 解凍後、インストールパスにコピー
Expand-Archive -Path "$env:TEMP\dbxc.zip" -DestinationPath "$env:TEMP\dbxc" -Force
New-Item -ItemType Directory -Force -Path "C:\whatap\dbxc" | Out-Null
Copy-Item "$env:TEMP\dbxc\*\*.exe" "C:\whatap\dbxc\" -Force
cd C:\whatap\dbxc
.\dbxc-ctl.exe version
インストールパスにdbxc-agent.exeとdbxc-ctl.exeがあれば完了です。インターネットに接続できないサーバーの場合は、別のPCでzipファイルをダウンロードして移した後、2つのファイルをインストールパスにコピーします。インストールパスにconfig.yamlを作成し、エージェントを実行します。
.\dbxc-ctl.exe start -c config.yaml
.\dbxc-ctl.exe status
-
0.5.13以上のバージョンを使用してください。以前のバージョンではWindowsで
dbxc-ctl startが失敗します。 -
メモ帳でconfig.yamlを作成する場合は、ファイルの種類をすべてのファイルに変更して保存します。そのまま保存するとconfig.yaml.txtになります。
-
AWS EC2ではないサーバーでは、エージェントを実行するアカウントの
%USERPROFILE%\.aws\credentialsにAWS認証情報を設定します。 -
Windowsサービスとして登録されないため、サーバーを再起動した場合は
dbxc-ctl startを再度実行する必要があります。 -
以降のコマンド例の
dbxc-ctlは、Windowsでは.\dbxc-ctl.exeに置き換えて実行します。
設定ファイル構造
DBXCはYAML形式の設定ファイルを通じて実行構成を定義します。
サポート形式
DBXCは単一/マルチプロジェクトエージェントをサポートします。
- YAML形式 (.yaml, .yml)
- 単一ファイル: 1つのエージェントを実行
- ディレクトリ: 複数のエージェントを実行
設定ファイル自動探索順序
-cオプションで指定されたファイル/ディレクトリconfig.yaml,config.yml(デフォルトファイル)- カレントディレクトリ内のすべての
.yaml,.ymlファイル
設定ファイル例
❯ tree
.
├── configs
│ ├── project-1.yml
│ └── project-2.yml
├── dbxc-agent
├── dbxc-ctl
├── dbxc.log
├── dbxc.pid
❯ ls -al
total 68456
drwxr-xr-x 8 kyw staff 256 7 18 20:23 .
drwxr-xr-x 9 kyw staff 288 7 18 20:10 ..
drwxr-xr-x 4 kyw staff 128 7 18 20:23 configs
-rwxr-xr-x 1 kyw staff 20174450 7 18 20:09 dbxc-agent
-rwxr-xr-x 1 kyw staff 8565570 7 18 20:09 dbxc-ctl
-rw------- 1 kyw staff 5574908 7 18 20:30 dbxc.log
-rw-r--r-- 1 kyw staff 5 7 18 20:23 dbxc.pid
input:
csp: "aws" # クラウドサービスのプロバイダーを入力します。
namespace: "rds"
region: "ap-northeast-1" # インスタンスが位置するリージョンを設 定します。
instances: # 指定したインスタンスは常に収集されます。クラスター内のインスタンスをここに指定すると、オートスケールに関係なく収集されます。
- name: "mysql-rds" # インスタンス名
slow_query: true # スロークエリページを使用する場合は、true に設定します。
clusters:
autoscale:
enabled: false # オートスケールが有効な場合、スケーリングされたインスタンスを収集対象に追加または削除します。
interval: 60 # 指定したクラスターのオートスケール確認間隔です。(単位: 秒)
names:
- "database-cluster-name"
metrics: # 収集するメトリクスを入力します。
- "CPUUtilization"
- "FreeStorageSpace"
- "FreeableMemory"
- "ReadLatency"
- "WriteLatency"
- "ReadIOPS"
- "WriteIOPS"
- "NetworkReceiveThroughput"
- "NetworkTransmitThroughput"
- "FreeLocalStorage"
logs:
enabled: false # ログ収集を有効にするには true を入力します。
groups: # 収集するAWSロググループを追加します。
- "/aws/rds/cluster/database-cluster-name/error"
- "/aws/lambda/MyLambda"
output: # 収集したメトリクスを送信する WhaTap 情報を入力します。
license: "abcdefg-higjgkgjk-zxcvnbnbmc"
host: "127.0.0.1"
エージェント実行および制御コマンド
CLIはエージェントの開始から状態確認、ログ参照まで様々なコマンドを提供します。