首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法在CoreOS上启动rkt容器内的iscsiadm

无法在CoreOS上启动rkt容器内的iscsiadm
EN

Stack Overflow用户
提问于 2016-06-20 11:57:18
回答 2查看 906关注 0票数 0

我正在尝试使用CoreOS上的rkt中的iscsi插件启动kubernetes,并使用这里的指令。问题是iscsi守护进程无法启动,因此我得到一个错误,无法将卷挂载到吊舱。

代码语言:javascript
复制
iscsi_util.go:112] iscsi: failed to sendtargets to portal 156.64.48.59:3260 
    error: iscsiadm: Failed to load module tcp: No such file
iscsiadm: Could not load transport tcp.Dropping interface default.
[disk_manager.go:50] failed to attach disk 
iscsi: failed to setup
kubelet.go:1780] Unable to mount volumes for pod ...

我试图在rkt容器中挂载整个/dev/,但这对我没有帮助。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-06-20 14:11:04

为了找到一个有效的解决方案,我不得不:

  • 将RKT选项更改为 RKT_OPTS=-册=iscsiadm,kind=host,source=/usr/sbin/iscsiadm -装入volume=iscsiadm,target=/usr/sbin/iscsiadm - kind=host,source=/etc/resv.conf-挂载volume=resolv,target=/etc/resv.conf-volume=resolv=etc,kind=host,source=/etc/iscsi/ - volume=etcs,target=/etc/iscsi --体积=iscsid,kind=host,source=/usr/sbin/iscsid -kind=host=/usr/sbin/iscsid
  • sudo modprobe iscsi_tcp

预先初始化tcp模块,因为它需要用于ascsiadm。但是CoreOS加载模块"视需要而定“,由于某些原因,它在rkt容器中无法工作。

  • echo "InitiatorName=iqn.2001-12.com.mycompany:volume.openiscsi-initiator" > /etc/iscsi/initiatorname.iscsi

至少有一些发起者名为需要

我还在CoreOS中填写了CoreOS,也许还有更好的解决办法。

票数 1
EN

Stack Overflow用户

发布于 2018-09-24 11:00:14

看起来他们不会将其默认添加到CoreOS中,但您可以将其添加到点火配置中。iscsid-initiatorname.service将为您创建名称。

代码语言:javascript
复制
  "storage": {
    "files": [{
      "filesystem": "root",
      "path": "/etc/modules-load.d/iscsi_tcp.conf",
      "contents": { "source": "data:iscsi_tcp" },
      "mode": 420
    }]
  },
  "systemd": {
    "units": [{
        "enable": true,
        "name": "iscsid-initiatorname.service"
    }]
  }

这只适用于新安装或新鲜根磁盘,因此创建文件,执行modprode iscsi_tcp,并执行systemctl start iscsid-initiatorname.service,如果您不想从干净的根开始。

然后,如果使用kubernetes,只需设置卷映射:

代码语言:javascript
复制
  kubelet:
    extra_args:
      feature-gates: MountPropagation=true

    extra_binds:
      - /usr/sbin/iscsiadm:/usr/sbin/iscsiadm
      - /usr/sbin/iscsid:/usr/sbin/iscsid
      - /etc/iscsi/:/etc/iscsi/

这让OpenEBS在我的裸金属CoreOS集群上工作。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37921980

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档