当前位置: 首页 > article >正文

【开源社区】ELK 磁盘异常占用解决及优化实践

1、问题及场景描述

本文主要讨论在 CentOS环境下基于 rpm 包部署 ELK 系统磁盘异常占用的问题解析和解决方案。

生产问题描述:以下问题现实场景基于ELK体系下,ES服务的磁盘占用问题解析。默认情况下,基于 RPM 安装的 Elasticsearch 服务的安装位置位于/usr.share/elasticsearch/目录下,配置文件位于 /etc/elasticsearch/ ,在此前提下可能会遇到如下问题

  • 集群出现分片无法分配的情况
  • 通过 explain API 查询未分配原因为磁盘占用率超过阈值
  • 在 shell 下执行 free 等命令发现磁盘剩余空间充足

2、 问题分析

这是可能因为操作系统挂载了多个分区或者磁盘,而使用使用 RPM 包安装的服务可能位于其中较小的分区。本文主要讨论当问题已经产生,如何解决的问题。

3、排查问题

  • 首先根据 explain 返回的结果判断是否是磁盘占用率过高导致,如果是磁盘占用问题可按照以下步骤尝试解决

1:查看所有挂载的磁盘

sudo fdisk -l

在这里插入图片描述
可以看到一共当前一共两个分区,分别是:

  • centos-root
  • centos-swap

每个人情况可能有所不同

2:确认 ES 的安装目录位于哪个分区

查看当前目录所挂载的磁盘的占用情况,使用 rpm 包安装的 Elasticsearch,默认的安装目录在/usr/share/elasticsearch/ 如果由于系统版本不同或者手动修改了安装目录,可以打开 /usr/lib/systemd/system/elasticsearch.service 查看 ES 的工作目录

使用以下命令输出指定目录位于哪个分区

df -h /usr/share/elasticsearch/

在这里插入图片描述
通过结果可以看出 ES 的安装目录所在的分区为 centos-root,并且可以看到磁盘的占用情况

亦可使用下面指令辅助排查问题

  • 看当前指定目录的磁盘占用大小,不递归查看子目录
    du -sh /home/elastic
    
  • 递归查指定目录及子目录的磁盘占用情况
    du -h /home/elastic
    

3:如何将 ES 迁移至其他工作目录
戳:


http://www.kler.cn/a/388597.html

相关文章:

  • HTML之表单学习记录
  • -1大于4?负数与无符号整数类型:size_t的比较问题(strlen)
  • AMD CPU下pytorch 多GPU运行卡死和死锁解决
  • C++初阶——list
  • ElasticSearch学习笔记一:简单使用
  • 【计算机网络】Socket编程接口
  • 如何平滑切换Containerd数据目录
  • android 适应CA证书
  • spring-security(两种权限控制方式)
  • Qt 界面无边框 拖拽移动 问题处理:setMouseTracking(true)无法跟踪鼠标事件
  • <项目代码>YOLOv8 玉米地杂草识别<目标检测>
  • unity3d————四元数,欧拉角的互相转换的初步了解
  • 【bayes-Transformer-GRU多维时序预测】多变量输入模型。matlab代码,2023b及其以上
  • Bert框架详解(上)
  • EM是什么?如何修复EM violation?
  • arm中内存读取延迟性能测试
  • goframe开发一个企业网站 rabbitmq队例15
  • 【网络面试篇】TCP 相关——重传机制、滑动窗口、流量控制、拥塞控制、Keep-Alive、KeepAlive
  • 优选算法 - 1 ( 双指针 移动窗口 8000 字详解 )
  • SpringFramework
  • VMware调整窗口为可以缩小但不改变显示内容的大小
  • 如何基于redis记录调用大模型问答的统一注册服务
  • Vue3 实现拖拽小图片覆盖大图片并下载合并后的图片
  • Flutter运行App时出现“Running Gradle task ‘assembleDebug“问题解决
  • Vue2 doc、excel、pdf、ppt、txt、图片以及视频等在线预览
  • 信创异构环境下审视云原生二层和三层容器网络