ELK集成Azure Metrics实战

一 背景

在目前新版本中,ELK集成中利用elastic-agent可以真多非常的云及中间价进行相关指标采集,不仅仅限于日志,利用公有云的API可以调用监控数据,配合日志进行安全分析,可以更全面的展示云上的资源指标,本文介绍如何将ELK(Elasticsearch、Logstash和Kibana)与Azure Metrics集成,以实现对Azure资源的指标数据进行监控和分析。ELK是一个开源工具组合,用于日志管理和分析,而Azure Metrics是Azure云平台提供的一种服务,用于收集和存储Azure资源的指标数据。通过集成ELK和Azure Metrics,您可以使用ELK的搜索和分析能力来处理和可视化Azure资源的指标数据,从而获得对资源性能和使用情况的深入洞察,以支持优化和管理决策。

二 概述

在本文探讨如何将ELK(Elasticsearch、Logstash和Kibana)与Azure Metrics集成,以便监控和分析Azure资源的指标数据。ELK是一套用于日志管理和分析的开源工具组合。Elasticsearch是一个分布式搜索和分析引擎,用于存储和搜索大量的数据。Logstash是一个用于数据收集、处理和传输的工具。Kibana是一个数据可视化和分析平台,用于构建仪表板和图表。Azure Metrics是Azure云平台提供的一种服务,用于收集和存储Azure资源的指标数据。它可以提供有关虚拟机、存储、数据库等资源的性能和使用情况方面的数据。

所有针对Azure Monitor REST API执行的任务都将使用Azure Resource Manager身份验证模型。因此,所有请求都必须使用Azure Active Directory (Azure AD)进行身份验证。对客户机应用程序进行身份验证的一种方法是创建Azure AD服务主体并检索身份验证(JWT)令牌。有关更详细的演练,请查看使用Azure PowerShell创建一个服务主体来访问资源docs.microsoft.com/en-us/power...

三 添加集成策略

配置增加Azure Storage Account Metrics 集成

需要在Azure 账户下注册应用,之后授权应用对应storage account的权限,在之前一篇azure 应用密钥创建及授权的讲解过,在此不再展开。

shell 复制代码
用户类型应用
# ARM_SUBSCRIPTION_ID
订阅ID:af7xxxxxxxxxxxxxxxb8

订阅名:Sxxxxxxxxx

# appid (elk-agent)
Service Principal Id:f27xxxxxxxxxxxxxxx


# ARM_CLIENT_SECRET
principal key:Roxxxxxxxxxxxxxxx

	

# ARM_TENANT_ID
Tenant ID:85xxxxxxxxxxxxxxx

必须的认证azure_metrics 集成信息:

Client ID::应用程序的唯一标识符(也称为应用程序ID)

Client Secret:客户端/应用程序的秘密/密钥

Subscription ID: azure订阅的唯一标识符

Tenant ID: Azure Active Directory实例的唯一标识符

Resource Manager Endpoint :可选,默认情况下将使用azure公共环境,要覆盖,用户可以提供特定的资源管理器端点,以便使用不同的azure环境,例如:management.chinacloudapi.cn适用于azure ChinaCloud management.microsoftazure.de适用于azure GermanCloud management.azure.com适用于azure PublicCloud management.usgovcloudapi.net适用于azure USGovernmentCloud

Active Directory Endpoint :可选,默认情况下将使用与资源管理器端点相关联的活动目录端点,要覆盖,用户可以提供特定的活动目录端点,以便使用不同的azure环境。例如:login.microsoftonline.com适用于Public Cloud login.microsoftonline.us适用于azure GermanCloud login.chinacloudapi.cn适用于azure ChinaCloud login.microsoftonline.de适用于azure USGovernmentCloud

四 添加资源指标集成Agent

正在收集指标的主机上安装Elastic Agent手机指标数据并发送给Elastic Stack。

在增加Agent可以使用安装配置Fleet进行安装配置,也可以使用单独使用Agent进行配置。

在此使用Standalone模式部署。

4.1 配置Agent

将此策略复制到elastic-agent中。在安装了弹性代理的主机上,使用"yml.xml"。修改"elastic-agent"输出部分的"ES_USERNAME"和"ES_PASSWORD"。使用您的Elasticsearch凭据。

将配置文件下载至主机中,并修改es相关认证信息。

4.2 在主机上安装Elastic Agent

选择适当的平台并运行命令来安装、注册和启动Elastic Agent。重用命令在多个主机上设置代理。对于aarch64,请参阅我们的 downloads page(在新选项卡或窗口中打开)。有关其他指导,请参阅我们的 installation docs(在新选项卡或窗口中打开)。

shell 复制代码
curl -L -O https://artifacts.elastic.co/downloads/beats/elastic-agent/elastic-agent-8.10.2-linux-x86_64.tar.gz
tar xzvf elastic-agent-8.10.2-linux-x86_64.tar.gz
cd elastic-agent-8.10.2-linux-x86_64
# 将修改后的配置文件放到安装目录下,之后进行安装
sudo ./elastic-agent install

Agent安装完成后在/opt/Elastic/Agent目录下

通过agent命令查看状态

shell 复制代码
elastic-agent status
systemctl status elastic-agent

五 Dashboard查看

可以看到elastic-agent内置的dashboard

查看elastic agent 的overview 视图

  • 账单信息

注意同azure 其他指标采集相同,配置集成,可以将生成的配置id及相关内容粘贴到elastic-agent中,进行采集操作。

在此可以实时查看日志信息

可以看到billing的信息

Azure Compute VM状态图

六 注意事项

  • 注意azure在中国又世纪互联运营,需要配置相关采集指标的时候,指定Active Directory Endpoint、Resource Manager Endpoint中。
  • 目前采集的指标部分字段没有数据,后续需进一步测试。

七 总结

ELK集成Azure Metrics可以帮助您实现对Azure资源的实时监控和分析。通过将ELK的强大搜索和分析功能与Azure Metrics的数据集成,您可以获得对Azure资源性能和使用情况的深入洞察,并及时采取必要的措施来优化和管理这些资源。

参考链接

相关推荐
大虾别跑几秒前
欧拉openEuler 22.03 LTS-部署k8sv1.03.1
云原生·容器·kubernetes
Elastic 中国社区官方博客6 分钟前
Elasticsearch:Ingest architectures - 摄取架构
大数据·elasticsearch·搜索引擎·架构·全文检索
字节跳动数据平台2 小时前
深耕分析型数据库领域,火山引擎ByteHouse入围《2024爱分析数据库厂商全景报告
数据库·后端·云原生
古猫先生4 小时前
2028年企业云存储支出翻倍,达到1280亿美元
人工智能·云原生
水蓝烟雨10 小时前
Elasticsearch基本操作
大数据·elasticsearch·搜索引擎
lendq14 小时前
k8s-第八节-Helm
云原生·容器·kubernetes
猴子微胖15 小时前
ElasticSearch常用操作
大数据·elasticsearch·jenkins
日出等日落16 小时前
Windows系统安装分布式搜索和分析引擎Elasticsearch与远程访问详细教程
windows·分布式·elasticsearch
lendq17 小时前
k8s-第三节-工作负载
云原生·容器·kubernetes
科技互联人生18 小时前
云原生技术架构详解
云原生·系统架构