You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

部署ELK到Azure VM后无法向Elasticsearch写入数据如何解决?

排查解决方案

1. 网络端口规则验证

  • 首先检查Azure门户中虚拟机关联的网络安全组(NSG)9200端口入站规则的源地址配置:如果规则源地址不是0.0.0.0/0,需要确认是否包含你本地设备的公网IP,未包含的话本地请求会被NSG拦截。
  • 其次检查虚拟机内部操作系统防火墙规则:如果是Linux系统,执行ufw status或者firewall-cmd --list-all确认9200端口已放行;如果是Windows系统,检查Windows Defender防火墙的入站规则是否允许9200端口的外部访问。

2. Elasticsearch服务配置排查

  • 先运行本地MVC项目,抓取ES客户端的请求报错信息:如果报错为连接超时,可确定是网络规则拦截问题;如果返回4xx/5xx状态码,属于ES服务侧的配置问题。
  • 检查elasticsearch.yml中的xpack.security.enabled配置:如果开启了安全认证,你本地MVC项目的ES客户端未配置对应用户名密码的话,写入请求会被直接拒绝,不会生成索引。可以直接在浏览器访问http://<虚拟机公网IP>:9200验证,如果弹出登录框说明已开启认证,需要在MVC项目的ES客户端配置中补充认证信息。
  • 登录虚拟机执行curl http://localhost:9200/_cat/indices?v命令查看所有已存在的索引,确认是索引真的未创建,还是你在Kibana中创建索引模式时填写的索引名称匹配规则有误导致找不到。

3. 应用侧配置校验

检查你的MVC项目中ES写入配置,是否开启了自动创建索引权限,或者配置的索引名称是否符合ES命名规范(不能包含大写字母、特殊符号等),不符合规范的索引创建请求会被ES直接驳回。

内容的提问来源于stack exchange,提问作者MarkCo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 11:06:06