在rancher日志中启动open-iscsi服务错误

问题描述 投票:1回答:2

我正在Rancher 2.1集群(1节点)中使用带有OpenEBS的cTor存储类测试Prometheus,其中RancherOS在Hyper-v中运行。 cStor卷未安装,并且pod正在启动事件:

Unable to mount volumes for pod "prometheus-server-595746cc5-7xrmt_prometheus(46f03eb4-630f-11e9-b3e5-00155daf3d1f)": timeout expired 
waiting for volumes to attach or mount for pod "prometheus"/"prometheus-server-595746cc5-7xrmt". list of unmounted volumes=[storage-volume]. list of 
unattached volumes=[config-volume storage-volume prometheus-server-token-2w8ng] a minute ago

我认为这与命令的输出有关:

sudo ros s up open-iscsi

那是:

[rancher@kub-master ~]$ sudo ros s up open-iscsi
ERRO[0002] non-200 http response: 404
ERRO[0002] Failed to load rancher.docker.engine=(docker-18.09.5-ce): non-200 
http response: 404
INFO[0002] Project [os]: Starting project
INFO[0002] [0/21] [open-iscsi]: Starting
INFO[0092] [1/21] [open-iscsi]: Started
INFO[0092] Project [os]: Project started

所以,问题是...... ERRO [0002]很重要吗?在哪里记录我该如何解决?

我找不到如何解决这个问题,我尝试过:

  • 重新安装open-iscsi服务。
  • 由于我不确定容器是否因为此错误而无法装入卷,因此我尝试重新创建池,存储类,...,并且错误仍然存​​在。
prometheus rancher openebs rancheros
2个回答
0
投票

pod中的错误(无法安装)信息不足。检查OpenEBS配置程序的日志和事件,或pvc命名空间中以openebs开头的任何pod。这应该告诉你实际问题。

如果您正在运行单节点群集,您是否告诉OpenEBS不要制作3个副本?它可能正在等待其他2个副本联机,因此无法使该卷可供prometheus Pod使用。

这些只是我头脑中的想法。

404错误很奇怪,但似乎已经加载了open-iscsi驱动程序而没有错误。这可能没关系。检查Github有关它的问题,如果没有,请打开一个并记录如何重现错误。


0
投票

您可以从OpenEBS文档docs.openebs.io查看RancherOS中OpenEBS安装的先决条件吗?从那里复制内容。

如果您使用RancherOS作为Kubernetes集群的操作系统,则只需启用iSCSI服务并在所有主机或节点上启动它。如果您使用Ubuntu或RHEL作为Kubernetes集群的操作系统,则需要

  • 验证所有节点上都安装了iSCSI启动器(和)
  • 在群集YAML文件中的Kubelet服务下添加extra_binds,以在Kubelet中安装iSCSI二进制文件和配置。

iSCSI服务在RancherOS上

要运行iSCSI服务,请在每个群集主机或节点上执行以下命令。

sudo ros s启用open-iscsi sudo ros s up open-iscsi

在所有节点上运行以下命令以确保以下目录是持久的,默认情况下这些目录是短暂的。

ros config set rancher.services.user-volumes.volumes [/ home:/ home,/ opt:/ opt,/ var / lib / kubelet:/ var / lib / kubelet,/ etc / kubernetes:/ etc / kubernetes,/ var / openebs] system-docker rm all-volumes reboot

RHEL或Ubuntu上的iSCSI服务步骤1:验证已安装iSCSI启动器并且服务正在运行

操作系统ISCSI包命令RHEL / CentOS iscsi-initiator-utils yum install iscsi-initiator-utils -y sudo systemctl enable iscsid && sudo systemctl start iscsid modprobe iscsi_tcp Ubuntu / Debian open-iscsi sudo apt install open-iscsi sudo systemctl enable iscsid && sudo systemctl start iscsid modprobe iscsi_tcp

步骤2:在群集YAML中的kubelet服务下添加extra_binds

在节点上安装启动器工具后,编辑群集的YAML,编辑kubelet配置以安装iSCSI二进制文件和配置,如下面的示例所示。

services:kubelet:extra_binds: - “/ etc / iscsi:/ etc / iscsi” - “/ sbin / iscsiadm:/ sbin / iscsiadm” - “/ var / lib / iscsi:/ var / lib / iscsi” - “/ lib /模块”

© www.soinside.com 2019 - 2024. All rights reserved.