Dozen 2008

Dari PaloDozen

Dozen 2008 adalah sistem kluster yang mengandalkan teknologi multi-core. Sistem terdiri dari sebuah server dan 6 node yang dihubungkan dengan jaringan dual giga byte ethernet (GBE). Karena memiliki 6 node, maka sistem ini diberi nama Palo Dozen (otak-atik gathuk, artinya setengah lusin).

Daftar isi

Arsitektur

Arsitektur Dozen 2008 bersifat modular, dimana satu modul terdiri dari 6 komputer. Pengembangan kluster dilakukan dengan merangkai modul-modul ini. Keistimewaan rancangan ini, modul 6 node itu dapat dirangkai dalam topologi bus, atau topologi pohon dengan fleksibel. Topologi bus merupakan standar Beowulf, dan mudah dikonfigurasi. Sayangnya, pada topologi ini jaringan akan menjadi jalur macet ketika jumlah node menjadi banyak. Di lain pihak, topologi pohon menawarkan keuntungan:

  • Membatasi jumlah node dalam satu segmen jaringan sehingga kemacetan komunikasi bisa dihindari.
  • Sesuai dengan beberapa kelas algoritma parallel.

Untuk implementasi tahun 2008, telah dibangun kluster dengan topologi bus.

Berkas:Dozen2008-Arsitektur.png

Perangkat Keras

Implementasi Dozen 2008 dilakukan dalam rangka penelitian [R1] dan [R2]. Ada enam node yang dibangun, dengan total biaya mencapai sekitar $9.000. Penjelasan masing-masing komponen sebagai berikut:

Compute Node

CPU

Untuk CPU, dipilih prosesor Intel Xeon Quad Core. Prosesor ini mendukung arsitektur 64 bit (X86_64) dan dapat memakai memori hingga 16 GB. Dari telaah ke berbagai sumber, prosesor Intel Xeon ini merupakan pilihan terbaik dari segi kinerja/watt. Dalam pemilihan CPU ini, energi menjadi pertimbangan penting karena untuk suatu kluster yang punya banyak node, pemborosan energi akan membawa dampak berlipat. Pertimbangan khusus dilakukan saat memilih CPU hemat energi, yang hanya makan daya 50 watt. Dengan demikian satu node diharapkan hanya beroperasi dengan daya sekitar 150 watt. Untuk 18 node @ 150 watt, akan memakan daya sekitar 2700 watt, dan akan bisa dipasok oleh stabilizer + UPS ukuran 3000 watt. Namun jika satu node perlu 200 watt, maka kebutuhan total naik menjadi 3600 watt, dan memerlukan catu daya yang lebih mahal. Sementara itu, pada implementasi ini hanya dibeli 6 buah CPU, dengan total harga mencapai $4000. Selain karena alasan dana, keputusan ini juga mempertimbangkan hasil percobaan sebelumnya, dimana terlalu banyak core dalam satu komputer tidak meningkatkan kecepatan. Konsekuensinya, setiap node hanya akan memakai 1 CPU, dan untuk 6 node hanya akan ada 24 core, berkurang setengah dari yang telah dirancang.

Papan Induk

Untuk mendukung CPU Intel Xeon tersebut, diperlukan papan induk (motherboard) dengan soket LGA 771. Sesuai topologi, juga disyaratkan untuk memiliki sedikitnya 2 port network GBE. Ternyata, pilihan motherboard yang ada dipasaran tidak banyak dan harganya cukup mahal (di atas $300). Hal ini tidak terlepas dari kenyataan bahwa Intel Xeon ditujukan untuk kelas server, sehingga pasarnya tidak terlalu luas. Sesuai syarat dan batas dana, dipilih Intel S5000 Vsa yang merupakan entry level motherboard. Server ini sebenarnya mampu mendukung dual processor, sehingga kelak masih bisa ditambahi lagi.

Berkas:HPC-01.jpg

Memori

Prosesor Intel Xeon memerlukan memory DDR2. Komponen ini umum di pasaran dan harganya juga sudah turun sekitar $40/GB. Untuk kluster, disarankan untuk memasang memori 2 GB / core. Sayangnya dengan dana yang ada, hanya bisa dibeli 12 keping memori @ 2 GB, sehingga untuk 6 CPU quad core, baru dicapai 1 GB / core. Hal ini masih bisa ditingkatkan karena di motherboard, masih tersedia slot memori kosong.

Harddisk

Rancangan awal menginginkan sistem kluster tanpa disk (diskless). Dengan pendekatan ini, harddisk cukup dipasang pada front-end, dan digunakan bersama-sama oleh seluruh compute-node. Namun atas saran Nakanishi sensei, sebaiknya dipasang harddisk minimal 100 GB per node untuk instalasi lokal, maupun partisi swap. Oleh karena itu telah dipasang harddisk SATA 250 GB untuk keenam compute-node.

Catu Daya

Pada rancangan awal, telah dipilih CPU hemat biaya, sehingga masing-masing node hanya perlu daya maksimum 150 watt. Oleh karena itu ke enam komputer seharusnya bisa dipasok oleh 1 unit catu daya 1200 Watt. Untuk itu telah dibeli catu daya Thermal Take 1200 watt, seharga $310. Namun telaah lebih dalam mendapatkan bahwa memasok banyak motherboard dengan 1 PSU ATX akan membawa banyak masalah. Hal ini karena pada sistem ATX, motherboard dapat menyalakan, mematikan, bahkan mengatur daya PSU. Dengan demikian, bisa terjadi rebutan kontrol antar papan induk. Akhirnya diputuskan kembali ke cara standar 1 PSU untuk 1 motherboard, sehingga. Total harga 6 buat PSU Simbadda 380 watt, ternyata hanya $110.

Wadah

Rancangan awal mengusulkan wadah hexagon untuk satu modul kluster, mampu memuat 6 motherboard, 1 PSU, 1 harrdisk, dan juga ethernet switch. Namun rencana ini perlu dikaji ulang karena setiap motherboard kini memerlukan harddisk dan juga PSU sendiri-sendiri. Oleh karena itu wadah hexagon ditunda implementasinya. Sebagai gantinya, diputuskan untuk memanfaatkan lemari sistem rak yang sudah tersedia di ruang server TF ITB. Dengan motherboard biasa, sistem rak memerlukan wadah 4U atau 3U (1U adalah ukuran standar pada sistem rak, kira-kira setinggi 45mm. Satu lemari ukuran 40U, akan mampu menampung 8 hingga 12 wadah. Masalahnya, harga wadah sistem rak sekitar $300 sebuah. Demi menghemat biaya dan juga ruang, dibuatlah modul 7U, masing-masing modul berisi 3 komputer.

Tata letak modul ini telah dirancang cukup cermat. Seluruh soket piranti (USB, jaringan, video, dll) berada di depan untuk memudahkan aksesnya. Sementara itu PSU dipasang di belakang agar mudah dihubungkan ke jala-jala listrik. Hardisk berada pada kompartemen yang sama dengan PSU, namun dipasang sejauh mungkin untuk mengurangi interferensi elektromagnetik. Saat dipasang, posisi motherboard yang tegak, akan memperlancar aliran udara untuk pendinginan. Keenam komputer dipasang menjadi 2 modul, dan dimasukkan ke dalam lemari setinggi 16U. Dengan demikian masih ada ruang 24U, cukup untuk dua modul lagi dan tempat untuk switch ethernet. Secara total, lemari ini akan mampu menampung 12 komputer, lebih padat jika dibanding dengan menggunakan wadah standar 4U yang hanya akan dapat menampung 8 komputer.

Berkas:HPC-04.jpg


Jaringan

Desain awal sistem ini mempromosikan sistem fleksibel yang akan mampu membuat topologi dual bus atau pohon. Untuk itu, koneksi jaringan harus dilakukan dengan menggunakan switch Ethernet yang bisa dikonfigurasi menggunakan banyak VLAN (virtual local area network). Dengan demikian, telah dibeli sebuah Web Smart Switch 16 port. Masing-masing front-end dan enam compute-node dihubungkan ke smart switch ini melalui 2 jalur. Sayangnya dalam uji coba, ternyata web smart switch ini tidak bisa melewatkan protokol TFTP (Trivial File Transfer Protocol) yang wajib ada dalam proses instalasi sistem operasi Linux Rocks-Cluster. Setelah dicoba beberapa kali dan masih gagal saja, pada akhirnya terpaksa digunakan switch ethernet biasa untuk menghubungkan front-end dan keenam compute-node. Dengan demikian, konfigurasi sistem dikembalikan menjadi seperti standar Linux Beowulf, dimana smart switch menjadi jaringan utama dan web smart swicth difungsikan sebagai jaringan pesan.

Komputer Front-end

Sistem kluster memerlukan sebuah komputer yang menjadi front-end. Tugas front-end disini adalah:

  • Menjadi pusat sistem yang mengelola seluruh compute-node, terutama dalam proses instalasi dan pemantauan.
  • Menjadi gerbang masuk untuk login para pemakai yang akan mengakses sistem kluster.
  • Sebagai pusat penyimpan data para pemakai (home) dan juga seluruh node.

Tugas pertama dan kedua di atas tidak bisa dipindahkan, sementara tugas ketiga sebenarnya bisa diemban oleh server lain.

Sebagai front-end pada sistem Dozen 2008 ini, digunakanlah komputer yang ditenagai dua CPU Intel Xeon quad core. Memori sistem sementara ini masih 8 GB, sementara ada dua harddisk SATA dengan ukuran 1 Tera Byte. Keduanya akan dikonfigurasi sebagai RAID 1.


Perangkat Lunak

Dalam sistem kluster, sistem operasi adalah bagian integral dalam infrastruktur. Sistem operasilah yang menyatukan seluruh komputer sehingga bisa beroperasi sebagai satu kesatuan. Sejak awal, sudah dicanangkan untuk menggunakan perangkat lunak open source bagi sistem kluster ini. Saat ini, sistem operasi open source yang talah matang menangani sistem kluster adalah Linux, dimana ada beberapa pilihan distro maupun paket siap pakai sebagai berikut:

  • Rocks Cluster, adalah distro Linux khusus kluster berbasis Linux Centos. Asumsi dasar yang dianut Rocks adalah, sistem kluster akan selalu berevolusi. Komputer baru akan ditambahkan pada sistem, dan komputer lama mungkin rusak sehingga harus diganti komponennya, atau bahkan dilepas sama sekali. Oleh karena itu, filosofi dasar Rocks adalah membangun fasilitas kluster yang kokoh diatas sistem operasi Linux yang mampu menangani komputer heterogenous, yaitu Centos.
  • OSCAR, adalah paket kluster yang siap dipasang pada berbagai distro Linux, seperti Ubuntu, Suse, Fedora dan lain-lain. Sayangnya untuk saat ini, OSCAR masih belum begitu siap untuk menangani sistem kluster yang terdiri dari beragam komputer. Jadi ini kontras dibanding Rocks Cluster yang terikat erat dengan satu distro saja, namun siap menangani sistem heterogenous.

Menimbang filosofi dasar kedua sistem kluster tersebut, dipilihlah Rock Cluster karena telah disadari sejak awal, sistem komputer kluster Teknik Fisika ini akan selalu berkembang. Konsekuensi teknis dari pilihan itu adalah:

  • Rock cluster menuntut satu front-end yang kuat, sebagai pusat instalasi seluruh compute-node yang heterogen. Untuk itu, front-end akan menyimpan informasi konfigurasi seluruh node, dan juga berbagai file yang spesifik untuk masing-masing node.
  • Seluruh compute-node dipasang melalui network menggunakan PXE-boot dan protokol TFTP, sehingga memerlukan jaringan utama yang mendukung keduanya.
  • Seluruh compute node harus di-instalasi secara lokal, sehingga masing-masing node harus memiliki harddisk.

Setelah front-end, jaringan maupun seluruh node disiapkan, maka instalasi segera dimulai. Proses instalasi front-end memakan waktu sekitar 2 jam. Tahap yang paling membutuhkan pemikiran dan pengetahuan adalah mengkonfigurasi harddisk sebagai RAID dan mengatur partisinya. Di luar itu, seluruh tahap sudah memakai menu-menu yang mudah diikuti.

Berkas:HPC-03.jpg nothumb


Sementara itu, instalasi keenam compute-node ternyata sangat mudah dan cepat. Sebagai pengalaman pertama memasang Rock Cluster, ini sangat mencengangkan. Instalasi hanya dilakukan dengan menghidupkan setiap node secara berurutan, mulai dari node pertama hingga ke enam. Setiap node akan menggunakan PXE-boot untuk memulai proses instalasi dirinya sendiri, dan front-end akan meresponnya dengan memberikan file-file yang diperlukan untuk instalasi, sekaligus mendaftarkan node tersebut sebagai anggota kluster. Tak sampai 1 jam, seluruh node sudah terinstall dan pada front-end status seluruh kluster bisa dipantau melalui Ganglia.


Kontributor: Mursito