gpt4 book ai didi

kubernetes - 如何使用连接到主机的 block 设备,作为 pod 中的 block 设备

转载 作者:行者123 更新时间:2023-12-05 09:12:39 28 4
gpt4 key购买 nike

问题:如何在 pod 中使用连接到主机的原始设备作为 block 设备。

我尝试使用类型为“BlockDevice”的“hostPath”

volumes:
- my-data:
hostPath:
path: /dev/nvme1n2
type: BlockDevice
containers:
.....
volumeDevices:
- name: my-data
devicePath: /dev/sda

此配置给我以下错误。

Invalid value: "my-data": can only use volume source type of PersistentVolumeClaim for block mode

我可以使用 PersistentVolumePersistentVolumeClaim 实现吗?有人可以帮我做一个示例配置吗?感谢您的帮助。

最佳答案

Support for Block devices in K8s允许用户和管理员使用 PV 和 PVC 将原始 block 设备挂载到 Pod 中。下面的摘录显示了一个小用例。

  • 创建一个引用主机上原始设备的 PV,比如 /dev/xvdf
kind: PersistentVolume
apiVersion: v1
metadata:
name: local-raw-pv
spec:
volumeMode: Block
capacity:
storage: 100Gi
local:
path: /dev/xvdf
accessModes:
- ReadWriteOnce
persistentVolumeReclaimPolicy: Delete
  • 为应用程序创建一个声明 block 设备的 PVC
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: block-pvc
spec:
accessModes:
- ReadWriteOnce
volumeMode: Block
resources:
requests:
storage: 10Gi
  • 使用上述声明创建 pod,它将在路径 /dev/xvda 的 pod 内挂载主机设备 /dev/xvdf
apiVersion: v1
kind: Pod
metadata:
name: pod-with-block-volume
spec:
containers:
- name: some-container
image: ubuntu
command: ["/bin/sh", "-c"]
args: [ "tail -f /dev/null" ]
volumeDevices:
- name: data
devicePath: /dev/xvda
volumes:
- name: data
persistentVolumeClaim:
claimName: block-pvc

关于kubernetes - 如何使用连接到主机的 block 设备,作为 pod 中的 block 设备,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57644143/

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