OPTIMALISASI KINERJA DUAL-CORE PROCESSOR PADASERVER MELALUI PENGALOKASIAN DAN PENGISOLASIAN PROSESPROSES APLIKASI DENGAN SOLARIS CONTAINERS
SKRIPSI
AINUL HIZRIADI 041401035
DEPARTEMEN ILMU KOMPUTER FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA MEDAN 2010
Universitas Sumatera Utara
OPTIMALISASI KINERJA DUAL-CORE PROCESSOR PADA SERVER MELALUI PENGALOKASIAN DAN PENGISOLASIAN PROSES-PROSES APLIKASI DENGAN SOLARIS CONTAINERS
SKRIPSI Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar Sarjana Sains
AINUL HIZRIADI 041401035
DEPARTEMEN ILMU KOMPUTER FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA MEDAN 2010
Universitas Sumatera Utara
ii
PERSETUJUAN
Judul
: OPTIMALISASI KINERJA DUAL-CORE PROSESOR PADA SERVER MELALUI PENGALOKASIAN DAN PENGISOLASIAN PROSES-PROSES APLIKASI DENGAN SOLARIS CONTAINERS
Kategori
: SKRIPSI
Nama
: AINUL HIZRIADI
Nomor Induk Mahasiswa : 041401035 Program Studi
: SARJANA (S1) ILMU KOMPUTER
Departemen
: ILMU KOMPUTER
Fakultas
: MATEMATIKA DAN ILMU PENGETAHUAN ALAM (FMIPA) UNIVERSITAS SUMATERA UTARA Diluluskan di Medan, 2010
Komisi Pembimbing
:
Pembimbing 2
Pembimbing 1
M. Umar Saleh T, ST NIP. 196206242006041015
Drs. Suyanto, M.Kom NIP. 19590813198011002
Diketahui/Disetujui oleh Program S1 Ilmu Komputer Ketua,
Prof. Dr. Muhammad Zarlis NIP. 195707011986011003
Universitas Sumatera Utara
iii
PERNYATAAN
OPTIMALISASI KINERJA DUAL-CORE PROSESOR PADA SERVER MELALUI PENGALOKASIAN DAN PENGISOLASIAN PROSES-PROSES APLIKASI DENGAN SOLARIS CONTAINERS
SKRIPSI
Penulis mengakui bahwa skripsi ini adalah hasil karya penulis sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, Maret 2010
AINUL HIZRIADI 041401035
Universitas Sumatera Utara
iv
PENGHARGAAN
Alhamdulillah wa syukrilah, puji syukur penulis panjatkan kehadirat Allah SWT, yang telah memberikan rahmat, ridho-Nya, iman dan Islam serta segala sesuatunya dalam hidup, sehingga penulis dapat menyelesaikan penyusunan skripsi ini, sebagai syarat untuk memperoleh gelar Sarjana Komputer, Program Studi Ilmu Komputer Universitas Sumatera Utara. Shalawat dan Salam penulis hadiahkan kepada Nabi Besar Muhammad SAW. Ucapan terima kasih yang sebesar-besarnya penulis sampaikan kepada Bapak Drs. Suyanto, M.Kom sebagai Dosen Pembimbing I dan Bapak M. Umar Saleh T, ST. sebagai Dosen Pembimbing II atas bimbingan, saran, masukan kepada penulis untuk menyempurnakan kajian ini. Panduan ringkas dan padat dan profesional telah diberikan kepada penulis agar penulis dapat menyelesaikan skripsi ini. Selanjutnya kepada para Dosen Penguji Bapak Prof. Dr. Muhammad Zarlis dan Ibu Maya Silvi Lydia, B.Sc, M.Sc atas saran dan kritikan yang sangat berguna bagi penulis. Ucapan terima kasih juga ditujukan kepada Ketua dan Sekretaris Program Studi S1 Ilmu Komputer, Bapak Prof. Dr. Muhammad Zarlis dan Bapak Syariol Sitorus, S.Si, MIT, Dekan dan Pembantu Dekan Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Sumatera Utara, semua dosen pada Program Studi S1 Ilmu Komputer FMIPA USU, pegawai di FMIPA USU. Seluruh proses pengerjaan skripsi ini tidak akan dapat dilalui tanpa dukungan kedua Orang Tua dan Keluarga. skripsi ini penulis persembahkan untuk Mama Hj. Rosnaida dan Ayah, H. dr. Ahmad Chairi Rahman, yang telah memberikan segalanya dalam hidup, dan juga untuk kedua kakak dan abang penulis yaitu Ridha dan Ari. Semoga Allah SWT akan membalasnya. Kepada teman-teman sekelas Kom A atas kelapangan waktu yang diberikan kepada penulis untuk berbagi ilmu. Selanjutnya buat sahabat-sahabat terbaik, Santi Prayudani, terimakasih atas motivasi dan perhatiannya, teman-teman di Red Carpet Society yang sudah seperti saudara sendiri bagi penulis. Terimakasih pula kepada semua pihak yang tidak dapat penulis sebutkan satu persatu, terima kasih atas ide, saran, dan kerjasama yang baik. Penulis menyadari bahwa laporan ini masih jauh dari kesempurnaan, karena kesempurnaan hanya milik Allah kekurangan adalah milik penulis. Oleh karena itu penulis menerima saran dan kritik yang bersifat membangun demi kesempurnaan laporan ini. Semoga dapat bermanfaat bagi kita semuanya.
Universitas Sumatera Utara
v
ABSTRAK
Seringkali kemampuan komputasi yang dimiliki sebuah komputer server tidak dipergunakan secara optimal. Spesifikasi komputer dengan prosesor yang canggih yang saat ini umumnya telah memiliki lebih dari satu buah core, cenderung tidak dimanfaatkan dengan baik pada saat komputer idle. Hal ini yang mendasari dibuatnya tugas akhir ini. Kajian ini bertujuan memanfaatkan kemampuan prosesor dual-core dengan seoptimal mungkin, yaitu dengan cara mengelola penggunaan prosesor oleh dua aplikasi yang dijalankan secara bersamaan pada sebuah server. Untuk melakukannya, digunakanlah Solaris Containers untuk mengalokasikan penggunaan kedua core prosesor oleh kedua aplikasi yang dijalankan. Dengan cara ini, dua aplikasi yang umumnya dijalankan pada dua server yang berbeda dapat digabungkan dalam satu buah server, sekaligus memanfaatkan kemampuan prosesor dengan seoptimal mungkin.
Universitas Sumatera Utara
vi
OPTIMIZE THE PERFORMANCE OF DUAL-CORE PROCESSOR ON THE SERVER THROUGH THE ALOCATION AND ISOLATION OF APPLICATION PROCESSES WITH SOLARIS CONTAINERS
ABSTRACT
Most of the time, computing power of server computer is not utilized to the maximum. Generally, computer with latest prosesors already has multi cores, which commonly not being leveraged optimally while the computer is idle. This issue is the base of this final assignment project. This study aims to utilize the multi-core prosesor computing power as optimal as possible, which is by managing the processing power utilization by two applications running in parallel within the server. To achieve that, Solaris Container technology is being used to manage allocations of computing power utilization of the two cores of the prosesor by the two applications running. This way, two different applications usually run on two different servers can be consolidated into one server, while utilizing the computing power of the prosesor as optimal as possible.
Universitas Sumatera Utara
vii
DAFTAR ISI Halaman
HALAMAN PERSETUJUAN PERNYATAAN PENGHARGAAN ABSTRAK ABSTRACT DAFTAR ISI DAFTAR GAMBAR DAFTAR TABEL
Bab 1
Bab 2
Bab 3
ii iii iv v vi vii ix x
PENDAHULUAN 1.1 Latar Belakang 1.2 Tujuan Penelitian 1.3 Rumusan Masalah 1.4 Batasan Masalah 1.5 Manfaat Penelitian 1.6 Metodologi Penelitian 1.7 Sistematika Penulisan
1 3 3 4 4 5 7
LANDASAN TEORI 2.1 CPU (Central Processing Unit) dan Bagian-bagiannya 2.2 Thread 2.2.1 Keuntungan adanya thread 2.2.2 Model multithreading 2.3 Prosesor Dual-Core 2.4 Server, Web Server, dan Mail Server 2.5 Servis-servis Sistem Operasi 2.6 Alokasi Resource dan Beban Kerja (Workload) 2.7 Sistem Operasi OpenSolaris 2.8 Solaris Containers 2.9 Keuntungan Utama dari Solaris Containers 2.10 Pengalokasian Penggunaan Prosesor 2.11 Manfaat Pembuatan Lingkungan Virtual
9 12 12 13 13 15 16 16 17 18 19 20 21
ANALISIS 3.1 Model Kasus 3.2 Hyper-Threading, Prosesor Dual-Core, Multi-Core dan Dual-Prosesor 3.2.1 Hyper-Threading 3.2.2 Prosesor dual-core dan multi-core 3.2.3 Dual-Prosesor 3.3 Solaris Containers 3.4 Pengelolaan Resource di dalam Sistem Operasi OpenSolaris 3.4.1 Projects 3.4.2 Penerapan aturan dalam pengelolaan resource
23 24 24 25 28 28 29 30 32
Universitas Sumatera Utara
viii
Bab 4
Bab 5
3.4.3 Fair Share Scheduler sebagai scheduling class 3.4.4 CPU-Shares 3.5 Resource Pools 3.5.1 Mengkaitkan proses-proses ke pools 3.5.2 Fair Share Scheduler di pools 3.6 Solaris Zones 3.6.1 Fair Share Scheduler di zones 3.6.2 Mengkaitkan pool terhadap zones 3.7 Pengaplikasian Project, Pool, FSS, dan Zone pada Model Kasus
35 36 37 39 40 40 42 42 42
IMPLEMENTASI DAN PENGUJIAN SISTEM 4.1 Instalasi Sistem Operasi OpenSolaris 4.2 Pengaturan Awal Sistem Operasi OpenSolaris 4.3 Instalasi Web Server dan Mail Server 4.3.1 Konfigurasi apache 4.3.2 Konfigurasi sendmail 4.4 Menggunakan Solaris Containers 4.4.1 Pembuatan project dan task 4.4.2 Pembuatan resource pools 4.4.3 Pembuatan zones 4.5 Mengamati Penggunaan Resource dan Proses yang Berjalan 4.6 Pengujian 4.6.1 Tujuan pengujian 4.6.2 Program yang digunakan dalam pengujian 4.6.2.1 Apache benchmark untuk menguji web server 4.6.2.2 Smtp benchmark untuk menguji mail server 4.6.2.3 Nspin 4.6.3 Skenario pengujian 4.6.4 Hasil pengujian 4.6.5 Analisis hasil pengujian
46 47 49 50 50 51 52 53 55 56 57 58 58 58 58 59 59 60 67
KESIMPULAN DAN SARAN 5.1 Kesimpulan 5.2 Saran
70 71
DAFTAR PUSTAKA LAMPIRAN A : Proses Konfigurasi Solaris Containers LAMPIRAN B : Tahap-tahap Instalasi Sistem Operasi Opensolaris LAMPIRAN C : Data Konfigurasi Resource Pool LAMPIRAN D : Data Konfigurasi Solaris Zones
72
Universitas Sumatera Utara
ix
DAFTAR GAMBAR
Halaman Gambar 1.1 Gambar 2.1 Gambar 2.2 Gambar 2.3 Gambar 2.4
Diagram alir tahap implementasi Diagram blok sederhana sebuah CPU Multithreading Diagram prosesor dual-core Sistem dengan 3 Containers, 1 Containers dengan 1 buah CPU tersendiri dan 2 Containers yang berbagi CPU yang sama Gambar 2.5 Fair Share Scheduler mendistribusikan resource prosesor Gambar 3.1 Model kasus pemanfaatan Solaris Containers Gambar 3.2 Hyper-Threading Gambar 3.3 Layout prosesor dual-core dan quad-core Gambar 3.4 Mainboard dengan single prosesor dan dual prosesor Gambar 3.5 Diagram hubungan antara project, task, dan proses Gambar 3.6 Resource control pada beberapa tingkatan Gambar 3.7 Contoh kasus penggunaan FSS pada 3 buah project Gambar 3.8 Diagram framework Resource Pools Gambar 3.9 Mengkaitkan project dengan pool Gambar 3.10 Aplikasi model kasus tanpa menggunakan Solaris Containers Gambar 3.11 Aplikasi model kasus dengan menggunakan Solaris Containers Gambar 4.1 Membuat user baru Gambar 4.2 Konfigurasi /etc/nsswitch.conf dengan menggunakan nano Gambar 4.3 Hak akses diberikan sama rata atau memiliki perbandingan yang sama untuk semua zone Gambar 4.4 Pada saat zone global idle, hak akses untuk mailzone dan webzone tetap memiliki perbandingan yang sama Gambar 4.5 Perbandingan hak akses yang diberikan adalah 4:2:1 Gambar 4.6 Perubahan penggunaan CPU dengan perbandingan 4:2:1, saat zone global menjadi idle Gambar 4.7 Perbandingan hak akses yang diberikan adalah 5:3:2 Gambar 4.8 Perubahan penggunaan CPU dengan perbandingan 5:3:2, saat zone mailzone menjadi idle
7 11 13 14 19 20 23 25 26 28 31 34 37 38 39 43 43 48 49 61 61 62 62 63 63
Universitas Sumatera Utara
x
DAFTAR TABEL
Halaman Tabel 3.1 Tabel 4.1 Tabel 4.2 Tabel 4.3 Tabel 4.4
Resource Control Perintah-perintah Monitoring Penggunaan CPU dengan Perbandingan 1:1:1 Penggunaan CPU dengan Perbandingan 4:2:1 Penggunaan CPU dengan Perbandingan 5:3:2
33 59 68 68 69
Universitas Sumatera Utara