Kubernetes集群上部署的elasticsearch服务运行报错:For complete error details

目录

一、问题描述:

二、问题分析:

1、排查当前容器里的elasticsearch服务数据目录权限:

2、检查elasticsearch用户的id值:

3、故障原因及故障处理方向结论:

三、问题处理:

四、总结:

一、问题描述:

在维护paas云平台时遇见一个elasticsearch服务运行异常,报错内容显示如下:

并且通过重启pod容器也无法恢复该elasticsearch服务。

二、问题分析:

通过日志内容及运维经验发现该问题是因为elasticsearch服务数据目录的权限不匹配导致,

1、排查当前容器里的elasticsearch服务数据目录权限:

通过上面的检查,得出两个信息:

(1).elasticsearch服务的数据目录的权限确实存在问题,其他的目录/文件的是elasticsearch用户,但是data目录的属主是root的,存在冲突;

(2).elasticsearch服务运行的用户是elasticsearch用户;

2、检查elasticsearch用户的id值:

需要登入到容器里通过id elasticsearch查看用户ID值

3、故障原因及故障处理方向结论:

根据上面分析的情况,需要将data目录的属主修改为 elasticsearch:root,就可以了。

三、问题处理:

根据上面分析的结论,需要将 elasticsearch容器里的data目录修改属主,但是考虑到后期可能还会触发该属主问题,所以建议需要在 elasticsearch容器里加入一个初始化容器来完成属主设置工作;

在spec模块之下添加如下的内容:

cpp 复制代码
      initContainers:
        - name: init-sysctl
          image: 'dockerhub.jxstjh.com/system_containers/busybox:latest'
          command:
            - /bin/sh
            - '-c'
            - >-
              chown -R 1000:1000 /usr/share/elasticsearch/data;sysctl -w
              vm.max_map_count=262144
          resources: {}
          volumeMounts:
            - name: video-elasticsearch-pvc
              mountPath: /usr/share/elasticsearch/data
          terminationMessagePath: /dev/termination-log
          terminationMessagePolicy: File
          imagePullPolicy: IfNotPresent
          securityContext:
            privileged: true

结果如下:其中有两处需要注意的,第一个 elasticsearch的数据目录,第二个是挂载目录信息

然后重启一下elasticsearch容器就可以了;后面通过验证,elasticsearch容器服务已经恢复了。

四、总结:

如上是elasticsearch容器服务维护过程中遇见的问题,并且是提供了处理方案,希望能帮助到大家!!

相关推荐
Richardlygo11 分钟前
(k8s)kubernetes集群基于Containerd部署
云原生·容器·kubernetes
小小的木头人1 小时前
Docker vs. containerd 深度剖析容器运行时
运维·docker·容器
weixin_443290692 小时前
【Docker】安装及使用
docker·容器·eureka
nvd112 小时前
K8S - 用service account 登陆kubectl
kubernetes
二进制杯莫停2 小时前
k8s pod网络故障注入,命令行实现
网络·容器·kubernetes
it技术分享just_free3 小时前
基于 K8S kubernetes 的常见日志收集方案
linux·运维·docker·云原生·容器·kubernetes·k8s
小叶子来了啊3 小时前
002.k8s(Kubernetes)一小时快速入门(先看docker30分钟)
java·容器·kubernetes
it技术分享just_free4 小时前
基于 K8S kubernetes 搭建 安装 EFK日志收集平台
运维·docker·云原生·容器·kubernetes·k8s
loveLifeLoveCoding4 小时前
K8S volumn 挂载文件
云原生·容器·kubernetes
lizhou8285 小时前
win10下使用docker、k8s部署java应用
java·docker·kubernetes