aodh 命令行工具

aodh 命令行工具通过命令行与 Aodh API 交互。它支持 Aodh API 的所有功能。

您需要向 aodh 提供您的 OpenStack 凭据。您可以使用 --os-username--os-password--os-tenant-id--os-auth-url 选项来执行此操作,但将其设置为环境变量会更容易

OS_USERNAME

您的 OpenStack 用户名。

OS_PASSWORD

您的密码。

OS_TENANT_NAME

要操作的项目。

OS_AUTH_URL

OpenStack 认证服务器 URL (keystone)。

例如,在 Bash 中,您将使用

export OS_USERNAME=user
export OS_PASSWORD=pass
export OS_TENANT_NAME=myproject
export OS_AUTH_URL=http://auth.example.com:5000/v2.0

命令行工具将尝试使用您提供的凭据对每个请求进行重新认证。您可以通过手动使用 --aodh-endpoint--os-auth-token 来覆盖此行为。或者,您可以设置这些环境变量

export AODH_ENDPOINT=http://aodh.example.org:8041
export OS_AUTH_PLUGIN=token
export OS_AUTH_TOKEN=3bcc3d3a03f44e3d8377f9247b0ad155

此外,如果服务器不支持认证,您可以提供 --os-auth-plugin aodh-noauth、--aodh-endpoint--user-id--project-id。或者,您可以设置这些环境变量

export OS_AUTH_PLUGIN=aodh-noauth
export AODH_ENDPOINT=http://aodh.example.org:8041
export AODH_USER_ID=99aae-4dc2-4fbc-b5b8-9688c470d9cc
export AODH_PROJECT_ID=c8d27445-48af-457c-8e0d-1de7103eae1f

从那时起,所有 shell 命令都采用以下形式

aodh <command> [arguments...]

运行 aodh help 以获取所有可能命令的完整列表,并运行 aodh help <command> 以获取该命令的详细帮助。

示例

创建 Ceilometer 阈值告警

openstack alarm create --name alarm1 --description 'CPU High Average' \
--type threshold --meter-name cpu_util \
--threshold 5 --comparison-operator gt --statistic avg \
--period 60 --evaluation-periods 3 \
--query "metadata.user_metadata.stack=$heat_stack_id" \
--alarm-action 'log://'

创建 Gnocchi 阈值告警

openstack alarm create -t gnocchi_resources_threshold --name alarm1 \
--metric cpu_util --threshold 5 --resource_id <RES_ID> \
--resource_type generic --aggregation_method mean --project-id <PROJ_ID>

列出告警

openstack alarm list

使用查询参数列出告警

openstack alarm list --query "state=alarm and type=gnocchi_resources_threshold"

显示告警历史记录

openstack alarm-history show <ALARM_ID>

搜索告警历史数据

openstack alarm-history search --query 'timestamp>"2016-03-09T01:22:35"'