如何解决Docker Elasticsearch XFS报错?

Docker

1 前言

一个问题,一篇文章,一出故事。
今天部署Docker Elasticsearch发现一台运行Docker环境的机器的Elasticsearch服务无法正常运行,使用如下命令查看日志,

tail -f /var/log/messages

发现如下信息,

Mar 22 06:48:19 dn2docker03 kernel: XFS (dm-4): Mounting V4 Filesystem
Mar 22 06:48:19 dn2docker03 kernel: XFS (dm-4): Ending clean mount
Mar 22 06:48:19 dn2docker03 kernel: XFS (dm-4): Unmounting Filesystem

注:XFS的文件系统被反复的挂载以及卸载。

2 原因分析

由于Elasticsearch数据目录磁盘空间配额文件系统的磁盘空间配额支持,而Linux的某些发行版本(例如RHEL和CentOS)将XFS作为默认文件系统但又默认禁用XFS文件系统的磁盘空间配额,所以Elasticsearch无法基于XFS的默认配置下运行,需要修改挂载的参数。

3 最佳实践

3.1 修改文件系统的挂载参数

vim /etc/fstab

参数修改如下,

/dev/mapper/centos-data /data xfs defaults,nofail,x-systemd.automount,prjquota,pquota        0 0

3.2 停止使用挂载空间的服务

systemctl stop docker.service

3.3 卸载文件系统

umount /data/

3.4 重新挂载文件系统

mount -a

另外,还需要重启以下服务,

systemctl daemon-reload
systemctl restart local-fs.target

3.5 启动Docker服务

systemctl start docker.service

===========================

参阅文档
===================
https://www.elastic.co/guide/en/cloud-enterprise/2.1/ece-configure-hosts-rhel-centos.html

没有评论

发表回复

Elastic Stack
如何熟悉常用的Elasticsearch命令?

1 前言 一个问题,一篇文章,一出故事。 本章将整理Elasticsearch经常使用的命令,以便查 …

Elastic Stack
如何部署Filebeat与logstash集成?

1 前言 一个问题,一篇文章,一出故事。 本章将整理Filebeat与Logstash集成,然后通过 …

Elastic Stack
如何配置Filebeat集成Elasticsearch集群?

1 前言 一个问题,一篇文章,一出故事。 由于Filebeat支持直接与Elasticsearch集 …