01 December 2010

Sistem terdistribusi, pesan dan komputer cluster

BAB 1

PENDAHULUAN

1.1 DEFINISI

Sistem tersebar adalah sebuah sistem yang masing-masing komponennya berada di sebuah jaringan kerja ( network ). masing-masingkomponen dari Sistem tersebut saling berkomunikasi dan melakukan kordinasi untuk melakukan fungsi kerjanya dengan mengirimkan pesan-pesan tertentu. Format protocol dari pesan untuk masing-masing sistem tersebat akan sangat berbeda satu dengan yang lainnya, sehingga apabila memerlukan komponen gateway untuk pembatasan antar sistem tersebar yang berbeda. Beberapa sistem tersebar adalah internet, intranet, cluster computing dan lain-lain.

Pada dewasa sekarang ini sistem tersebar adalah mutlak diperlukan dan dikembangkan dikarenakan semakin banyak aplikasi yang beragam, dan tentunya memiliki banyak kebutuhan akan resource yang tentunya tidak mungkin dapat dipenuhi apabila hanya 1 buah mesin saja yang beroperasi. Sekumpulan unit processing tentunya lebih baik performansinya apabila dibandingkan dengan 1 buah unit processing saja.Semakin banyak aplikasi dan semakin banyak unit processing tentu akan lebih baik performasinya

Salah satu keuntungan dari sistem ini adalah dalam proses pemeliharaan yang tidak mempengaruhi keandalan dari keseluruhan sistem, baik dalam hal upgrading, perbaikan, maupun dalam hal penggantian dari masing-masing komponen kerja. Dalam hal pengaturan sumberdaya sistem tersebar menggunakan “ sharing “ komponen sehingga dapat menekan biaya serta sangat efisien dalam hal tempat fisik. Beberapa model dari sistem tersebar adalah Sistem Client – Server, Sistem Point to Point, dan sistem Cluster

1.2 KARAKTERISTIK SISTEM TERDISTRIBUSI

Pada sistem terdistribusi masing-masing dari komponen kerja tidak ada yang mengetahui kondisi global dari sistem tersebut, masing-masing dari komponen kerja tersebut hanya mengetahui kondisi pada diri mereka sendiri. Maka dapat dipahami apabila suatu proses atau fungsi telah selesai dilaksanakan maka komponen kerja tersebut akan menunggu / idle sampai adanya permintaan akan adanya fungsi kerja kembali.

Adanya kegagalan pada sebuah komponen kerja tidak akan berpengaruh banyak terhadap sistem secara keseluruhan. Karena proses tunggal yang adalah aplikasi dari sistem tersebar ini. Apabila kegagalan terjadi maka setiap komponen kerja dengan masing-masing fungsi kerja yang berbeda tidak akan merasakan gangguan tersebut.

Pengaksesan suatu komponen/sumber daya (segala hal yang dapat digunakan bersama dalam jaringan kerja, meliputi H/W dan S/W) secara bersamaan. Beberapa fungsi kerja yang berbeda dan komponen kerja yang berbeda dapat saling menggunakan sumber daya yang sama. Beberapa Contohadalah adanya Beberapa pemakai browser mengakses halaman web secara bersamaan.

1.3 PERMASALAHAN

Berikut adalah Masalah yang muncul pada sistem terdistribusi yang telah diterapkan kepada sebuah jaringan kerja antara lain berkaitan dengan :

· Software - bagaimana merancang dan mengatur software serta hardware dalam Distribusi Sistem.

· Network – ketergantungan pada infrastruktur jaringan.

· Security – kemudahan akses ke data yang di share, memunculkan masalah keamanan.

Namun pada kali ini hanya akan dijelaskan permasalahan sistem tersebar khusus mengenai software saja, Untuk permasalahan network adalah jenis dari pemilihan topologi jaringan kerja sehingga lebih kepada Virtual ataupun fisik dari sistem terdistribusi tersebut, sedangkan untuk security adalah aplikasi dari gateway sistem tersebut.

1.4 PEMBATASAN PERMASALAHAN

Pada pembahasan masalah ini akan difokuskan kepada sistem computer clustering. Sistem ini mengharuskan adanya managemen sumberdaya yang baik dan monitoring hasil yang mudah dari komputasi suatu fungsi tersebut.

BAB II

PEMBAHASAN MASALAH

Permasalahan dalam sistem tersebar untuk sistem clustering ini adalah bagaimana merancang dan mengatur suatu perangkat lunak pada masing-masing komponen agar dapat berkerja dalam Sistem. Karena masing-masing dari sistem memiliki fungsi kerja yang berbeda dan sumberdaya yang berbeda maka harus ada module tambahan yang menjembatani ( middleware ) antara masing-masing fungsi tersebut. Secara proses internal masing-masing komponen kerja ini membutuhkan module tambahan pada daerah pada layer presentasi ( layer 6 pada OSI Layer ). Pada layer tersebut middle ware ini memiliki beberapa fungsi yang akan dijelaskan dibawah ini.

2.1 FUNGSI KOMUNIKASI

Fungsi ini menghubungkan beberapa group yang berbeda fungsi pada sebuah perioda yang sama. Setiap komunikasi yang berlangsung memiliki pesan yang berisi fungsi pengenalan nodal dan fungsi pengaturan nodal sesuai dengan topologi yang digunakan pada jaringan kerja tersebut.Fungsi komunikasi ini adalah yang terpenting pada middleware ini dikarenakan inisialisasi setiap baik fungsi kerja, maupun hardware nodal selalu dimulai dengan fungsi ini.Tidak benarnya atau terpotongnya pesan dengan fungsi ini menyebabkan kegagalan sistem secara umum.Untuk menanggulangi adanya kesalahan pada pesan untuk fungsi komunikasi ini ada beberapa metode yang diterapkan, salah satunya adalah dengan metode Error cheking.

Pada metode ini pesan yang dikirimkan ditambahkan bit paritas, dimonitor, dan dihitung perbit. Sesuai dengan paritas yang ditambahkan baik paritas ganjil maupun genap apabila hasil perhitungan bit tersebut tidak cocok maka nodal akan meminta kembali pengiriman pesan dari server.

2.2 Fungsi Point to Point

Fungsi ini adalah fungsi pengiriman pesan yang digunakan antara server dengan nodal.Fungsi ini memperbolehkan server memerintahkan suatu fungsi kerja kepada suatu nodal tertentu. Sebagai contoh pada computer cluster arsitektur pararel memperbolehkan setiap unit processing secara rutin bertukar informasi/data dengan unit processing yang telah ditentukan lainnya atau pada server yang memberikan fungsi kerja terbaru ketika fungsi kerja yang lama telah selesai dikerjakan oleh unit prosesing tersebut.

2.3 Fungsi Collective

Fungsi collective ini menyangkut komunikasi terhadap semua proses pada sebuah proses group. Dalam telekomunikasi fungsi ini disebut fungsi broadcast. Broadcast adalah fungsi yang mengambil data/informasi dari suatu unit prosesing dan mengirimkannya kepada semua semua unit prosesing lainnya didalam group.

Kebalikan dari proses ini adalah reduces yaitu proses pengambilan informasi dari seluruh unit prosesing, melakukan proses finalisasi hasil akhir, dan menyimpannya dalam sebuah nodal. Fungsi ini biasanya sangat berguna pada saat awal proses dan akhir proses.

2.4 Fungsi derivative datatypes

banyak fungsi pada komponen perangkat lunak pada masing-masing nodal yang mengharuskan mendefinisikan jenis data yang dikirimkan antar masing-masing unit prosessing. Hal ini terjadi karena fungsi-fungsi yang ada hanya melewatkan variable dan bukan tipe datanya, sehingga perlu untuk mendefinisikan kembali tipe data yang telah akan dikirimkan.

BAB III

APLIKASI

2.1 CLUSTER COMPUTER

Cluster computer adalah sebuah infrastruktur computer yang terdiri dari banyak nodal (computer yang terpisah) yang berkerja bersama-sama ataupun berkerja sendiri untuk mengerjakan banyak tugas-tugas komputasi yang berkelanjutan.Cluster computer merupakan pengembangan dari computer pararel atau mesin pararel. Computer Cluster tersebut terhubung dengan jaringan lokal yang cepat ( biasanya menggunakan network dengan kecepatan Gigabyte ). Menggunakan perangkat lunak yang telah didesain khusus, computer cluster ini dapat dilihat sebagai suatu computer yang besar untuk menyelesaikan komputasi yang canggih yang memerlukan performansi hardware yang tinggi. Sebelumnya kebutuhan ini sudah dapat diatasi dengan “ mainframed computer ”. mainframed computer adalah computer super dengan kinerja komputasi yang mengagumkan dan memiliki biaya yang tinggi dalam proses pembuatan dan pemeliharaannya. Namun dengan sistem cluster ini dapat dibuat computer super dengan biaya yang rendah, pemeliharaan yang mudah, dan dapat dibuat dari computer rumahan yang biasa.

Gambar 3.1 Arsitektur umum dari sistem cluster

LIPI CLUSTER COMPUTER ( LPC ) dan PUBLICMC@BATAN merupakan super computer yang dibuat dengan arsitektur sistem cluster. PUBLICMC@BATAN adalah super computer yang ditujukan untuk melakukan simulasi dan perhitungan dengan metoda “ Monte carlo “. Untuk percobaan pada fisika partikel berenergi tinggi metode ini digunakan untuk melakukan perhitungan dan simulasi untuk Quantum chromodynamics, namun metode ini juga dapat digunakan untuk melakukan permodelan dari interaksi antar partikel-partikel seperti neutron, proton, dan electron baik reaksi fisi nuklik maupun fusi nuklir. Namun karena permasalahan peraturan sehingga PUBLICMC@BATAN tertutup untuk umum sehingga arsitekturnya tidak memisahkan nodal-nodal computer menjadi blok-blok yang terpisah, melainkan menggunakan sistem konvesional dimana semua nodal didedikasikan hanya kepada seorang user yang menggunakannya.

Gambar 3.2 arsitektur dari PUBLICMC@BATAN

Berbeda dengan LIPI CLUSTER COMPUTER ( LPC ) yang menggunakan sistem multiblok clustering dengan independent master node sehingga nodal-nodal tersebut dapat dipecah menjadi beberapa blok sehingga dapat digunakan oleh user-user yang berbeda pada saat yang bersamaan dengan tugas-tugas komputasi yang berbeda pula. Sehingga pada contoh kali ini hanya LPC saja yang akan dijelaskan.

2.2 KONSEP DANARSITEKTUR DARI LPC

Pada LPC user yang masuk adalah user yang tidak dikenal dan tidak adanya pembatasan tentang tugas-tugas komputasi yang dilakukan.sehingga dengan asumsi ini maka LPC harus dapat untuk memenuhi semua kebutuhan user-user tersebut seperti :

· Keamanan

Hal ini adalah isu utama yang harus dihadapi pada saat pertama kali cluster ini dirancang. User harus memiliki kebebasan untuk memaksimalkan kesempatan mereka untuk mempelajari pararel programming, namun akses harus diberikan batasan waktu dan blok sehingga user yang lain dapat menggunakannya pada perioda yang sama.

· Flexibilitas

Adalah hal yang tidak mungkin setiap user dari luar ( internet ) diberikan flexibilitas yang sama dengan yang mengakses dari dalam jaringan lokal, sehingga harus ada kemampuan untuk mengalokasikan blok-blok nodal sesuai dengan tugas dari komputasi yang mereka butuhkan.

· Stabilitas

Secara langsung mengeksekusi tugas komputasi dari user yang berbeda tanpa adanya interfrensi antar tugas-tugas komputasi dari user lainnya.

· efisien

karena nodal-nodal tersebut secara dinamis dibagi menjadi blok-blok dengan jumlah yang bervariasi tergantung dari permintaan user, maka nodal tersebut harus dapat dihidupkan dan dimatikan secara otomatis, baik sebagian maupun secara keseluruhan tanpa mengganggu nodal yang sedang berkerja.

Maka adalah penting untuk merancang sistem cluster dengan arsitektur yang dapat memenuhi semua kriteria diatas. Berikut adalaharsitektur :

Gambar 3.3 arsitektur dari LPC

Pada prinsipnya untuk mengubah computer biasa menjadi cluster.Hal tersebut membutuhkan kombinasi dari hardware dan software. Pada program menengah sistem kluster pada umumnya menggunakan komponen untuk mengatur resource tergantung dari kebutuhan dari komputasi user, namun pada LPC user tidak diketahui sehingga diterapkan algoritma EGA (Extended Genetic Algorithm) untuk mengalokasikan blok dan MPI (Massage Passing Interface). Dengan aplikasi EGA ini secara otomatis dapat lebih menghindarkan alokasi resource blok-blok nodal yang terbuang sehingga dapat lebih efisien. Khusus untuk Pada layer presentasi MPI digunakan adalah OPENMPI yang bersifat open source sehingga dapat menekan biaya.Sedangkan Untuk sistem monitoring menggunakan teknologi interfacing microcontroller.Sistem memonitoring sampai 45 nodal dan berfungsi untuk mengukur temperature, kelembapan, dan mengatur power supply masing-masing nodal.

BAB IV

KESIMPULAN

berikut adalah kesimpulan yang penulis dapat selama menyusun paper ini :

· Pada sistem clustering semua nodal berkerja secara terpisah namun memiliki fungsi dasar yang sama yaitu komputasi.

· Untuk mengatur sumberdaya yang berbeda dan masing-masing nodal digunakanlah MPI (Massage Passing Interface)

· MPI berfungsi untuk melakukan pengiriman pesan dalam satu jaringan kerja tersebut yang berkerja pada layer Presentasi ( OSI Layer )

· Pesan dari MPI memiliki banyak fungsi, beberapa fungsi yang penting adalah sinkronisasi antar nodal, resource management, dan error checking.

REFERENSI

1. http://bongo90.wordpress.com/2009/10/29/pendahuluan-sistem-terdistribusi-a-k-a-sistem-tersebar/

2. http://en.wikipedia.org/wiki/Open_MPI

3. http://www.open-mpi.org/

4. http://kormakyu.com/category/sistem-tersebar/

5. http://www.cluster.lipi.go.id/

6. Bagus I. A. “ Aplikasi Parallel Processing dengan menggunakan host processor x486 berbasis Debian Linux”, STTTELKOM, Bandung, 2005.

7. I Firmansyah, Zaenal Akbar, L.T. Handoko, “ Microcontroller based distributed and networked control system for public cluster “, LIPI GFTI, Serpong, Juni 2009.

8. Slamet, B. I. Ajinagoro, G. J. Ohara, I. Firmansyah, B. Hermanto, Zaenal Akbar, L.T. Handoko,Open and Free Cluster for Public “, LIPI GFTI, Serpong, Juni 2007.

9. OSCAR5.0_Users_Manual : http://oscar.openclustergroup.org

10. A.A. Waskita, N.A. Prasetyo, Zaenal Akbar, L.T. Handoko,“ Public infrastructure for Monte Carlo simulation “, BATAN, 2009.

11. I. Firmansyah, B. Hermanto, Hadiyanto and L.T. HandokoReal-time control and monitoring system for LIPI’s Public Cluster “, LIPI GFTI, Serpong, Juni 2007.

12. Zaenal Akbar, L.T. Handoko, Resource Allocation in Public Cluster with Extended Optimization Algorithm “, LIPI GFTI, Serpong, 2007.

13. Hadiyanto, L.T. Handoko, “The development of open mini clustering pararel computational “, LIPI GFTI, Serpong, 2004.


No comments:

Post a Comment