Bu yüzden, kendimi belirli bir çıkmaz haline getirdim ve problemimi çözmek için birkaç yol gördük ama aradaki bazı kısımları kaçırıyorum.
Sorunumun temeli, birkaç kritik debian VM'leri ve bu VM'leri barındırmak istediğim yeni bir ESXi sunucusuna sahip eski bir ESXi yönetilen sunucum var. Sunucular ayrı veri merkezlerinde ve VM'lerin gerçek kullanılan boyutu sadece birkaç Gbs iken doğrudan her biri şifrelenmiş LVM olarak kurulur, böylece ESXi onları tam dolu 3 tb sürücüler olarak görür. İdeal olarak, bu VM'lerin kritik olmayan parçalarının bir kopyasını oluşturmak istiyorum ve daha sonra bir noktada kesintileri bildirip donuyor ve kritik parçaları aktarıyordum. Disk şifrelenmemişse sadece sürücüleri küçültebilirdim ama benim anlayışım onları küçültmek için ideal olandan daha az olan sunucuları kapatmam gerekecek. Bu şekilde gördüğüm yollar alabilirim.
- Her 3tb VMDK dosyasını el ile aktarın (Son derece yavaş)
- Aktarımı azaltın ve aktarımı daha güzel hale getirmek için yeniden boyutlandırın (kesinti ideal değildir)
- Yeni VM'lere geçiş yapmak için DD, sfdisk, LVM araçları ve dökümün bazı kombinasyonlarını kullanın
3'ü kullanmayı çok isterdim ama ben bunu nasıl yapacağımı veya LVM'leri ve şifreli kurulumu koruyacak en iyi yolu nasıl yapacağımı tam olarak bilmiyorum.
Şifreleme nedeniyle diskin "yararlı" kısmının yalnızca VM'den dışarıdan görünen araçlarla taşınmasını gerçekleştiremezsiniz. Bu vMotion, Veeam B & R ve benzerlerini içerir.
Aklıma gelen tek şey, ücretsiz VMware dönüştürücü ile gerçekleştirilen geçiştir: Bu, sanal makineye "içeriden" bakarak bir "P2V" canlı geçişi gerçekleştirmenizi sağlar.
Hem VM'ye hem de ESXi ana bilgisayarına erişebilen, "güçlendirilmiş" linux makinesini taşıyacak ve VM ve ESXi ana bilgisayarının kök kimlik bilgilerini sağlayabilen bir windows VM'ye yükleyin. Makineye giriş yapacak ve "iç" den göçü gerçekleştirecek, disklerin birkaç GB dolu olduğunu ve sadece bunların aktarıldığını görecek. "Altyapıyı" seçerseniz, dönüştürücünün VM'nin zaten altyapıda olduğu gerçeğinden yararlanmaya çalışacağından şüpheliyim ve bu sizin durumunuza göre kötü.
Bunu evde ya da şifrelenmiş bir diskle üretmedim, ancak bir fiziksel hosttan bir ESXi ana bilgisayarına 1 TB disk ile bir P2V canlı geçiş gerçekleştirdim ve 1GBe ile geçişi yaklaşık 40 m sürdü. GB bağlantısı üzerinden tam 1 TB veri 3 saat civarındadır, bu nedenle dosyadan dosya türü kopyası gibi bir şey gerçekleştirdi.
Yani, bu P2V başarısız sonra en iyi senaryo oldu.
- LVM şifrelemesi ile hedefte bir kopya VM oluşturun.
-
İkinci bir VM yapın ve şifreli LVM'yi / mnt'ye bağlayın
Important so that the server itself is not running
- Erişim sorunlarını önlemek için kök kullanıcılar için sunucular arasında anahtar kopyalama
-
Aşağıdaki komutu çalıştırın
rsync -aHxvK --numeric-ids --progress --exclude=/etc/fstab --exclude=/etc/crypttab --exclude=/etc/initramfs-tools/conf.d/* --exclude=/etc/network/* --exclude=/mnt/* --exclude=/dev/* --exclude=/proc/* --exclude=/sys/* --exclude=/tmp/* --exclude=/boot/* --exclude=/root/* email@example.com:/* /mnt/
Bu, değişmeyen dosyaların çoğunu kopyalayacak ve sunucunun işleyişini bir "kopyasını" verecektir. Bu rsync'nin birçoğu çevrimiçi birkaç kılavuzda gösterilmektedir ancak şifrelenmiş birimler için / etc / crypttab'a ihtiyaç duyulduğunu veya önyükleme yapılmadığını ve initramfs'a ihtiyaç duyulduğunu veya önyükleme sırasında istenmeyen e-postaları yönetebildiğinizi buldum.
Bu yapıldıktan sonra kısa bir arıza süresi planlayın ve veritabanı ve web sunucuları gibi büyük hizmetleri kapatın ve yeni sunucuya uç noktaları getirmeden ve aktarmadan önce bu dizinlerin son aktarımını yapın.
Tek bir çözüm:
Hedef ana bilgisayarda yeni, boş bir sanal makine oluşturun.
Basit bir yardımcı sanal makine oluşturun veya yeniden kullanın.
Hedef VM'nin disklerini yardımcı VM'ye bağlayın, üzerlerinde bölümler ve dosya sistemleri oluşturun ve bunları monte edin. Eski bir (0.xx) grub sürümü kullanılıyorsa, dosya sistemlerinizi yaparken -I 128 kullanın!
Yardımcı VM'den, rsync aracılığıyla hedef VM dosya sistemlerine çalışan sistemden (hariç / proc ve / sys !!) mümkün olduğunca kopyalayın. --Numeric-ids, -H ve --sparse / - inplace gerekebilir. Kullanım - düşünceli düşünün.
Ne zaman paranız varsa, kısa bir kesinti için kaynak sisteminizi sıralayın (olabildiğince çok hizmeti kapatın, özellikle veritabanı sunucuları!) Ve son bir rsync yapın.
Kopyaya chroot. / Proc ve / sys mountpoints / dev dosyalarını düzeltin (MAKEDEV jenerik genellikle size mantıklı, udevden bağımsız bir set verir) ve bootloader (aygıt dosyalarının işaret ettiği basit bir grup kurulumunu yapmanın en kolay yolu) - ve Daha sonra ilk önyüklemede manuel seçenekleri kullanın, ardından çalışan sistem içinden doğru şekilde düzeltin).
Unchroot, Disks sökün ve ayırın. Kopyasını önyükleme (önce ağ bağlantısı kesildi. Büyük olasılıkla önyükleme seçeneklerini el ile değiştirmeniz gerekecektir).