Tuning TCP/IP Stack di Solaris Zones

Posted on


Solaris memungkinkan kita untuk melakukan tuning, tweak, dan mengatur ulang berbagai parameter yang terkait dengan TCP/IP stack disaat system sedang berjalan. Fitur Solaris ini mampu mengubah parameter penting dengan cepat dan nyaman, menggunakan program atau command yang bernama “ndd”.

Setiap pengguna dapat mengeksekusi program ini untuk sekedar membaca pengaturan parameter saat ini, tapi hanya super-user yang diperbolehkan untuk menjalankan “ndd -set” untuk mengubah nilai-nilai dari parameter-paremeter tersebut.

Untuk membaca parameter kita bisa gunakan “ndd -get”, dan untuk melakukan pengaturan kita bisa menggunakan “ndd -set”.

Solaris juga mempunyai fitur yang bernama zone atau container yang biasa disebut sebagai virtualisasi dilevel Operating System.

Pada tulisan ini tidak dibahas bagaimana melakukan konfigurasi Container/Zone, tapi jika Anda berminat, berikut howto singkat bagaimana melakukan konfigurasi container/zone di Solaris 10.

Dibawah ini adalah bagaimana caranya agar kita bisa melakukan tuning TCP/IP stack atas zone-zone yang ada di Solaris, kuncinya hanya satu, resource ethernet harus diset “Exclusive” bukan “Shared”.

“The shared-IP zones always share the IP layer with the global zone, and the exclusive-IP zones always have their own instance of the IP layer. Both shared-IP zones and exclusive-IP zones can be used on the same machine.”

Jika resource ethernet diset “shared”, maka kita akan menemui error seperti dibawah ini ketika kita melakukan tuning menggunakan program atau command ndd.

# ndd -set /dev/tcp tcp_time_wait_interval 240000
operation failed: Not owner

# zoneadm list -cv
ID  NAME  STATUS      PATH            BRAND   IP
0  global running     /               native  shared
1  zone01 running     /zone/zone01    native  shared

Bagaimana mengubah dari “shared” menjadi “exclusive”?, berikut adalah step-by-step nya:

1. Cek konfigurasi network non-global zone

# zonecfg -z zone01 info net
net:
address : 10.89.2.134/26
physical: nxge1
defrouter not specified

2. Reconfigure nxge1

# zonecfg -z zone01 "remove net"
# zonecfg -z zone01 "set ip-type=exclusive;end"
# zonecfg -z zone01 "add net; set physical=nxge1;end"
# zonecfg -z zone01 "verify;commit"

Address dari nxge1 tidak bisa diset lewat global-zone, jika kita coba lakukan konfigurasi ip address dari global-zone maka akan muncul error “net: address cannot be specified for an exclusive IP type” saat kita jalankan command “verify”, solusinya adalah melakukan setting langsung dari masing-masing zone.

3. Remove nxge1 dari global-zone

# ifconfig nxge1 down unplumb
# rm -rf /etc/hostname.nxge1

4. Set hostname, gateway dan netmask dari zone01

# zlogin zone01 'echo zone01 > /etc/hostname.nxge1'
# zlogin zone01 'echo 10.89.2.129 > /etc/defaultrouter'
# zlogin zone01 'echo 10.89.2.128 255.255.255.192 > /etc/netmasks'
# zlogin zone01 init 6

5. Cek kembali konfigurasi zone

# zoneadm list -cv
ID  NAME  STATUS      PATH            BRAND   IP
0  global running     /               native  shared
1  zone01 running     /zone/zone01    native  excl

6. Testing

# ndd -set /dev/tcp tcp_time_wait_interval 240000
# ndd -get /dev/tcp tcp_time_wait_interval
240000

7. Selesai

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s