2016-10-31 21 views
8

私はKubernetesでMySQLを展開していますが、割り当てられた領域が十分ではないようですが、当初は永続的なボリュームを50GBに追加しましたが、現在は100GBに展開したいと考えています。永続ボリュームのサイズを変更できますか?

永続的なボリュームの主張は、作成後は不変ですが、どういうわけか、永続的なボリュームのサイズを変更してから、自分の主張を再作成できますか?

答えて

9

いいえ、Kubernetesは自動ボリュームのサイズ変更をまだサポートしていません。

ディスクのサイズ変更は、現在のところ完全な手動プロセスです。

与えられた容量のKubernetes PVオブジェクトを作成し、そのPVをPVCにバインドし、ポッドで使用するためにノードに接続またはマウントしたとします。ボリュームサイズを大きくすると、ポッドは引き続き問題なくディスクを使用できますが、追加スペースにアクセスすることはできません。

ボリュームの追加領域を有効にするには、パーティションのサイズを手動で変更する必要があります。 hereの指示に従ってこれを行うことができます。ボリュームを参照しているポッドを最初に削除し、アクセスがあるVMインスタンスにボリュームを手動で接続またはマウントしてから、サイズを変更するために必要な手順を実行するよりも、切り離すのを待つ必要があります。

機能要求を追跡するために公開された問題#35941。 PVC/PVの面では

+0

で公式ドキュメントを参照してくださいしかし、 '永続的なボリュームclaim'と' persisten volume'はすでにサイズを指定して、私はサイズを指定せずに、それらを作成する必要がありますか?それは可能ですか?お返事ありがとうございます – perrohunter

+2

PV/PVCがストレージの検出に使用されています。 PVCは、ストレージに必要な最小限の要件で作成され、最小要件を満たす利用可能な(バインドされていない)PVにバインドされます。 PVオブジェクトは、実際のストレージの「表現」です。容量を定義する必要があります。 PVC/PVがバインドされると、PVCが満たされているため、どちらの容量も重要ではありません。 PVCがポッドによって参照されると、ポッドはそのボリュームのマウントに必要なPVオブジェクト内の情報のみを使用します(容量値は無視されます)。 –

+0

@SaadAliはアプリケーションに利用できるストレージスペースを制限する方法はありませんか? – Jonathan

1

「リサイズ」、それはまだK8Sではサポートされていない、私はそれが潜在的に1.9

に到着する可能性が信じているのにそれはPVC/PVと(を扱うことにより、同じ結果を達成することが可能ですたとえば、GCE PD ..

たとえば、StorageClassリソース経由でPVCと動的にプロビジョニングされたPVを持つgitlabデプロイメントがありました。ここで私が駆け抜けた手順は次のとおりです。

  1. 、ここで説明するようパッチ必要に応じて、PVのReclaimPolicyは「保持」されていることを確認し(あなたがデータを気にして)
  2. をPDのスナップショットを取る:https://kubernetes.io/docs/tasks/administer-cluster/change-pv-reclaim-policy/
  3. kubectl describe pv <name-of-pv>
  4. (後に現れPVを作成する際に有用な)展開/ポッド削除(おそらく必須ではないが、しかしクリーナーらしい)
  5. PVCを削除して、PV
  6. PDは次のように認識されていることを確認何でも使用されていません(例: Googleコンソール、計算/ディスクページ)
  7. クラウドプロバイダでPDをリサイズする(GCEを使用すると、たとえば、ディスクが使用中であっても、実際には早い段階で行うことができます)
  8. k8s PersistentVolumeマニフェストの作成以前はStorageClassリソースを使用して動的に実行されていました)。 PersistentVolume yaml仕様では、"gcePersistentDisk: pdName: <name-of-pd>"が定義されていましたが、それ以外の詳細は手順3でわかりました。spec.capacityを更新してください。(後世のために必須ではないが、ここでは効果がありません、あなたはあなたのPVCマニフェストにおけるストレージ容量/値を更新したいことがあり、)あなたはPVが持ちたい新しい容量
  9. kubectl applyに保存(または同等の) 、展開/ポッドを再作成PVCとPV
  10. する

注:私は個人的として見て、それらを削除することを好むものの、いくつかのステップは、...など既存の展開/ポッドの一部を削除するなど、必要不可欠なリソースではないかもしれません私はReclaimPolicyがRetainであり、スナップショットがあることを知っています。

0

はい、それはバージョン1.8

4

後にそれはいくつかのボリュームタイプにKubernetes 1.9(1.8アルファ)で可能である、とすることができる:gcePersistentDisk、awsElasticBlockStore、燃えがら、glusterfs、RBDは

それが可能必要がアドミッションプラグインとストレージクラスのallowVolumeExpansionフィールドがtrueに設定されています。

https://kubernetes.io/docs/concepts/storage/persistent-volumes/#expanding-persistent-volumes-claims

関連する問題