首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Kubernetes 1.18.4,iSCSI

Kubernetes 1.18.4,iSCSI
EN

Stack Overflow用户
提问于 2020-07-06 18:01:34
回答 1查看 518关注 0票数 0

我在连接Kubernetes的每个iSCSI的卷时遇到了问题。当我尝试从worker节点使用iscisiadm时,它工作了。这是我从kubectl description pod得到的。

代码语言:javascript
复制
Normal   Scheduled               <unknown>             default-scheduler        Successfully assigned default/iscsipd to k8s-worker-2
Normal   SuccessfulAttachVolume  4m2s                  attachdetach-controller  AttachVolume.Attach succeeded for volume "iscsipd-rw"
Warning  FailedMount             119s                  kubelet, k8s-worker-2    Unable to attach or mount volumes: unmounted volumes=[iscsipd-rw], unattached volumes=[iscsipd-rw default-token-d5glz]: timed out waiting for the condition
Warning  FailedMount             105s (x9 over 3m54s)  kubelet, k8s-worker-2    MountVolume.WaitForAttach failed for volume "iscsipd-rw" : failed to get any path for iscsi disk, last err seen:iscsi: failed to attach disk: Error: iscsiadm: No records found(exit status 21)

我只是在使用来自kubernetes.io的iscsi.yaml文件!

代码语言:javascript
复制
---
apiVersion: v1
kind: Pod
metadata:
  name: iscsipd
spec:
  containers:
  - name: iscsipd-rw
    image: kubernetes/pause
    volumeMounts:
    - mountPath: "/mnt/iscsipd"
      name: iscsipd-rw
  volumes:
  - name: iscsipd-rw
    iscsi:
      targetPortal: 192.168.34.32:3260
      iqn: iqn.2020-07.int.example:sql
      lun: 0
      fsType: ext4
      readOnly: true

Open-iscsi安装在所有工作节点(仅其中两个)上。

代码语言:javascript
复制
● iscsid.service - iSCSI initiator daemon (iscsid)
   Loaded: loaded (/lib/systemd/system/iscsid.service; enabled; vendor preset: e
   Active: active (running) since Fri 2020-07-03 10:24:26 UTC; 4 days ago
     Docs: man:iscsid(8)
  Process: 20507 ExecStart=/sbin/iscsid (code=exited, status=0/SUCCESS)
  Process: 20497 ExecStartPre=/lib/open-iscsi/startup-checks.sh (code=exited, st
 Main PID: 20514 (iscsid)
    Tasks: 2 (limit: 4660)
   CGroup: /system.slice/iscsid.service
           ├─20509 /sbin/iscsid
           └─20514 /sbin/iscsid

ISCSI Target是在IBM Storwize V7000上创建的。没有CHAP。

我尝试从worker节点连接iscsiadm,它工作了。

代码语言:javascript
复制
sudo iscsiadm -m discovery -t sendtargets -p 192.168.34.32
192.168.34.32:3260,1 iqn.1986-03.com.ibm:2145.hq-v7000.hq-v7000-rz1-c1
192.168.34.34:3260,1 iqn.1986-03.com.ibm:2145.hq-v7000.hq-v7000-rz1-c1

sudo iscsiadm -m node --login
Logging in to [iface: default, target: iqn.1986-03.com.ibm:2145.hq-v7000.hq-v7000-rz1-c1, portal: 192.168.34.32,3260] (multiple)
Logging in to [iface: default, target: iqn.1986-03.com.ibm:2145.hq-v7000.hq-v7000-rz1-c1, portal: 192.168.34.34,3260] (multiple)
Login to [iface: default, target: iqn.1986-03.com.ibm:2145.hq-v7000.hq-v7000-rz1-c1, portal: 192.168.34.32,3260] successful.
Login to [iface: default, target: iqn.1986-03.com.ibm:2145.hq-v7000.hq-v7000-rz1-c1, portal: 192.168.34.34,3260] successful.

Disk /dev/sdb: 100 GiB, 107374182400 bytes, 209715200 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 32768 bytes / 32768 bytes
Disklabel type: dos
Disk identifier: 0x5b3d0a3a

Device     Boot Start       End   Sectors  Size Id Type
/dev/sdb1        2048 209715199 209713152  100G 83 Linux

有没有人面临同样的问题?

EN

回答 1

Stack Overflow用户

发布于 2020-07-07 00:27:56

记住不要对目标使用主机名。使用IP。由于某种原因,如果目标是一个主机名,它会抛出关于请求重复会话的错误。如果目标是一个IP,它就可以正常工作。我现在在不同的pod中安装了多个iSCSI目标,我绝对欣喜若狂。

您可能还会遇到iscsi目标的身份验证问题。

如果您尚未使用CHAP身份验证,则仍需禁用身份验证。例如,如果您使用targetcli,您可以运行以下命令来禁用它。

代码语言:javascript
复制
$ sudo targetcli
/> /iscsi/iqn.2003-01.org.xxxx/tpg1 set attribute authentication=0 # will disable auth
/> /iscsi/iqn.2003-01.org.xxxx/tpg1 set attribute generate_node_acls=1 # will force to use tpg1 auth mode by default

如果这对您没有帮助,请分享您的iscsi目标配置,或参考您遵循的指南。

重要的是检查您的所有节点是否都安装了open-iscsi-package。

看看:kubernetes-iSCSIvolume-failed-iscsi-diskiscsi-into-container-fails

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

https://stackoverflow.com/questions/62753653

复制
相关文章

相似问题

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