Bagaimana saya harus menyalin template VM saya antara pusat data vSphere?

9

Latar Belakang / Arsitektur Lingkungan:

Lingkungan saya saat $corp_overlords$ini diatur dalam model hub-and-spoke dengan hub kantor rumah yang diberkahi dengan teknologi (SAN, cluster ESXi bladecenter / bladesystem, koneksi internet serat, dll.) Yang terhubung ke sejumlah jari-jari situs remote yang tidak begitu kaya, dan biasanya mengandung satu server host ESXi dan terhubung ke hub kantor pusat melalui T1. Semua lalu lintas yang berasal dari situs remote mana pun kembali ke kantor pusat melalui "jaringan MPLS" (yang sebenarnya hanyalah T1 yang menghubungkan situs remote ke kantor pusat).

Di kantor pusat, di SAN, kami memiliki sejumlah templat VM yang telah saya buat untuk menggunakan VM. Mereka disimpan dalam volume NFS, yang merupakan datastore vSphere, dilampirkan ke objek pusat data kantor pusat di dalam vSphere.

Setiap situs jauh memiliki objek datacenter vSphere yang sesuai, berisi objek datastore yang terhubung ke penyimpanan yang terpasang secara lokal pada server host ESXi yang secara fisik terletak di situs jarak jauh.

Karena template VM ini ada pada volume NFS, mereka menempati ~ 40 GiB (thin-provisioning). Sebagai file pada NTFS (atau Linux FS), mereka menempati ~ 100 GiB.

Pertanyaan:

Bagaimana saya harus menyalin 40 GiB ini dari data yang disediakan tipis (yang menempati 100 GiB ruang sistem file) antara situs saya?

Saya berada di bawah kendala yang saya miliki sekitar 5 hari untuk melakukannya, dan tidak dapat mengganggu (secara nyata) dengan "lalu lintas jaringan normal."

HopelessN00b
sumber
Anda punya bladecentre di rumah ?!
Tom O'Connor
@ TomO'Connor Heh. Tidak saya rumah kantor, tapi korporasi "kantor" situs. Meskipun, saya yakin jika saya bertanya dengan baik, saya bisa mengangkut EVA SAN dan HP Bladesystem lama untuk keperluan pribadi saya ... berharap bahwa saya tidak memiliki ~ $ 25.000 itu akan menghabiskan biaya untuk menjalankan barang-barang di rumah.
HopelessN00b
Ohhh Itu lebih masuk akal .. hanya
Tom O'Connor

Jawaban:

13

Bagaimana kalau menggunakan ovftool untuk menyalin template langsung antara host?

Saya telah menggunakan ini untuk VM sebelumnya, dan itu bekerja dengan cukup baik. Tidak yakin apakah itu juga berfungsi untuk templat, tetapi jika tidak, Anda bisa menyamarkan templat sementara ke VM untuk menyalinnya.

Instruksi, dengan contoh ada di sini .

Anda juga bisa menggunakan ovftool untuk mengonversi templat Anda menjadi .ovfpaket, yang seharusnya sangat kompak, dan kemudian mentransfer paket antara pusat data dengan BITS atau FTP atau SCP atau protokol apa pun yang Anda inginkan.

VFrontDe
sumber
Pilihan bagus !! Saya sering melupakan alat cli.
ewwhite
Saya mengedit jawaban Anda, dan menambahkan kalimat terakhir di sana, karena itulah yang akhirnya saya lakukan. Mengubah template ke dalam .ovfpaket membuat mereka masing-masing beberapa GB, yang saya dapat dengan mudah mentransfer antar situs dengan BITS.
HopelessN00b
8

Pilihan:

Cara saya melihatnya, saya memiliki tiga pendekatan yang mungkin, meskipun saya sangat berharap saya kehilangan yang lebih baik bahwa seseorang di sini dapat mengarahkan saya. (Idealnya yang membuat saya hanya memindahkan 40 GiB data aktual , dan dengan metode "latar belakang" yang dapat dilanjutkan).)

  1. Salin file antara datastore melalui klien vSphere.
    • Keuntungan: Hanya bergerak ~ 40 GiB, bukan ~ 100 GiB.
    • Kerugian: Segala sesuatu yang lain - tidak dapat dibuka kembali, bukan latar belakang / kecepatan-dibatasi, antarmuka SUCKS .

  2. Salin file antara tamu Windows menggunakan BITS
    • Keuntungan: Resumable, transfer latar belakang.
    • Kerugian: Memindahkan ~ 60 GiB data yang tidak benar-benar ada.
    • Bonus: Menggunakan PowerShell. <3
    • Bonus Double Secret Probation : PowerShell Remoting memungkinkan untuk melakukan ini dalam satu perintah tunggal.

  3. Salin file antara host ESXi melalui SCP
    • Keuntungan: Kecepatan-dipercepat dan berpotensi dilanjutkan.
    • Kerugian: Memindahkan ~ 60 GiB data yang tidak benar-benar ada. Bukan transfer latar belakang.
    • Bonus: Neck beard. Leher-jenggot ekstra untuk kelanjutan kembali.

  4. Opsi yang lebih baik disarankan pada Kesalahan Server.
    • Keuntungan: Transfer latar belakang yang dapat bergerak cepat dan terbatas yang hanya bergerak ~ 40 GiB data yang ada.
    • Kekurangan: Pemberian hadiah biaya perwakilan.
    • Bonus: Pelajari sesuatu yang baru, benarkan bermain ServerFault di tempat kerja.
HopelessN00b
sumber
Bagaimana dengan menyusutkan datastore dengan powerCLI lalu menggunakan BITS untuk memindahkan file? Tentunya coba ini dengan klon terlebih dahulu.
Nathan C
@NathanC Bukan pemikiran yang buruk, tetapi toko data di rumah kantor SAN sebenarnya adalah 2TB volume NFS yang berisi lebih dari sekedar templat yang dimaksud. Kami juga kekurangan ruang kosong di SAN, jadi kami tidak dapat mengalokasikan volume NFS tambahan untuk membuat datastore baru untuk tujuan ini (atau mentransfer berbagai hal untuk berakhir dengan satu datastore yang hanya berisi apa yang perlu kami salin).
HopelessN00b
Er, oops ... istilah yang salah. Penyusutan terjadi pada volume , bukan datastore. Saya butuh minuman, jelas.
Nathan C
1
Opsi 5. Salin templat ke penyimpanan yang dapat dilepas dan kirimkan ke situs jarak jauh.
joeqwerty
@ joeqwerty Ya, sneakernet selalu menjadi pilihan. Mungkin bukan karena ini, karena alasan non-teknis, tetapi itu tidak berarti itu bukan jawaban yang baik untuk kasus umum. (Saya sudah mengharapkan seseorang untuk memasang FedEx / UPS / USPS sebagai jawaban untuk ini di beberapa titik.)
HopelessN00b
5

Ini ide yang agak menarik untuk Anda. Ini tidak akan membantu dengan penyemaian awal Anda, tetapi saya ingin tahu apakah menggunakan sesuatu seperti produk gratis Crashplan akan membantu Anda dengan templat Anda.

https://www.code42.com/store/

Itu dedupe dan blok diferensial tingkat, sehingga Anda dapat menginstalnya pada satu server lokal di HQ sebagai "seeder", dan pada setiap server berbicara (dalam VM saya kira) sebagai "penerima". Atur cadangan untuk hanya menyertakan folder tempat templat akan disimpan di HQ Server. Itu juga dapat mencadangkan ke beberapa tujuan (seperti setiap "spoke") https://support.code42.com/CrashPlan/Latest/Getting_Started/Choosing_Destinations

Langkah-langkahnya (setelah menyiapkan aplikasi Crashplan di setiap sisi) akan berfungsi seperti:

  1. Salin templat dari datastore ke server "seed" ke direktori yang sedang dipantau Crashplan. Pada jaringan gigabit ini mungkin memerlukan sedikit waktu tetapi tidak terlalu buruk.
  2. Crashplan harus memantau dan mulai mencadangkan file ke jari-jari / penerima. Ini jelas akan memakan waktu cukup lama.
  3. Setelah penyemaian / pencadangan awal, ketika templat yang akan datang mengubah salin dari datastore yang sebenarnya ke direktori server "seed" yang sedang dipantau Crashplan, menimpa salinan templat asli. Kemudian Crashplan akan menyimpulkan dan hanya mengganti perubahan level blok pada jari-jari.

Hanya sebuah ide ... mungkin jalan yang menarik untuk turun dan melihat apakah itu berfungsi sebagai replikasi tingkat blok dedupe / blokir orang miskin hanya untuk file-file ini.

Pembersih
sumber
5

Saya telah melakukan jenis pemindahan ini sejumlah cara, tetapi mengingat apa yang telah Anda jelaskan ...

FedEx atau UPS , dengan twist ...

Saya tahu bahwa server yang digunakan adalah server HP ProLiant dan Dell PowerEdge. VMware tidak memiliki dukungan yang baik untuk perangkat yang dapat dilepas (misalnya USB) sebagai target datastore. Namun, menggunakan drive logis RAID 0 drive tunggal (dalam HP-speak) di situs utama dapat berfungsi. Anda dapat menambah dan menghapus disk yang terpasang secara lokal pada sistem HP dan Dell dan menggunakannya sebagai sarana untuk mentransport datastore.

Sebagai templat, Anda dapat memindahkan / menyalinnya ke disk lokal Anda melalui vCenter. Kirim disk. Masukkan ke server mandiri yang menerima. Array dan datastore akan dikenali melalui rescan sistem penyimpanan. Salin data. Keuntungan.

Saya juga menggunakan ini sebagai sarana untuk menyalin salinan untuk replikasi vSphere, karena 24 jam delta jauh lebih mudah dikelola daripada banyak sinkronisasi penuh.

putih
sumber
3

Ini adalah metode yang saya gunakan cukup sering untuk skenario semacam ini. Tampaknya kontra-intuitif karena Anda mengunggah file dari dalam VM yang tersimpan di datastore, ke datastore itu sendiri. Namun, ini memberi Anda lebih banyak kontrol atas bagaimana transfer dilakukan.

  • Gunakan WinRAR atau 7Zip untuk memecah template Anda menjadi potongan 1GB-2GB.
  • Buat VM di server ESXi di setiap situs jarak jauh. Sumber daya minimal diperlukan, ini hanya area pementasan.
  • Lampirkan VMDK ke masing-masing VM yang cukup besar untuk menampung data yang Anda transfer.
  • Instal OS dan alat transfer pilihan Anda (saya menggunakan server SFTP untuk ini).
  • Unggah templat RAR'd ke pementasan VM.
  • Hapus kompresi templat RAR'd.
  • Gunakan vSphere atau UI web untuk mengunggah templat dari VM pementasan ke ESXI datastore. (ini akan menjadi transfer CEPAT).

Pro:

Dengan memecah templat menjadi potongan-potongan kecil Anda mengurangi risiko korupsi data selama transfer. (Jika file rusak, Anda hanya perlu mengunggah ulang bagian RAR itu, daripada keseluruhan file 40GB.)

Anda hanya mentransfer 40GB (mungkin lebih sedikit karena RAR'ing akan memampatkan lebih lanjut).

Anda mendapatkan pilihan utilitas transfer saat Anda melakukan transfer di dalam OS pilihan Anda.

Cons:

Anda harus membuat VM pementasan. Saya membuatnya lebih mudah dengan memiliki template yang sudah dibuat yaitu <1GB yang baru saja menginstal OS telanjang + server SFTP.

Mengompresi / mendekompresi templat 40GB akan memakan waktu ~ 4-6 jam tergantung pada sumber daya CPU Anda.

jtintinen
sumber
1

Saya telah berurusan dengan masalah yang sama beberapa kali dan sekitar separuh dari waktu saya menemukan bahwa saya jauh lebih baik untuk hanya membangun mesin baru di lokasi terpencil. Ini terutama berlaku untuk apa yang saya sebut mesin "templat". Versi saya tentang itu adalah mesin yang cukup mendasar. Versi Anda mungkin sesuatu yang sedikit berbeda.

Keith Stokes
sumber