Pages

Saturday, 6 April 2013

vSphere - CPU & Memory Reservation, Shares & Limits

Sebelum kita  pergi jauh, kita mesti tahu maksud Resources, Reservation, Shares dan Limits terlebih dulu.

Resources adalah CPU, Memory, Disk dan Network. Ia dibekalkan oleh ESX Host dan digunakan oleh VM. Jika ESX Host adalah cluster, maka cluster tersebut boleh kita panggil resource provider.

Setiap VM akan diberikan Memory dan CPU resources, terdapat 3 setting yang boleh mempengaruhi sebanyak mana VM akan dapat jumlah Memory dan CPU resources.
 
Reservation adalah jumlah resources yang dijamin akan diberikan kepada VM atau resource pool.

Terdapat perbezaan maksud Reservation dan Using. VM mungkin boleh menggunakan resource melebihi atau kurang daripada reservation resource yang diperuntukkan. Dan juga, jika VM tidak menggunakan kesemua resource yang diberikan (reservation), ia boleh berkongsi CPU dengan VM lain tetapi tidak untuk RAM. Oleh itu, bolehlah dikatakan bahawa CPU reservation lebih fleksibel berbanding Memory Reservation.

Jika VM mempunyai Reservation, ESX Host mesti mempunyai sekurang-kurangnya jumlah resource yang tidak digunakan (unused) dan bukan Reservation untuk VM lain bersamaan dengan jumlah Reservation yang diberikan. Jika tidak, VM tidak boleh dihidupkan. Resource tidak boleh diperuntukkan (reserve) kepada lebih satu entiti pada satu-satu masa.

Lihat contoh di bawah :-


ESX host mempunyai 16 GHz (= 8 x 2 GHz cores) dan 16 GB RAM.
VM-1 and VM-2 masing-masing mempunyai 8 vCPUs dan 16 GB vRAM.
VM-1 dijamin mempunyai 13 GHz CPU dan 10 GB Memory.
VM-1 sedang menggunakan 11 GHz CPU dan 9 GB Memory.  (Ingat! Menggunakan != Reserve)

Akibatnya

VM-2 boleh menggunakan CPU sehingga 5 GHz. (bukan 3 GHz, CPU reservations lebih fleksibel)
VM-2 boleh dijamin (reserve) sehingga 3 GHz.(Reservations tidak boleh bertindih dengan reservation entiti lain)
VM-2 boleh menggunakan Memory sehingga 6 GB. (bukan 7 GB. Memory reservations tidak fleksibel)
VM-2 boleh dijamin (reserve) sehingga 6 GB. (Reservations tidak boleh bertindih dengan reservation entiti lain)

Jika VM-2 mempunyai 7GB reservation, ia tidak boleh dihidupkan kerana telah melebihi jumlah fizikal Memory ditolak dengan jumlah reservation VM-1 (16 - 10 = 6, tidak cukup 1GB).

Limit adalah jumlah had maksimum yang diberikan kepada VM. Server boleh memperuntukkan lebih banyak Memory/CPU daripada jumlah Reservation tetapi tidak boleh melebihi Limit.

Shares adalah nisbah berapa banyak VM akan mendapat resource jika berlaku persaingan untuk mendapatkan resource diantara VM. Shares hanya terpakai untuk VM yang berada pada hirarki yang sama atau berada pada parent resource pool yang sama.

No comments:

Post a Comment