Prosiding Seminar Nasional Manajemen Teknologi II Program Studi MMT-ITS, Surabaya 30 Juli 2005
PERANCANGAN LINUX CLUSTER MENGGUNAKAN PORTABLE BATCH SYSTEM SEBAGAI PENGGANTI SERVER UNIX UNTUK KOMPUTASI SIMULASI RESERVOIR DI PT. CPI Noviar Reza Ishadi dan Febriliyan Samopa Program Studi Magister Manajemen Teknologi Informasi - ITS Kampus MMT-ITS, Jl. Cokroaminoto 12A , Surabaya Email:
[email protected];
[email protected]
ABSTRAK Salah satu tahap dalam proses pencarian cadangan minyak di PT. CPI, dikenal adanya Simulasi Reservoir Minyak Bumi (Petroleum Reservoir Simulation) yang ditujukan untuk memprediksi kinerja reservoir minyak bumi dalam berbagai kondisi operasi. Perangkat keras yang digunakan untuk menjalankan program simulasi reservoir, selama ini masih mengandalkan server berbasis sistem operasi UNIX (IBM-AIX dan SGI-IRIX) berprosesor ganda (Simultaneous Multi Processors). Sesuai dengan siklus produk teknologinya, server-server tersebut sudah saatnya diganti dengan produk yang lebih baru yang diharapkan dapat memberikan kinerja lebih tinggi. Hal ini sejalan dengan makin meningkatnya kompleksitas reservoir yang dikelola dan tuntutan dari sisi aplikasi simulasi reservoir. Tingginya biaya yang dikeluarkan untuk pembelian dan pemeliharaan server-server tersebut, memicu adanya studi terhadap penggunaan alternatif selain tindakan upgrade terhadap sistem yang sudah ada dengan sistem komputasi baru yang berbasis pada sistem operasi Linux. Dalam penelitian ini, dibahas alternatif konfigurasi sistem Linux cluster yang memanfaatkan salah satu produk opensource Portable Batch System (OpenPBS). Penelitian dilakukan dengan perancangan sistem komputasi Linux cluster berbasis OpenPBS. Tujuan penelitian ini adalah untuk memberikan rekomendasi rancangan suatu sistem komputasi baru yang relatif masih baru bagi lingkungan reservoir management team di PT. CPI. Kata Kunci: Sistem Komputasi, Linux cluster, Portable Batch System. PENDAHULUAN Sebagai salah satu perusahaan minyak yang beroperasi di Indonesia, PT. CPI sejak tahun 1990-an telah mengandalkan server-server berplatform UNIX untuk menjalankan berbagai aplikasi perangkat lunak perminyakan. Hal ini disebabkan oleh berbagai kelebihan yang dimiliki oleh sistem operasi UNIX, namun faktor utamanya adalah bahwa vendor pihak ketiga lebih banyak menyediakan software aplikasi perminyakan yang berjalan pada platform UNIX dibandingkan dengan platform lainnya. Hal utama dalam proses simulasi reservoir, adalah penggunaan metode komputasi untuk memecahkan berbagai persamaan matematis yang kompleks, yang merupakan atribut dari aliran fluida, dalam hal ini adalah aliran minyak di dalam lapisan tanah (subsurface). Perangkat lunak yang ditujukan untuk simulasi reservoir telah banyak tersedia, dan hampir seluruhnya membutuhkan data-data geologi yang rinci untuk mendapatkan hasil yang optimal, sedangkan di sisi lain, perangkat keras yang digunakan untuk menjalankan perangkat lunak tersebut, hingga dasawarsa ini masih
ISBN : 979-99735-0-3
Prosiding Seminar Nasional Manajemen Teknologi II Program Studi MMT-ITS, Surabaya 30 Juli 2005
mengandalkan server UNIX dengan performa komputasi tinggi, seperti yang dimiliki oleh PT. CPI saat ini. Seiring dengan berkembangnya teknologi, metode simulasi yang dikembangkan oleh vendor-vendor perangkat lunak aplikasi cenderung meningkat tingkat kerumitannya, demikian juga data-data, parameter, dan variabel yang harus dilibatkan dalam proses simulasi pada lapangan minyak, serta tingkat kesulitan yang dihadapi para insinyur reservoir mengalami peningkatan cukup signifikan. Hal ini mendorong PT. CPI berusaha untuk secara berkala melakukan penggantian (dengan prosedur upgrade dan trade-in) server-server UNIX dalam rangka memenuhi kebutuhan perangkat keras yang lebih cepat, dan di lingkungan PT. CPI dikenal dengan sebutan Life Cycle Management. Dalam kurun waktu enam tahun terakhir, telah terjadi perkembangan di lingkungan simulasi reservoir PT. CPI, khususnya penggunaan perangkat keras dalam bentuk server UNIX yang dipakai untuk menjalankan berbagai program aplikasi simulasi reservoir, dimana terdapat suatu kecenderungan untuk memilih satu merek tertentu, dalam hal ini jajaran produk IBM (International Business Machines). IBM Corporation dikenal sebagai salah satu penghasil server-server UNIX dengan kestabilan dan kemampuan komputasi di atas rata-rata server-server UNIX produksi korporasi lainnya. Hal ini tampak dari hasil benchmarking beberapa situs independen, misalnya http://www.spec.org. Kelebihan yang dimiliki oleh produk-produk tersebut, dapat mencukupi kebutuhan terhadap perangkat keras berkinerja tinggi, namun kelemahan mendasar yang dirasakan adalah pada tingginya harga yang harus dibayar. Pengguna program aplikasi simulasi reservoir di PT. CPI mencapai sekitar duapuluh orang, beberapa di antaranya merupakan pengguna utama, yaitu kelompok pengguna yang memanfaatkan waktu lebih dari empat jam sehari untuk bekerja di bidang simulasi reservoir. Penggunaan asumsi sederhana, bila dalam satu waktu terdapat sepuluh pengguna yang ingin menjalankan programnya secara bersamaan, dan masing-masing pengguna mengirimkan dua task, maka dibutuhkan konfigurasi dua server UNIX berskala high-end, misalnya IBM RS6000 Model P690 berprosesor ganda. Jenis aplikasi perangkat lunak yang digunakan bersifat non-interaktif, sehingga sesaat setelah seorang pengguna mengirimkan sebuah task ke server UNIX, maka proses komputasi akan langsung berjalan, dan keluaran yang dihasilkan (dapat berupa pesan kesalahan ataupun hasil yang diharapkan) baru dapat diketahui setelah rentang waktu tertentu. Waktu yang dibutuhkan oleh server UNIX untuk menyelesaikan satu task bergantung kepada kompleksitas data yang akan diolah, meliputi besar data, variasi parameter yang digunakan, dan jumlah iterasi komputasi yang harus dijalankan. Masalah yang kemudian sering dihadapi oleh pengguna, adalah bahwa bila beberapa task dijalankan pada satu server UNIX dalam waktu bersamaan, maka sumberdaya yang tersedia akan dibagi secara relatif merata untuk seluruh task. Pada sebuah contoh kasus, satu task seharusnya dapat diselesaikan oleh sistem dalam waktu kurang dari sepuluh jam. Penggunaan server UNIX tunggal oleh empat task dengan volume yang sama secara bersamaan mengakibatkan waktu yang dibutuhkan menjadi rata-rata lebih dari empat puluh jam. Hal ini disebabkan oleh alasan di atas, yaitu pembagian sumberdaya sistem bagi keempat task, dengan asumsi tidak ada parameter tambahan yang diterapkan dalam mekanisme pengiriman task. Kasus yang sering terjadi di lingkungan simulasi reservoir PT. CPI, adalah tidak adanya koordinasi di tingkat pengguna dalam hal pembagian waktu penggunaan server UNIX. Setiap saat pengguna memerlukan proses komputasi, saat itu pula pengiriman task dilakukan. Tingkat kebutuhan pengguna juga bermacam-macam, pada suatu masa seorang pengguna yang sedang mengerjakan rush project akan lebih membutuhkan ISBN : 979-99735-0-3
C-13-2
Prosiding Seminar Nasional Manajemen Teknologi II Program Studi MMT-ITS, Surabaya 30 Juli 2005
sumberdaya sistem dibandingkan dengan pengguna-pengguna lain yang hanya melakukan uji coba terhadap model simulasi tertentu. Di sisi lain, perusahaan telah mulai menggunakan produk COTS (Commercial Off The Shelf), yaitu PC berspesifikasi teknis tinggi dan berbasis sistem operasi Linux sejak pertengahan tahun 2004. PC high-end tersebut digunakan oleh ahli ilmu bumi (earth scientist) untuk menjalankan aplikasi perangkat lunak interpretasi ilmu bumi (earth science interpretation application). Spesifikasi teknis PC high-end menggunakan prosesor AMD Opteron 64-bit 2.2GHz, 8GB RAM, Gigabit Ethernet Network, dual LCD Monitor 19” dan dilengkapi dengan 2x80GB disk. Saat ini, PT. CPI telah memiliki 55 PC tipe ini yang tersebar di tiga distrik, yaitu distrik Rumbai, Minas, dan Duri. Mayoritas PC high-end tersebut lebih sering digunakan oleh para pengguna pada jam kerja normal, yaitu mulai jam 07.00 hingga 16.00, maka utilisasinya dirasakan kurang efisien. Terdapat kekosongan hingga 15 jam per hari, yang semestinya bisa digunakan untuk kepentingan lainnya. Dari sudut pandang yang lebih progresif, pengamatan yang telah dilakukan terhadap utilisasi PC high-end menunjukkan bahwa penggunaan sumberdaya yang tersedia juga belum optimal. Dari dua prosesor yang ada, mayoritas pengguna hanya memanfaatkan salah satu prosesor untuk menjalankan aplikasi ilmu bumi. Fenomena inefisiensi dalam hal penggunaan PC high-end oleh pengguna memicu adanya pemikiran untuk dilakukannya suatu studi untuk lebih mengoptimalkan sistem yang idle sebagian, yaitu saat dimana hanya satu prosesor yang terpakai dan saat idle penuh, yaitu waktu-waktu di luar jam kerja kantor, jam 16.00 hingga 07.00. Metodologi yang digunakan dalam penelitian ini meliputi tiga tahap, yaitu analisis kebutuhan, perancangan dan pembuatan purwarupa. ANALISIS KEBUTUHAN Langkah yang dilakukan pada tahap ini, adalah dengan melakukan wawancara dengan para insinyur reservoir, dalam hal solusi sistem komputasi yang selama ini digunakan untuk menyelesaikan pekerjaan di bidang simulasi reservoir, serta untuk mengetahui lebih lanjut mengenai kondisi saat ini beserta permasalahan riil yang dihadapi dan kondisi yang diinginkan. Berdasarkan hasil wawancara yang dilakukan terhadap lima pengguna utama sistem komputasi untuk simulasi reservoir, diperoleh gambaran umum mengenai kebutuhan yang diinginkan oleh pengguna agar dapat dipenuhi oleh sistem komputasi Linux cluster, di antaranya adalah : Sistem yang baru tidak akan mengubah cara kerja dan proses bisnis saat ini, terutama dalam hal prosedur penggunaan aplikasi perangkat lunak Sistem yang baru dapat menyediakan suatu mekanisme pengawasan terhadap jalannya suatu proses yang sedang berlangsung. Sistem yang baru memberikan kinerja yang lebih baik dibandingkan dengan solusi saat ini. Utilisasi perangkat keras (PC high-end) dapat ditingkatkan Tersedia suatu mekanisme pengaturan skala prioritas terhadap jenis-jenis pekerjaan tertentu PERANCANGAN SISTEM DAN PEMBUATAN PURWARUPA Pada tahap ini, dilakukan perancangan Linux cluster yang memanfaatkan aplikasi perangkat lunak opensource, yaitu OpenPBS. Infrastruktur dan segala kebutuhan ISBN : 979-99735-0-3
C-13-3
Prosiding Seminar Nasional Manajemen Teknologi II Program Studi MMT-ITS, Surabaya 30 Juli 2005
terhadap peripheral komputer telah tersedia, dengan memanfaatkan PC high-end yang digunakan oleh para ahli ilmu bumi. Waktu yang diijinkan bagi pemanfaatan PC highend untuk menjalankan aplikasi simulasi reservoir adalah di luar rentang saat jam kerja. Arsitektur Sistem Komputasi Linux Cluster Pembuatan purwarupa Linux cluster yang terdiri dari tiga PC high-end, dilakukan secara remote, mengingat ketiga PC tersebut tidak terletak dalam satu ruangan yang sama, meskipun masih dalam satu gedung kantor utama PT. CPI, dan tersambung dalam satu subnet jaringan. Penggunaan ketiga komputer tersebut oleh para ahli ilmu bumi, ratarata terjadi saat jam kantor (7.00 hingga 16.00). Perangkat Keras Linux cluster yang dibangun, terdiri dari satu node utama (headnode) dan dua node untuk komputasi (computing node) dengan spesifikasi teknis yang seragam. Prosesor Memori Disk Network Monitor
Dual AMD Opteron 2.2GHz (64-bit) 8GB RAM 2x80GB internal disk Gigabit Ethernet (1Gbps) Dual LCD monitor 19”
Tabel 1. Spesifikasi teknis PC high-end. Sebuah pusat penyimpanan data (centralized data storage) digunakan untuk menyimpan semua data masukan dan keluaran proses simulasi reservoir, berupa NAS (Network Attached Storage), berkapasitas total 3TB. Sistem Operasi dan Perangkat Lunak Dalam dunia komputasi, dikenal berbagai jenis Linux cluster, di antaranya Beowulf, Mosix, OpenMosix (versi opensource dari Mosix), namun dalam penelitian ini dibahas jenis cluster yang mengandalkan OpenPBS sebagai pengendali sistem antrian (queueing system) dengan berbagai kelebihannya. Aplikasi perangkat lunak simulasi reservoir Chevron Chears tersimpan di pusat penyimpanan data, yang dapat diakses dari Linux cluster menggunakan Network File System (NFS), dan lisensi yang tersedia adalah jenis serial. Konfigurasi Jaringan Semua node tersambung pada satu subnet dengan kecepatan jaringan sebesar 100Mbps, meskipun kemampuan kartu jaringan yang terpasang (built-in) pada PC highend sebenarnya mampu berjalan pada lingkungan jaringan gigabit. Pada Linux cluster jenis ini, tidak dibutuhkan interkoneksi kecepatan tinggi antar-node, karena jenis task yang dijalankan oleh sistem komputasi merupakan proses serial non-interaktif. Pada penelitian ini pengguna sistem komputasi Linux cluster menggunakan PC Pentium-4 (sistem operasi Microsoft Windows XP), tersambung pada subnet yang sama (dengan pengalamatan 146.45.190.*), namun hal ini bukan merupakan syarat mutlak. Interaksi dari PC pengguna ke sistem Linux cluster memanfaatkan perangkat lunak pihak ketiga, yaitu Hummingbird Exceed, yang mengemulasikan kemampuan XWindow agar dapat menampilkan aplikasi yang berjalan di sistem operasi Linux ke layar PC pengguna.
ISBN : 979-99735-0-3
C-13-4
Prosiding Seminar Nasional Manajemen Teknologi II Program Studi MMT-ITS, Surabaya 30 Juli 2005
NAS
Headnode Pengguna IntelliStation
POWER
P72
sgh42904
idlnx020 LAN 1 subnet (146.45.190.*) Node02 IntelliStation
Node03 IntelliStation
POWER
POWER
P72
P72
idlnx013
idlnx026 Node Untuk Komputasi
Gambar 1. Topologi Jaringan Linux Cluster File system File system yang digunakan dalam penelitian ini, adalah ext3 journaling file system dan swap sebagai memori virtual. Mount point /boot / /local/lfs1 Swap /local/lfs2 /scr/a
Device /dev/hda1 /dev/hda2 /dev/hda3 /dev/hda4 /dev/hdb1 /dev/hdb2
Ukuran 400MB 20GB 43GB 16GB 40GB 40GB
File system ext3 ext3 ext3 Linux swap ext3 ext3
Tabel 2. Susunan file system OpenPBS sebagai Penjadwal Task OpenPBS (Open Portable Batch System) yang dikembangkan oleh NASA Ames Research Facility, Lawrence Livermore National Laboratory, dan Veridian Information Solution Inc., merupakan sebuah piranti yang berfungsi untuk mendistribusikan task di lingkungan cluster [4]. Paket program ini terdiri dari tiga komponen utama, yaitu penjadwal (scheduler), server, dan client [1]. Fungsi penjadwal adalah untuk memeriksa client, yang berupa daemon yang berjalan di setiap node cluster, tentang status task yang sedang berjalan dan beban node. Bila penjadwal dapat menemukan sebuah node yang memenuhi kriteria bagi suatu task untuk dijalankan (hal ini didefinisikan melalui beberapa parameter seperti arsitektur prosesor, memori, CPU-time yang dibutuhkan, dan lainnya), maka pbs_ server akan memerintahkan kepada node yang bersangkutan untuk menjalankan task tersebut [2]. Sebaliknya, bila tidak terdapat node yang sesuai dengan kriteria di atas (misalnya, semua node sedang dalam keadaan sibuk sehingga bebannya tinggi), maka task yang masuk ke server dimasukkan ke antrian dan baru akan dijalankan oleh node yang bebas.
ISBN : 979-99735-0-3
C-13-5
Prosiding Seminar Nasional Manajemen Teknologi II Program Studi MMT-ITS, Surabaya 30 Juli 2005
Headnode Permintaan dari Pengguna
pbs_server pbs_sched pbs_mom Task
pbs_mom Task
Node untuk Komputasi
Gambar 2. Alur Kerja OpenPBS Konfigurasi Headnode Headnode yang berfungsi sebagai pengalokasi sumberdaya (resource allocator) dibangun pada salah satu PC high-end dengan nama host idlnx020. Komponen OpenPBS (pbs_server, pbs_scheduler, dan pbs_client) dipasang pada host ini. OpenPBS menyediakan suatu proses terpisah yang dapat digunakan untuk menjadwalkan task tertentu yang harus dijalankan lebih dahulu [1]. Mekanisme ini ditentukan oleh konfigurasi pbs_scheduler. Dalam hal ini, pbs_scheduler akan memeriksa status dari pbs_server dan antrian task, kemudian dapat melakukan pengambilan keputusan secara otomatis berdasar pada konfigurasi yang telah ditentukan [1]. Konfigurasi Node untuk Komputasi Pada kedua node komputasi ini, komponen OpenPBS yang dipasang hanya berupa pbs_client dan bertugas sebagai agen dari PBS untuk mengirimkan status dan kondisi node komputasi, dan akan meneruskan task yang harus dijalankan oleh aplikasi perangkat lunak simulasi reservoir, yaitu Chevron Chears, bila sumberdaya node yang bersangkutan cukup untuk dialokasikan bagi pengerjaan suatu task. Node untuk komputasi memanfaatkan dua PC high-end, dengan nama host idlnx013 dan idlnx026. Sesuai dengan syarat yang telah ditentukan sebelumnya, yaitu penggunaan kedua PC high-end untuk node komputasi diperbolehkan dalam rentang waktu mulai jam 16.00 hingga 07.00 berikutnya, sehingga konfigurasi pbs_scheduler diatur sedemikian sehingga task yang terkumpul dalam antrian akan dikirimkan ke node komputasi setelah jam 16.00. Sebaliknya, prioritas proses akan diturunkan ke tingkat terendah bila hingga jam 07.00 berikutnya belum selesai.
ISBN : 979-99735-0-3
C-13-6
Prosiding Seminar Nasional Manajemen Teknologi II Program Studi MMT-ITS, Surabaya 30 Juli 2005
Prosedur Pengiriman Task Pada solusi sistem komputasi sebelumnya, pengguna mengirimkan shell script hasil keluaran pemrosesan awal aplikasi Chevron Chears, untuk dijalankan oleh server UNIX melalui terminal (console). Praktis setiap proses yang bersifat non-interaktif ini dikirimkan, maka pengguna hanya dapat melihat hasil simulasinya, baik berupa pesan kesalahan maupun keluaran yang diinginkan, bila cursor di layar telah kembali ke shell prompt. Pada Linux cluster, proses pengiriman task dilakukan oleh pengguna melalui PC yang kemudian diteruskan ke headnode menggunakan perintah qsub, yang berfungsi mengirimkan suatu task untuk dimasukkan ke dalam antrian (queue). Fleksibilitas pemantauan pemrosesan task, diperoleh dengan mekanisme monitoring yang disediakan oleh paket program OpenPBS. Monitoring Antrian Task Pengoperasian suatu sistem komputasi dengan Linux cluster akan berjalan dengan baik bila terdapat alat bantu pengawasan (monitoring). OpenPBS telah menyediakan perintah qstat untuk memantau status antrian, serta xpbsmon dengan antarmuka grafis (GUI), yang cukup informatif dan memberikan status setiap node dalam sistem Linux cluster. Contoh tampilan sistem monitoring ini dapat dilihat pada gambar 3.
Gambar 3. Contoh tampilan monitoring antrian (xpbsmon) OpenPBS juga menyediakan berbagai perintah internal yang berguna untuk mengelola antrian dalam Linux cluster. Setiap saat seorang pengguna ingin membatalkan proses, perintah qdel dapat digunakan untuk menghapus proses yang akan dikeluarkan dari antrian, atau dihentikan prosesnya bila sudah dijalankan oleh sistem. Perubahan status prioritas antrian suatu task dapat diubah dengan mudah oleh administrator sistem, namun diperlukan suatu mekanisme koordinasi antar pengguna, untuk menghindari permasalahan yang tidak perlu terjadi.
ISBN : 979-99735-0-3
C-13-7
Prosiding Seminar Nasional Manajemen Teknologi II Program Studi MMT-ITS, Surabaya 30 Juli 2005
KESIMPULAN Dari hasil penelitian, dapat disimpulkan beberapa hal sebagai berikut: Penelitian ini membuktikan bahwa penerapan salah satu aspek manajemen teknologi informasi, yaitu inovasi teknologi tepat guna dengan memanfaatkan waktu idle sistem, dapat membantu pemecahan masalah yang dihadapi oleh kelompok pengguna sistem komputasi. Penggunaan solusi perangkat lunak yang tersedia di komunitas opensource juga dapat membantu suatu proses bisnis di tingkat korporasi yang pada akhirnya memberikan keuntungan bagi perusahaan. Linux cluster sebagai pengganti server UNIX untuk kepentingan sistem komputasi di PT. CPI, bila diinginkan dapat dikembangkan ke suatu bentuk dan skala yang lebih besar, dan diperuntukkan khusus bagi simulasi reservoir.
DAFTAR PUSTAKA Bayucan, A. et. al. (2003) Portable Batch System: OpenPBS Release 2.3 Administrator Guide. Veridian Systems. Boklund, A., Christian J., and Stefan M. (2003) The Story Behind Midnight, a Part Time High Performance Cluster, Dept. of Informatics and Mathematics, University of Trollhattan/Uddevalla. Bookman, C. (2002) Linux Clustering: Building and Maintaining Linux Clusters, Que Publishing. Lucke, Robert W. (2005) Building Clustered Linux Systems, Prentice Hall Professional Technical Reference, New Jersey. Samudrala, R. (2004) Linux Cluster HOWTO, http://www.tldp.org/HOWTO/ClusterHOWTO.html
ISBN : 979-99735-0-3
C-13-8
Prosiding Seminar Nasional Manajemen Teknologi II Program Studi MMT-ITS, Surabaya 30 Juli 2005
ISBN : 979-99735-0-3
C-13-9