2016-10-31 20 views
8

Kubernetes üzerinde bir MySQL dağıtımı çalıştırıyorum ancak ayrılmış alanım yeterli değildi, başlangıçta 50GB kalıcı bir ses ekledim ve şimdi bunu 100GB'a genişletmek istiyorum.Kalıcı Bir Birim yeniden boyutlandırılabilir mi?

Zaten kalıcı bir birim isteğinin oluşturulduktan sonra değiştirilemediğini gördüm, ancak bir şekilde kalıcı birimi yeniden boyutlandırabilir ve sonra da hak talebimi yeniden oluşturabilir miyim?

cevap

9

Hayır, Kubernetes henüz otomatik yeniden boyutlandırmayı desteklemiyor.

Disk yeniden boyutlandırma şu anda tamamen manuel bir işlemdir.

belirli bir kapasiteli bir Kubernetes PV nesne oluşturulur ve PV bir PVC'ye bağlı ve ekli/bir bakla ile kullanım için bir düğüm şekilde monte edilmiş olduğu varsayılırsa. Hacim boyutunu artırırsanız, bölmeler diski sorun çıkarmadan kullanmaya devam edebilir, ancak ek alana erişemezler.

Birimdeki ek alanı etkinleştirmek için bölümleri el ile yeniden boyutlandırmanız gerekir. Bunu, here talimatlarını uygulayarak yapabilirsiniz. Bunu ayırmak için elle yeniden boyutlandırmak için gerekli adımlarda/takmak erişime sahip olduğunuz bazı VM örneğine birimini bağlamaya ve çalıştırmak yerine, bekleyin, birinci cildini başvuran Bölmeleri silmek gerekir.

Açıldı konu #35941 özellik isteği izlemek için. Ben O (PVC/PV ve ilgilenerek aynı sonuç elde etmek mümkündür 1.9

yılında potansiyel gelebileceğini düşünmektelerse

PVC/PV 'yeniden boyutlandırma' açısından
+0

resmi dokümanlar bakın ama 'kalıcı hacim claim' ve zaten' persisten volume' boyutu belirtmek? mümkün mü? nazik cevabınız için teşekkürler – perrohunter

+2

Bir PV/PVC depolama keşfi için kullanılır. Depolama için istediğiniz minimum gereksinimlerle bir PVC oluşturulur, bu minimum gereksinimleri karşılayan mevcut (bağlanmamış) bir PV'ye bağlanır. PV nesnesi gerçek depolamanın "temsili" dir. Tanımlanacak kapasiteyi gerektirir. PVC/PV bağlı olduğunda, PVC yerine getirildiği için ya kapasite önemli değildir. PVC, bir kapsül tarafından referans alındığında, kapsül yalnızca bu birimi monte etmek için gerekli olan PV nesnesindeki bilgileri kullanır (kapasite değerlerini dikkate almaz). –

+0

@SaadAli, bir uygulama için kullanılabilir depolama alanını sınırlamak için herhangi bir yol yok mu? – Jonathan

1

, o halen, K8S desteklenmeyenler mesela) GCE PD olsa ..

Örneğin, ben bir PVC ve bir Depolama sınıf kaynağı üzerinden dinamik olarak sağlanan PV ile, bir gitlab dağıtım vardı. Gerekirse burada ayrıntılı olarak

  1. bir PD anlık (veri umurumda koşuluyla)
  2. "koru" dır PV ReclaimPolicy sağlamak, yama atın:: İşte akıp giden adımlardır https://kubernetes.io/docs/tasks/administer-cluster/change-pv-reclaim-policy/ (PV manifestosunu oluştururken kullanışlı sonra)
  3. kubectl describe pv <name-of-pv>
  4. dağıtım/pod Sil
  5. PVC ve PV
  6. PD olarak kabul edilmektedir olun Sil (muhtemelen gerekli değildir, ancak daha temiz görünüyor) herhangi bir şey tarafından kullanılmamak (ör. google konsol, hesaplama/diskleri sayfası) bulut sağlayıcısı ile
  7. yeniden boyutlandırma PD (GCE ile, örneğin, bu aslında, disk kullanılıyor olsa bile, daha önceki bir aşamada yapılabilir)
  8. oluştur K8S tezahür PersistentVolume (bu Daha önce StorageClass kaynağının kullanımıyla dinamik olarak yapılmıştır). PersistentVolume yaml spec, ben "gcePersistentDisk: pdName: <name-of-pd>"sen spec.capacity güncellemek emin olun ben 3. adımda de yakaladı ediyorum diğer ayrıntıların yanı sıra, tanımlanmış vardı.(Kuşaklar için gerekli olmasa da, ve burada hiçbir etkisi yoktur, sen PVC manifest'te depolama kapasitesi/değerini güncellemek isteyebilirsiniz,) PVolmasını istediğiniz yeni kapasite
  9. kubectl apply depolama (veya eşdeğeri) dağıtım/kapsül, PVC ve PV

notu yeniden: Ben şahsen gibi görerek, bunları kaldırmak için tercih olsa .. kaynaklarını bazı adımlar böyle mevcut dağıtım/pod bazı silmek gibi gerekli olmayabilir ReclaimPolicy'nun Retain olduğunu biliyorum, ve bir enstantanım var.

RBD, gcePersistentDisk, awsElasticBlockStore, cüruf, glusterfs Bu etkinleştirme gerektirir:

0

Evet, sürüm sonra olabilir 1.8

İlgili konular