添加云元数据
编辑添加云元数据
编辑add_cloud_metadata
处理器会使用主机提供商的实例元数据丰富每个事件。启动时,它会查询主机提供商列表并缓存实例元数据。
支持以下云提供商:
- Amazon Web Services (AWS)
- Digital Ocean
- Google Compute Engine (GCE)
- 腾讯云 (QCloud)
- 阿里云 (ECS)
- 华为云 (ECS)
- Azure 虚拟机
- Openstack Nova
- Hetzner Cloud
huawei
是openstack
的别名。华为云运行在OpenStack平台上,从元数据API的角度来看,它与OpenStack无法区分。如果您知道您的部署专门运行在华为云上,并且希望cloud.provider
的值为huawei
,您可以使用add_fields
处理器覆盖该值。
阿里云和腾讯云提供商默认情况下是禁用的,因为它们需要访问远程主机。providers
设置允许用户选择要查询的默认提供商列表。
以下简单的配置启用了该处理器。
processors: - add_cloud_metadata: ~
add_cloud_metadata
处理器具有三个可选配置设置。第一个是timeout
,它指定在检测主机提供商时等待成功响应的最长时间。默认超时值为3s
。
如果发生超时,则不会将任何实例元数据添加到事件中。这使得可以为所有部署(云端或本地)启用此处理器。
第二个可选设置是providers
。providers
设置接受要使用的云提供商名称列表。如果未配置providers
,则默认情况下启用所有不访问远程端点的提供商。也可以使用环境变量BEATS_ADD_CLOUD_METADATA_PROVIDERS
配置提供商列表,将其设置为用逗号分隔的提供商名称列表。
providers
设置支持的名称列表:
- "alibaba"或"ecs"用于阿里云提供商(默认禁用)。
- "azure"用于Azure虚拟机(默认启用)。如果虚拟机是AKS托管集群的一部分,还可以检索字段
orchestrator.cluster.name
和orchestrator.cluster.id
。"TENANT_ID"、"CLIENT_ID"和"CLIENT_SECRET"环境变量需要设置用于身份验证目的。如果未设置,我们将回退到DefaultAzureCredential,用户可以选择不同的身份验证方法(例如工作负载身份)。 - "digitalocean"用于Digital Ocean(默认启用)。
- "aws"或"ec2"用于Amazon Web Services(默认启用)。
- "gcp"用于Google Compute Engine(默认启用)。
- "openstack"、"nova"或"huawei"用于Openstack Nova(默认启用)。
- "openstack-ssl"或"nova-ssl"用于启用SSL元数据API的Openstack Nova(默认启用)。
- "tencent"或"qcloud"用于腾讯云(默认禁用)。
- "hetzner"用于Hetzner Cloud(默认启用)。
第三个可选配置设置是overwrite
。当overwrite
为true
时,add_cloud_metadata
会覆盖现有的cloud.*
字段(默认为false
)。
add_cloud_metadata
处理器支持SSL选项来配置用于查询云元数据的http客户端。更多信息请参见SSL配置。
添加到事件的元数据因主机提供商而异。以下是每个受支持提供商的示例。
AWS
{ "cloud": { "account.id": "123456789012", "availability_zone": "us-east-1c", "instance.id": "i-4e123456", "machine.type": "t2.medium", "image.id": "ami-abcd1234", "provider": "aws", "region": "us-east-1" } }
Digital Ocean
{ "cloud": { "instance.id": "1234567", "provider": "digitalocean", "region": "nyc2" } }
GCP
{ "cloud": { "availability_zone": "us-east1-b", "instance.id": "1234556778987654321", "machine.type": "f1-micro", "project.id": "my-dev", "provider": "gcp" } }
腾讯云
{ "cloud": { "availability_zone": "gz-azone2", "instance.id": "ins-qcloudv5", "provider": "qcloud", "region": "china-south-gz" } }
阿里云
此元数据仅在选择VPC作为ECS实例的网络类型时才可用。
{ "cloud": { "availability_zone": "cn-shenzhen", "instance.id": "i-wz9g2hqiikg0aliyun2b", "provider": "ecs", "region": "cn-shenzhen-a" } }
Azure 虚拟机
{ "cloud": { "provider": "azure", "instance.id": "04ab04c3-63de-4709-a9f9-9ab8c0411d5e", "instance.name": "test-az-vm", "machine.type": "Standard_D3_v2", "region": "eastus2" } }
Openstack Nova
{ "cloud": { "instance.name": "test-998d932195.mycloud.tld", "instance.id": "i-00011a84", "availability_zone": "xxxx-az-c", "provider": "openstack", "machine.type": "m2.large" } }
Hetzner Cloud
{ "cloud": { "availability_zone": "hel1-dc2", "instance.name": "my-hetzner-instance", "instance.id": "111111", "provider": "hetzner", "region": "eu-central" } }