gpt4 book ai didi

kubernetes - 卷已经专门附加到一个节点,不能附加到另一个节点

转载 作者:行者123 更新时间:2023-12-05 00:46:07 25 4
gpt4 key购买 nike

我有一个非常简单的 Kubernetes pod。我想要一个有状态的集合并想要以下过程:

  • 我想要一个 initcontainer 下载并将 tarball 从 s3 解压缩到安装到 initcontainer 的卷中
  • 我想将该卷安装到我要使用的主容器

  • apiVersion: apps/v1
    kind: StatefulSet
    metadata:
    name: app
    namespace: test
    labels:
    name: app
    spec:
    serviceName: app
    replicas: 1
    selector:
    matchLabels:
    app: app
    template:
    metadata:
    labels:
    app: app
    spec:
    initContainers:
    - name: preparing
    image: alpine:3.8
    imagePullPolicy: IfNotPresent
    command:
    - "sh"
    - "-c"
    - |
    echo "Downloading data"
    wget https://s3.amazonaws.com/.........
    tar -xvzf xxxx-........ -C /root/
    volumeMounts:
    - name: node-volume
    mountPath: /root/data/

    containers:
    - name: main-container
    image: ecr.us-west-2.amazonaws.com/image/:latest
    imagePullPolicy: Always

    volumeMounts:
    - name: node-volume
    mountPath: /root/data/

    volumeClaimTemplates:
    - metadata:
    name: node-volume
    spec:
    accessModes: [ "ReadWriteOnce" ]
    storageClassName: gp2-b
    resources:
    requests:
    storage: 80Gi

    我继续收到以下错误:

    起初我运行它,我可以看到我的 tarball 的日志正在被 initcontainer 下载。大约完成一半它终止并给我以下错误:
    Multi-Attach error for volume "pvc-faedc8" Volume is 
    already exclusively attached to one node and can't be
    attached to another

    最佳答案

    看起来你有一个悬垂的PVC和/或 PV附加到您的节点之一。您可以通过 ssh 进入节点并运行 dfmount去检查。
    如果你看 this StatefulSet 中的 PVC 始终映射到它们的 pod 名称,因此您可能仍然有一个悬空的 pod(?)
    如果您有一个悬空的 pods :

    $ kubectl -n test delete pod <pod-name>
    你可能不得不强制它:
    $ kubectl -n test delete pod <pod-name> --grace-period=0 --force
    然后,您可以尝试删除 PVC 及其对应的 PV:
    $ kubectl delete pvc pvc-faedc8
    $ kubectl delete pv <pv-name>

    关于kubernetes - 卷已经专门附加到一个节点,不能附加到另一个节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54875772/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com