【发布时间】:2020-12-16 15:18:01
【问题描述】:
我在 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 卡住了,它只是挂起状态。
如果我删除了持久性卷然后对其进行了缩放,那么它可以正常工作,但使用持久性卷,它就无法正常工作。
【问题讨论】:
-
添加
kubectl get events -A的输出 -
AttachVolume.Attach 卷“pvc-123-xyz”失败:googleapi:错误 400:RESOURCE_IN_USE_BY_ANOTHER_RESOURCE - 磁盘资源 'projects/abc/zones/abc-a/disks/pvc-123-xyz ' 已被 'projects/abc/zones/abc-a/instances/instance-123' 使用
-
@ArghyaSadhu 我已经获取了事件,并且得到了类似上面的结果。你能检查一下吗?
标签: kubernetes google-kubernetes-engine persistent-volumes