56

既にフォーマットしてデータをプロビジョニングしている Google Compute Engine 永続ディスクをソースとして PersistentVolume を作成しました。Kubernetes は、PersistentVolume が利用可能であると言います。

kind: PersistentVolume
apiVersion: v1
metadata:
  name: models-1-0-0
  labels:
    name: models-1-0-0
spec:
  capacity:
    storage: 200Gi
  accessModes:
    - ReadOnlyMany
  gcePersistentDisk:
    pdName: models-1-0-0
    fsType: ext4
    readOnly: true

次に、PersistentVolumeClaim を作成して、このボリュームを複数のノードにまたがる複数のポッドにアタッチできるようにしました。ただし、kubernetes は保留状態にあると無期限に言います。

kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: models-1-0-0-claim
spec:
  accessModes:
    - ReadOnlyMany
  resources:
    requests:
      storage: 200Gi
  selector:
    matchLabels:
      name: models-1-0-0

洞察はありますか?セレクターに何か問題があるように感じます...

永続ディスクをデータで事前構成し、複数のノードにまたがるポッドをすべてそこから読み取れるようにすることさえ可能ですか?

4

11 に答える 11

12

Microk8s を使用している場合は、PersistentVolumeClaim を正常に開始する前にストレージを有効にする必要があります。

ただ行う:

microk8s.enable storage

デプロイを削除して、最初からやり直す必要があります。

「保留中」の PersistentVolumeClaims を手動で削除する必要がある場合もあります。なぜなら、それらを作成した Helm チャートをアンインストールしても PVC がクリアされないことがわかったからです。

これを行うには、最初に名前のリストを見つけます。

kubectl get pvc --all-namespaces

次に、次のように各名前を削除します。

kubectl delete pvc name1 name2 etc...

ストレージが有効になったら、展開を再適用するとうまくいくはずです。

于 2020-02-13T17:55:31.360 に答える
-4

VM にも十分なディスク容量があることを確認してください。

于 2019-05-10T20:56:05.857 に答える