- 重要な情報
- はじめに
- 用語集
- エージェント
- インテグレーション
- OpenTelemetry
- 開発者
- API
- CoScreen
- アプリ内
- インフラストラクチャー
- アプリケーションパフォーマンス
- 継続的インテグレーション
- ログ管理
- セキュリティ
- UX モニタリング
- 管理
Supported OS
注: このインテグレーションは、OpenStack v12 以下 (コンテナ化されていないOpenStack) にのみ適用されます。OpenStack v13+ (コンテナ化された OpenStack) からメトリクスを収集する場合は、OpenStack Controller インテグレーションを使用してください。
OpenStack サービスからメトリクスをリアルタイムに取得して、以下のことができます。
OpenStack メトリクスをキャプチャするには、ハイパーバイザーを実行しているホストに Agent をインストールします。
ID サーバーで Datadog のロールとユーザーを構成します。
openstack role create datadog_monitoring
openstack user create datadog \
--password my_password \
--project my_project_name
openstack role add datadog_monitoring \
--project my_project_name \
--user datadog
次に、policy.json
ファイルを更新して、必要なアクセス許可を付与します。role:datadog_monitoring
には次の操作へのアクセスが必要です。
Nova
{
"compute_extension": "aggregates",
"compute_extension": "hypervisors",
"compute_extension": "server_diagnostics",
"compute_extension": "v3:os-hypervisors",
"compute_extension": "v3:os-server-diagnostics",
"compute_extension": "availability_zone:detail",
"compute_extension": "v3:availability_zone:detail",
"compute_extension": "used_limits_for_admin",
"os_compute_api:os-aggregates:index": "rule:admin_api or role:datadog_monitoring",
"os_compute_api:os-aggregates:show": "rule:admin_api or role:datadog_monitoring",
"os_compute_api:os-hypervisors": "rule:admin_api or role:datadog_monitoring",
"os_compute_api:os-server-diagnostics": "rule:admin_api or role:datadog_monitoring",
"os_compute_api:os-used-limits": "rule:admin_api or role:datadog_monitoring"
}
Neutron
{
"get_network": "rule:admin_or_owner or rule:shared or rule:external or rule:context_is_advsvc or role:datadog_monitoring"
}
Keystone
{
"identity:get_project": "rule:admin_required or project_id:%(target.project.id)s or role:datadog_monitoring",
"identity:list_projects": "rule:admin_required or role:datadog_monitoring"
}
ポリシーの変更を有効にするには、Keystone、Neutron、および Nova API サービスを再起動する必要があります。
注: OpenStack インテグレーションをインストールすると、Datadog が監視する VM 数が増える可能性があります。これが課金にどのように影響するかについては、課金に関する FAQ を参照してください。
Datadog Agent が Keystone サーバーに接続するように構成し、監視するプロジェクトを個別に指定します。以下の構成で Agent の構成ディレクトリのルートにある conf.d/
フォルダーの openstack.d/conf.yaml
ファイルを編集します。使用可能なすべての構成オプションの詳細については、サンプル openstack.d/conf.yaml を参照してください。
init_config:
## @param keystone_server_url - string - required
## Where your identity server lives.
## Note that the server must support Identity API v3
#
keystone_server_url: "https://<KEYSTONE_SERVER_ENDPOINT>:<PORT>/"
instances:
## @param name - string - required
## Unique identifier for this instance.
#
- name: "<INSTANCE_NAME>"
## @param user - object - required
## User credentials
## Password authentication is the only auth method supported.
## `user` object expects the parameter `username`, `password`,
## and `user.domain.id`.
##
## `user` should resolve to a structure like:
##
## {'password': '<PASSWORD>', 'name': '<USERNAME>', 'domain': {'id': '<DOMAINE_ID>'}}
#
user:
password: "<PASSWORD>"
name: datadog
domain:
id: "<DOMAINE_ID>"
Datadog Agent で、ログの収集はデフォルトで無効になっています。以下のように、datadog.yaml
でこれを有効にできます。
logs_enabled: true
Openstack ログの収集を開始するには、次のコンフィギュレーションブロックを openstack.d/conf.yaml
ファイルに追加します。
logs:
- type: file
path: "<LOG_FILE_PATH>"
source: openstack
path
パラメーターの値を変更し、環境に合わせて構成します。使用可能なすべてのコンフィギュレーションオプションについては、サンプル openstack.d/conf.yaml を参照してください。
Agent の status サブコマンドを実行し、Checks セクションで openstack
を探します。
openstack.nova.current_workload (gauge) | Current workload on the Nova hypervisor |
openstack.nova.disk_available_least (gauge) | Disk available for the Nova hypervisor Shown as gibibyte |
openstack.nova.free_disk_gb (gauge) | Free disk on the Nova hypervisor Shown as gibibyte |
openstack.nova.free_ram_mb (gauge) | Free RAM on the Nova hypervisor Shown as mebibyte |
openstack.nova.hypervisor_load.1 (gauge) | The average hypervisor load over one minute. |
openstack.nova.hypervisor_load.5 (gauge) | The average hypervisor load over five minutes. |
openstack.nova.hypervisor_load.15 (gauge) | The average hypervisor load over fifteen minutes. |
openstack.nova.limits.max_image_meta (gauge) | The maximum allowed image metadata definitions for this tenant |
openstack.nova.limits.max_personality (gauge) | The maximum allowed personalities for this tenant |
openstack.nova.limits.max_personality_size (gauge) | The maximum size of a single personality allowed for this tenant |
openstack.nova.limits.max_security_group_rules (gauge) | The maximum number of security group rules allowed for this tenant |
openstack.nova.limits.max_security_groups (gauge) | The maximum number of security groups allowed for this tenant |
openstack.nova.limits.max_server_meta (gauge) | The maximum allowed service metadata definitions for this tenant |
openstack.nova.limits.max_total_cores (gauge) | The maximum allowed cores for this tenant |
openstack.nova.limits.max_total_floating_ips (gauge) | The maximum allowed floating IPs for this tenant |
openstack.nova.limits.max_total_instances (gauge) | The maximum number of instances allowed for this tenant |
openstack.nova.limits.max_total_keypairs (gauge) | The maximum allowed key pairs allowed for this tenant |
openstack.nova.limits.total_cores_used (gauge) | The total cores used by this tenant |
openstack.nova.limits.total_floating_ips_used (gauge) | The total floating IPs used by this tenant |
openstack.nova.limits.total_instances_used (gauge) | The total instances used by this tenant |
openstack.nova.limits.total_security_groups_used (gauge) | The total number of security groups used by this tenant |
openstack.nova.running_vms (gauge) | Number of running VMs on this hypervisor host |
openstack.nova.vcpus (gauge) | Number of vCPUs available on this hypervisor host |
openstack.nova.vcpus_used (gauge) | Number of vCPUS used on this hypervisor host |
openstack.nova.server.hdd_errors (gauge) | The number of errors seen by the server when accessing an HDD device |
openstack.nova.server.hdd_read_req (gauge) | The number of read requests made to an HDD device by this server |
openstack.nova.server.hdd_write_req (gauge) | The number of write requests made to an HDD device by this server |
openstack.nova.server.vda_errors (gauge) | The number of errors seen by the server when accessing a VDA device |
openstack.nova.server.vda_read_req (gauge) | The number of read requests made to a VDA device by this server |
openstack.nova.server.vda_write_req (gauge) | The number of write requests made to a VDA device by this server |
openstack.nova.limits.max_total_ram_size (gauge) | The max allowed RAM size for this tenant in megabytes (MB) Shown as mebibyte |
openstack.nova.limits.total_ram_used (gauge) | The current RAM used by this tenant in megabytes (MB) Shown as mebibyte |
openstack.nova.local_gb (gauge) | The size in GB of the ephemeral disk present on this hypervisor host Shown as gibibyte |
openstack.nova.local_gb_used (gauge) | The size in GB of disk used on this hypervisor host Shown as gibibyte |
openstack.nova.memory_mb (gauge) | The size in MB of RAM present on this hypervisor host Shown as mebibyte |
openstack.nova.memory_mb_used (gauge) | The size in MB of RAM used on this hypervisor host Shown as mebibyte |
openstack.nova.server.hdd_read (gauge) | Number of bytes read from an HDD device by this server Shown as byte |
openstack.nova.server.hdd_write (gauge) | Number of bytes written to an HDD device by this server Shown as byte |
openstack.nova.server.vda_read (gauge) | Number of bytes read from a VDA device by this server Shown as byte |
openstack.nova.server.vda_write (gauge) | Number of bytes written to a VDA device by this server Shown as byte |
openstack.nova.server.memory (gauge) | The amount of memory in MB provisioned for this server Shown as mebibyte |
openstack.nova.server.memory_actual (gauge) | The amount of memory in MB provisioned for this server Shown as mebibyte |
openstack.nova.server.memory_rss (gauge) | The amount of memory used by the processes of this server that is not associated with disk pages - such as stack and heap memory Shown as mebibyte |
openstack.nova.server.cpu0_time (gauge) | CPU time in nanoseconds of this virtual CPU Shown as nanosecond |
OpenStack チェックには、イベントは含まれません。
openstack.neutron.api.up
Agent が Neutron API をクエリできない場合は CRITICAL
を、Keystone API に問題がある場合は UNKNOWN
を返します。それ以外の場合は、OK
を返します。
Statuses: ok, クリティカル, 不明
openstack.nova.api.up
Agent が Nova API をクエリできない場合は CRITICAL
を、Keystone API に問題がある場合は UNKNOWN
を返します。それ以外の場合は、OK
を返します。
Statuses: ok, クリティカル, 不明
openstack.keystone.api.up
Agent が Keystone API をクエリできない場合は、CRITICAL
を返します。それ以外の場合は、OK
を返します。
Statuses: ok, クリティカル
openstack.nova.hypervisor.up
Agent がハイパーバイザーの状態を取得できない場合は UNKNOWN
、ハイパーバイザーがダウンしている場合は CRITICAL
を返します。それ以外の場合は、OK
を返します。
Statuses: ok, クリティカル, 不明
openstack.neutron.network.up
Agent がネットワークの状態を取得できない場合は UNKNOWN
、ネットワークがダウンしている場合は CRITICAL
を返します。それ以外の場合は、OK
を返します。
Statuses: ok, クリティカル, 不明
ご不明な点は、Datadog のサポートチームまでお問合せください。
お役に立つドキュメント、リンクや記事: