gpt4 book ai didi

Kubernetes - 对于 Scale,当在扩展 pod (GKE) 时附加持久卷时 pod 处于挂起状态

转载 作者:行者123 更新时间:2023-12-04 03:44:58 25 4
gpt4 key购买 nike

我在 xyz-namespace 命名空间中创建了一个部署,它有 PVC。我可以创建部署并能够访问它。它工作正常,但从 Kubernetes 控制台扩展部署时,pod 仅处于挂起状态。

persistent_claim:
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: jenkins
spec:
accessModes:
- ReadWriteOnce
storageClassName: standard
resources:
requests:
storage: 5Gi
namespace: xyz-namespace

部署对象如下所示。

apiVersion: apps/v1
kind: Deployment
metadata:
name: db-service
labels:
k8s-app: db-service
Name:db-service
ServiceName: db-service
spec:
selector:
matchLabels:
tier: data
Name: db-service
ServiceName: db-service
strategy:
type: Recreate
template:
metadata:
labels:
app: jenkins
tier: data
Name: db-service
ServiceName: db-service
spec:
hostname: jenkins
initContainers:
- command:
- "/bin/sh"
- "-c"
- chown -R 1000:1000 /var/jenkins_home
image: busybox
imagePullPolicy: Always
name: jenkins-init
volumeMounts:
- name: jenkinsvol
mountPath: "/var/jenkins_home"
containers:
- image: jenkins/jenkins:lts
name: jenkins
ports:
- containerPort: 8080
name: jenkins1
- containerPort: 8080
name: jenkins2
volumeMounts:
- name: jenkinsvol
mountPath: "/var/jenkins_home"
volumes:
- name: jenkinsvol
persistentVolumeClaim:
claimName: jenkins
nodeSelector:
nodegroup: xyz-testing
namespace: xyz-namespace
replicas: 1

部署创建良好并且工作正常但是当我尝试从控制台扩展部署时,pod 卡住了,它仅处于挂起状态。

如果我删除了持久卷然后缩放它,那么它工作正常,但是对于持久卷,它就不起作用了。

最佳答案

当使用标准存储类时,我假设您使用的是默认的 GCEPersisentDisk 卷插件。在这种情况下,您根本无法设置它们,因为它们已经由存储提供商设置(在您的情况下是 GCP,因为您使用的是 GCE 永久磁盘),这些磁盘仅支持 ReadWriteOnce(RWO) 和 ReadOnlyMany (ROX) 访问模式。如果您尝试创建一个永远不会进入成功状态的 ReadWriteMany(RWX) PV(当您使用 accessModes 设置 PVC 时的情况:ReadWriteMany)。

此外,如果任何 pod 尝试在其他节点上附加 ReadWriteOnce 卷,您将收到以下错误:

FailedMount Failed to attach volume "pv0001" on node "xyz" with: googleapi: Error 400: The disk resource 'abc' is already being used by 'xyz'

以上关于此 article 的引用

如前所述herehere ,NFS 是获取 ReadWriteMany 的最简单方法,因为所有节点都需要能够将 ReadWriteMany 写入您用于 pod 的存储设备。

那么我会建议您使用 NFS 存储选项。如果您想测试它,这里有一个很好的 guide由 Google 使用其完全托管的 NFS 文件服务器的 Filestore 解决方案。

关于Kubernetes - 对于 Scale,当在扩展 pod (GKE) 时附加持久卷时 pod 处于挂起状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65326097/

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