我Kubernetes - v1.24.7在 Ubuntu 18.04.6 LTS 上使用并面臨NFS - Persistent Volume安裝問題。當我嘗試部署我的 Jenkins 部署檔案時,它總是失敗并出現以下錯誤。
$ kubectl describe pod jenkins-6786789d5d-m26zw -n jenkins
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal Scheduled 25m default-scheduler Successfully assigned jenkins/jenkins-6786789d5d-m26zw to worker-3
Warning FailedMount 5m31s (x2 over 14m) kubelet Unable to attach or mount volumes: unmounted volumes=[data], unattached volumes=[kube-api-access-65npd data]: timed out waiting for the condition
Warning FailedMount 3m17s (x8 over 23m) kubelet Unable to attach or mount volumes: unmounted volumes=[data], unattached volumes=[data kube-api-access-65npd]: timed out waiting for the condition
Warning FailedMount 3m6s (x19 over 25m) kubelet MountVolume.SetUp failed for volume "pv-nfs" : mount failed: exit status 32
Mounting command: mount
Mounting arguments: -t nfs -o nfsvers=4.1 192.168.72.136:/mnt/nfs/stg/jenkins /var/lib/kubelet/pods/853c44ed-bf2b-4e6a-b666-c1adab7f7f4b/volumes/kubernetes.io~nfs/pv-nfs
Output: mount.nfs: mounting 192.168.72.136:/mnt/nfs/stg/jenkins failed, reason given by server: No such file or directory
以下External NFS安裝路徑由我們的 IT 存盤管理員提供。
192.168.72.136:/nfs-volume
以下軟體包已經安裝在主節點和節點上。
apt install nfs-common
apt install cifs-utils
apt install nfs-kernel-server
在我的主人和工人(主機)中,我在下面添加了/etc/fstab,我可以安裝 nfs 卷。
192.168.72.136:/nfs-volume /mnt/nfs/stg/ nfs defaults 0 0
但是,在 Kubernetes 應用程式部署時仍然存在相同的問題,還嘗試了以下選項,/etc/fstab但結果相同。
192.168.72.136:/nfs-volume /mnt/nfs/stg/ nfs rw,hard,intr 0 0
我的pv&pvc音量狀態。
$ kubectl get pv
NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE
pv-nfs 100Gi RWX Retain Bound jenkins/pvc-nfs nfs 11s
$ kubectl get pvc -n jenkins
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
pvc-nfs Bound pv-nfs 100Gi RWX nfs 17s
myPersistentVolume和Deploymentyml 如下。
apiVersion: v1
kind: PersistentVolume
metadata:
name: pv-nfs
labels:
type: pv-nfs
spec:
storageClassName: nfs
capacity:
storage: 100Gi
accessModes:
- ReadWriteMany
persistentVolumeReclaimPolicy: Retain
mountOptions:
- nfsvers=4.0
nfs:
server: 192.168.72.136
path: "/mnt/nfs/stg/jenkins"
readOnly: false
apiVersion: apps/v1
kind: Deployment
metadata:
name: jenkins
namespace: jenkins
labels:
app: jenkins
spec:
replicas: 1
selector:
matchLabels:
app: jenkins
template:
metadata:
labels:
app: jenkins
spec:
securityContext:
fsGroup: 0
runAsUser: 0
serviceAccountName: admin
containers:
- name: jenkins
image: jenkins/jenkins:latest
securityContext:
privileged: true
runAsUser: 0
ports:
- containerPort: 8080
volumeMounts:
- name: data
mountPath: /var/jenkins_home
volumes:
- name: data
persistentVolumeClaim:
claimName: pvc-nfs
/mnt/nfs/stg/jenkinsNFS 中存在的目錄。請讓我知道我在這里缺少什么?
感謝您的幫助。
uj5u.com熱心網友回復:
當存盤 IT 管理員匯出 NFS 共享時:/nfs-volume從192.168.72.136,那么在PersistentVolume規范中,路徑應該是/nfs-volume.
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/523602.html
上一篇:盡快消費Kafka主題中的訊息
