我读过许多与我的问题类似的链接,但它们都没有帮助我解决问题。
类似链接:
问题描述:
我已经使用创建了一个新的 Kubernetes 集群Kubespray
。当我想在其中一个容器中执行一些命令时,我遇到了以下错误:
kubectl exec -it -n rook-ceph rook-ceph-tools-68d847b88d-7kw2v -- sh
Run Code Online (Sandbox Code Playgroud)
OCI 运行时执行失败:执行失败:无法启动容器进程:打开 /dev/pts/1:不允许操作:未知命令以退出代码 126 终止
我也登录了运行pod的节点,并尝试使用docker exec
命令执行容器,但错误没有改变。
解决方法:
据我发现,错误代码(126)意味着权限不足,但我sh
在 Docker 或 Kubernetes 中没有遇到过这种错误(例如执行)。
我还检查了是否SELinux
启用(正如第三个链接中所述)。
apt install policycoreutils
sestatus
# Output
SELinux status: disabled
Run Code Online (Sandbox Code Playgroud)
在第5个链接中,据说检查你是否更新了内核,而我没有升级节点上的任何内容。
id; stat /dev/pts/0
# output
uid=0(root) gid=0(root) groups=0(root)
File: /dev/pts/0
Size: 0 Blocks: …
Run Code Online (Sandbox Code Playgroud)我使用 rook 构建 ceph 集群。但是我的 pvc 陷入待处理状态。当我使用 kubectl describe pvc 时,我发现来自 persistencevolume-controller 的事件:
\nwaiting for a volume to be created, either by external provisioner "rook-ceph.rbd.csi.ceph.com" or manually created by system administrator\n
Run Code Online (Sandbox Code Playgroud)\n我的所有 Pod 都处于运行状态:
\nNAME READY STATUS RESTARTS AGE\ncsi-cephfsplugin-ntqk6 3/3 Running 0 14d\ncsi-cephfsplugin-pqxdw 3/3 Running 6 14d\ncsi-cephfsplugin-provisioner-c68f789b8-dt4jf 6/6 Running 49 14d\ncsi-cephfsplugin-provisioner-c68f789b8-rn42r 6/6 Running 73 14d\ncsi-rbdplugin-6pgf4 3/3 Running 0 14d\ncsi-rbdplugin-l8fkm 3/3 Running 6 14d\ncsi-rbdplugin-provisioner-6c75466c49-tzqcr 6/6 Running 106 14d\ncsi-rbdplugin-provisioner-6c75466c49-x8675 6/6 Running 17 14d\nrook-ceph-crashcollector-compute08.dc-56b86f7c4c-9mh2j 1/1 Running 2 12d\nrook-ceph-crashcollector-compute09.dc-6998676d86-wpsrs 1/1 Running …
Run Code Online (Sandbox Code Playgroud) 我在裸机上的 ubuntu 上安装 kubernetes。我部署了1个master和3个worker。然后部署 rook,一切工作正常。但是当我想在其上部署 wordpress 时,我收到此错误
无法安装 pod“wordpress-mysql-b78774f44-lxtfv_default(ffb4ff12-553e-11e9-a229-52540076d16c)”的卷:等待卷附加或安装 pod“default”/“wordpress-mysql-b78774f44-lxtfv 时超时” ”。已卸载卷的列表=[mysql-persistent-storage]。未附加卷的列表=[mysql-persistent-storage default-token-nj8xw]
#kubectl describe pods wordpress-mysql-b78774f44-lxtfv
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Warning FailedScheduling 7m11s (x4 over 7m18s) default-scheduler pod has unbound immediate PersistentVolumeClaims (repeated 3 times)
Normal Scheduled 7m5s default-scheduler Successfully assigned default/wordpress-mysql-b78774f44-lxtfv to worker3
Warning FailedMount 2m46s (x2 over 5m1s) kubelet, worker3 Unable to mount volumes for pod "wordpress-mysql-b78774f44-lxtfv_default(ffb4ff12-553e-11e9-a229-52540076d16c)": timeout expired waiting for volumes to attach or mount for pod "default"/"wordpress-mysql-b78774f44-lxtfv". list …
Run Code Online (Sandbox Code Playgroud) 我正在尝试在现有存储类名称之上/基于现有存储类名称创建一个持久卷。然后我想把 PVC 贴在上面;使他们受到约束。运行下面的代码,会给我我想要的“sftp-pv-claim”,但它不绑定到我的 PV(“sftp-pv-storage”)。它的状态是“待定”。
我收到的错误消息是:“PersistentVolume“sftp-pv-storage”无效:规范:必需值:必须指定卷类型”。如果有人能指出我为什么收到错误消息的正确方向,我将不胜感激。
眼镜:
我正在使用舵图创建 PV 和 PVC。
我正在使用 Rancher UI 来查看它们是否被绑定以及是否生成了 PV。
我使用的存储是带有 Rook 的 Ceph(允许动态配置 PV)。
错误:
我收到的错误消息是:“PersistentVolume“sftp-pv-storage”无效:规范:必需值:必须指定卷类型”。
尝试:
我试过使用 claimRef 和 matchLabels 无济于事。
我在我的 PV 规格中添加了“volumetype: none”。
如果我将 "hostPath: path: "/mnt/data"" 添加为 PV 的规范,它将显示为可用 PV(具有本地节点路径),但我的 PVC 未绑定到它。(此外,出于部署目的,我不想使用 hostPath。
## Create Persistent Storage for SFTP
## Ref: https://www.cloudtechnologyexperts.com/kubernetes-persistent-volume-with-rook/
kind: PersistentVolume
apiVersion: v1
metadata:
name: sftp-pv-storage
labels:
type: local
name: sftp-pv-storage
spec:
storageClassName: rook-ceph-block
capacity:
storage: 10Gi
accessModes:
- ReadWriteMany
persistentVolumeReclaimPolicy: Retain
allowVolumeExpansion: true
volumetype: none
--- …
Run Code Online (Sandbox Code Playgroud) 我正在将 rook-ceph 部署到 minikube 集群中。一切似乎都正常。我向虚拟机添加了 3 个未格式化的磁盘并已连接。我遇到的问题是,当我运行 ceph status 时,我收到一条健康温暖消息,告诉我“1 pg 尺寸不足”。我到底该如何解决这个问题?
文档(https://docs.ceph.com/docs/mimic/rados/troubleshooting/troubleshooting-pg/)指出“如果您尝试在单个节点上创建集群,则必须更改 osdrush 的默认值在创建监视器和 OSD 之前,在 Ceph 配置文件中将选择叶类型设置从 1(表示主机或节点)到 0(表示 osd)。 ” 我不知道在哪里进行此配置,但是否有其他方法可以解决此问题我应该知道的,请告诉我。谢谢!
我在裸机上的 ubuntu 上安装 kubernetes。我部署了1个master和3个worker。然后部署 rook,一切工作正常。但是当我想在其上部署 wordpress 时,它卡在容器创建中,然后我删除了 wordpress,现在我收到此错误
卷已由 pod default/wordpress-mysql-b78774f44-gvr58 附加。状态 运行
#kubectl describe pods wordpress-mysql-b78774f44-bjc2c
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal Scheduled 3m21s default-scheduler Successfully assigned default/wordpress-mysql-b78774f44-bjc2c to worker2
Warning FailedMount 2m57s (x6 over 3m16s) kubelet, worker2 MountVolume.SetUp failed for volume "pvc-dcba7817-553b-11e9-a229-52540076d16c" : mount command failed, status: Failure, reason: Rook: Mount volume failed: failed to attach volume pvc-dcba7817-553b-11e9-a229-52540076d16c for pod default/wordpress-mysql-b78774f44-bjc2c. Volume is already attached by pod default/wordpress-mysql-b78774f44-gvr58. Status Running
Normal Pulling …
Run Code Online (Sandbox Code Playgroud)