如何解决Docker Elasticsearch XFS报错?

Docker

1 前言

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

tail -f /var/log/messages

发现如下信息,

Mar 22 06:48:19 docker03 kernel: XFS (dm-4): Mounting V4 Filesystem
Mar 22 06:48:19 docker03 kernel: XFS (dm-4): Ending clean mount
Mar 22 06:48:19 docker03 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
如何查看logstash的插件?

1 前言 一个问题,一篇文章,一出故事。 笔者由于需要检查Logstash的插件,于是整理此章节。 …

Elastic Stack
如何部署与交换机集成的Logstash?

1 基础知识 一个问题,一篇文章,一出故事。 笔者最近需要配置接收交换机日志的Logstash管道, …

Bash
如何用Tigase监控Elasticsearch集群?

1 前言 一个问题,一篇文章,一出故事。 笔者生产中有一套Elasticsearch集群,笔者为了能 …