VIRTUALISASI MENGGUNAKAN XEN HYPERVISOR SEBAGAI EFISIENSI PENGGUNAAN SERVER (PT. Smart Intermedia Solusindo) Disusun oleh ARI KRISTIYANTO 204091002559 PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH JAKARTA 2011 M/1432 H VIRTUALISASI MENGGUNAKAN XEN HYPERVISOR SEBAGAI EFISIENSI PENGGUNAAN SERVER (PT. Smart Intermedia Solusindo) Oleh ARI KRISTIYANTO 204091002559 Skripsi Sebagai Salah Satu Syarat Kelulusan untuk Memperoleh Gelar Sarjana Komputer PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH JAKARTA 2011/1432 H VIRTUALISASI MENGGUNAKAN XEN HYPERVISOR SEBAGAI EFISIENSI PENGGUNAAN SERVER (PT. Smart Intermedia Solusindo) Skripsi Sebagai Salah Satu Syarat untuk Memperoleh Gelar Sarjana Komputer Fakultas Sains dan Teknologi Universitas Islam Negeri Syarif Hidayatullah Jakarta Oleh: ARI KRISTIYANTO 204091002559 Menyetujui, Pembimbing I Pembimbing II Herlino Nanang, MT Yusuf Durrachman, MIT, M.Sc NIP. 197312092005011002 NIP. 197105222006041002 Mengetahui, Ketua Program Studi Teknik Informatika Yusuf Durrachman, MIT, M.Sc NIP. 197105222006041002 PENGESAHAN UJIAN Skripsi berjudul Virtualisasi Menggunakan Xen Hypervisor Sebagai Efisiensi Penggunaan Server (PT. Smart Intermedia Solusindo) yang ditulis oleh Ari Kristiyanto dengan NIM 2040.9100.2559 telah diuji dan dinyatakan Lulus dalam Sidang Munaqosah Fakultas Sains dan Teknologi Universitas Islam Negeri Syarif Hidayatullah Jakarta pada hari Selasa, 9 Agustus 2011 Skripsi ini telah diterima sebagai salah satu syarat untuk memperoleh gelar Sarjana Strata Satu (S1) Program Studi Teknik Informatika Jakarta, 9 Agustus 2011 Menyetujui, Penguji I Penguji II Andrew Fiade, M.Kom Feri Fahrianto, M.Sc NIP. 198208112009121004 NIP. 198008292011011002 Pembimbing I Pembimbing II Herlino Nanang, MT Yusuf Durrachman, MIT,M.Sc NIP. 197312092005011002 NIP. 197105222006041002 Mengetahui, Dekan Fakultas Sains dan Teknologi Ketua Program Studi TeknikInformatika DR. Syopiansyah Jaya Putra, M.Sis Yusuf Durrachman, MIT, M.Sc NIP. 19680117 200112 1 001 NIP. 19710522 200604 1 002 PERNYATAAN DENGAN INI “Virtualisasi SAYA MENYATAKAN BAHWA SKRIPSI DENGAN JUDUL Menggunakan Xen Hypervisor Sebagai Efisiensi Penggunaan Server (PT. Smart Intermedia Solusindo)” ADALAH BENAR – BENAR HASIL KARYA SENDIRI YANG BELUM PERNAH DIAJUKAN SEBAGAI SKRIPSI ATAU KARYA ILMIAH PADA PERGURUAN TINGGI ATAU LEMBAGA MANAPUN. Jakarta, 10 Agustus 2011 ARI KRISTIYANTO NIM. 204091002559 ABSTRAK Ari Kristiyanto (204091002559), Virtualisasi Menggunakan Xen Hypervisor Sebagai Efisiensi Penggunaan Server (PT. Smart Intermedia Solusindo). (Dibawah bimbingan Bapak Herlino Nanang, MT dan Bapak Yusuf Durrachman, MIT, M.Sc). Dewasa ini kebutuhan akan teknologi informasi terus berkembang pesat, terutama kebutuhan akan server salah satunya adalah untuk melayani aplikasi berbasis website. Disamping itu, terdapat kendala yang paling utama dalam pemanfaatan teknologi informasi saat ini yakni kebutuhan akan sumber daya yang tidak murah dan keterbatasan tempat, untuk itu diperlukan pemanfaatan sumber daya semaksimal mungkin. Virtualisasi sebagai salah bagian teknologi informasi yang diharapkan mampu mengatasi permasalahan yang ada. Jika dilihat sebagai bagian dari trend secara keseluruhan pada perusahaan IT yang meliputi komputasi otonom, sebuah skenario di mana lingkungan IT akan mampu mengelola dirinya sendiri didasarkan pada anggapan adanya aktivitas, dan utilitas komputasi, di mana kekuatan pemrosesan komputer dianggap sebagai utilitas bahwa klien dapat membayar yang hanya digunakan saja. Tujuan virtualisasi sendiri adalah untuk mensentralisasi tugas administratif dengan meningkatkan skalabilitas dan menurunkan beban kerja. Metodologi yang digunakan pada penelitian ini adalah NDLC yang memiliki 6 tahap yakni, analisis, desain, prototype simulasi, implementasi, monitoring dan management. Dengan hasil yang diharapkan adalah mampu mengatasi kendala yang ada. Kata kunci : Virtualisasi, Server, Linux, Xen hypervisor, Sistem Operasi, Jaringan, NDLC V bab KATA PENGANTAR Dengan mengucap puji dan syukur kehadirat Allah SWT, karena atas ridho dan hidayahNya, sehingga penulis dapat menyelesaikan Tugas Akhir ini. Tak lupa pula sholawat dan salam kepada Nabi Muhammad saw sebagai nabi akhir zaman. Maksud dan tujuan dari penulisan skripsi ini adalah untuk memenuhi persyaratan kelulusan program Studi Strata I pada Program Studi Teknik Informatika di Universitas Islam Negeri Syarif Hidayatullah Jakarta. Selain itu penulis juga dapat mencoba menerapkan dan membandingkan pengetahuan dan keterampilan yang diperoleh dibangku kuliah dengan kenyataan yang ada di lingkungan kerja. Tidak dipungkiri dalam penulisan skripsi ini, Penulis menemui beberapa kesulitan dan hambatan tapi banyak hikmah yang ada didalamnya. Disamping itu juga, penulis menyadari bahwa penulisan skripsi ini masih jauh dari sempurna, namun besar harapan semoga skripsi ini bermanfaat. Penulis menyadari dalam penulisan skripsi ini tidak lepas dari bantuan berbagai pihak, maka pada kesempatan ini penulis menyampaikan ucapan terima kasih yang setulus-tulusnya kepada : 1. DR. Syopiansyah Jaya Putra, M.Sis, selaku Dekan Fakultas Sains dan Teknologi Universitas Islam Negeri Syarif Hidayatullah Jakarta. 2. Bapak Yusuf Durrachman, MIT, M.Sc, selaku Ketua Program Studi Teknik Informatika dan Ibu Viva Arifin, MMSI, selaku Sekretaris Program Studi Teknik Informatika. 3. Bapak Herlino Nanang, MT dan Bapak Yusuf Durrachman, MIT, M.Sc selaku dosen pembimbing yang telah memberikan waktu, perhatian dan saran dalam penyusunan Tugas Akhir ini. 4. Seluruh dosen dan Staff perpustakaan Universitas Islam Negeri Syarif Hidayatullah Jakarta. 5. Pimpinan dan Staff PT. Smart Intermedia Solusindo yang telah banyak membantu penulis. 6. Pimpinan dan Staff Kantor Akuntan Gatot Permadi Joewono yang juga telah banyak membantu penulis. 7. Teruntuk keluarga penulis, khususnya Ibu dan Bapak serta adik – adikku yang senantiasa memberikan curahan kasih sayang, do’a yang tiada henti dan dukungannya kepada penulis. 8. Sahabat-sahabat penulis di Fakultas Sains dan Teknologi, khususnya jurusan Teknik Informatika angkatan 2004. 9. Semua Pihak yang tidak dapat penulis sebutkan satu persatu yang telah banyak membantu penulis sejak awal perkuliahan sampai akhir penulisan Tugas Akhir ini. Jakarta, 10 Agustus 2011 Ari Kristiyanto 204091002559 DAFTAR ISI Halaman HALAMAN JUDUL .................................................................................. i LEMBAR PENGESAHAN........................................................................ ii LEMBAR PENGESAHAN UJIAN .......................................................... iii PERNYATAAN .......................................................................................... iv ABSTRAKSI ............................................................................................... v KATA PENGANTAR ................................................................................ vi DAFTAR ISI ............................................................................................... viii DAFTAR GAMBAR .................................................................................. xiii DAFTAR TABEL....................................................................................... xv BAB I PENDAHULUAN ........................................................................... 1 1.1 Latar Belakang ............................................................................. 1 1.2 Rumusan Masalah ........................................................................ 3 1.3 Batasan Masalah .......................................................................... 3 1.4 Tujuan Penelitian ......................................................................... 4 1.5 Manfaat Penelitian ....................................................................... 4 1.6 Metodologi Penelitian .................................................................. 4 1.6.1 Metode Pengumpulan Data................................................. 4 1.6.2 Metode Penelitian ............................................................... 5 1.7 Sistematika Penulisan .................................................................. 5 BAB II LANDASAN TEORI .................................................................... 7 2.1 Virtualisasi ................................................................................... 7 2.1.1 Sejarah ................................................................................ 7 2.1.2 Pengertian ........................................................................... 7 2.1.3 Tipe Virtualisasi.................................................................. 9 2.2 Server ........................................................................................... 10 2.2.1 Pengertian ........................................................................... 10 2.2.2 Fungsi Server ...................................................................... 10 2.2.3 Cara Kerja Server ............................................................... 11 2.3 Linux ............................................................................................ 12 2.3.1 Pengertian Linux ................................................................. 12 2.3.2 Pemograman Linux ............................................................. 14 2.3.3 Layanan Pada Linux ........................................................... 16 2.4 Xen Hypervisor ............................................................................ 17 2.4.1 Xen ...................................................................................... 17 2.4.2 Hypervisor .......................................................................... 20 2.5 Client Server ................................................................................ 21 2.5.1 Pengertian ........................................................................... 21 2.6 Sistem Operasi ............................................................................. 23 2.7 Teknologi Middleware................................................................. 25 2.7.1 Konsep Middleware ............................................................ 25 2.7.2 Fitur dan Manfaat dari Middleaware .................................. 26 2.8 Internet ....................................................................................... 29 2.8.1 Pengertian Internet ............................................................ 29 2.8.2 Sejarah Internet ................................................................. 30 2.8.3 Layanan Utama Internet .................................................... 31 2.8.4 Penyedia Akses Internet .................................................... 33 2.9 World Wide Web (WWW).......................................................... 33 2.9.1 Pengertian World Wide Web (WWW) .............................. 34 2.9.2 Sejarah WWW................................................................... 34 2.9.3 Jenis-jenis Web ................................................................. 36 2.9.4 Unsur-unsur Website atau Situs......................................... 37 2.9.5 Istilah-istilah Seputar WWW ............................................ 41 2.10 Network Development Life Cycle (NDLC) ................................ 43 2.10.1 Analysis (Analisis)........................................................... 44 2.10.2 Design (Perancangan) ..................................................... 44 2.10.3 Simulation Prototyping (Prototipe Simulasi) .................. 45 2.10.4 Implementation (Implementasi) ...................................... 45 2.10.5 Monitoring (Pengawasan) ............................................... 45 2.10.6 Management (pengelolaan) ............................................. 46 2.11 Penelitian Sejenis ....................................................................... 46 BAB III METODOLOGI PENELITIAN ................................................ 48 3.1 Metode Pengumpulan Data.......................................................... 48 3.1.1 Studi Pustaka ...................................................................... 48 3.1.2 Studi Lapangan ................................................................... 48 3.2 Metode Pengembangan Sistem .................................................... 49 3.2.1 Analisis ............................................................................... 50 3.2.2 Design System (Sistem Perancangan) ................................. 50 3.2.3 Simulasi Prototype.............................................................. 51 3.2.4 Implementasi....................................................................... 51 3.2.5 Monitoring .......................................................................... 51 3.2.6 Management ....................................................................... 52 3.3 Peralatan Penelitian ..................................................................... 52 3.3.1 Perangkat Keras .................................................................. 52 3.3.2 Perangkat Lunak ................................................................. 53 3.4 Kerangka Berpikir ....................................................................... 53 BAB IV HASIL DAN PEMBAHASAN .................................................... 55 4.1 Gambaran Umum PT. Smart Intermedia Solusindo .................... 55 4.1.1 Visi dan Misi....................................................................... 56 4.1.2 Logo .................................................................................... 57 4.1.3 Struktur Organisasi ............................................................. 58 4.1.4 Tugas................................................................................... 58 4.2 Pengembangan Sistem ................................................................. 59 4.2.1 Analisis ............................................................................... 60 4.2.2 Design System (Sistem Perancangan) ................................. 62 4.2.3 Simulasi Prototype .............................................................. 63 4.2.4 Implementasi....................................................................... 64 4.2.5 Monitoring .......................................................................... 98 4.2.6 Management ....................................................................... 105 BAB V PENUTUP ...................................................................................... 106 5.1 Kesimpulan .................................................................................. 106 5.2 Saran ............................................................................................ 107 DAFTAR PUSTAKA ................................................................................. 109 LAMPIRAN DAFTAR TABEL Halaman Tabel 3.1. Daftar perangkat keras…………………….…………………… 53 Tabel 3.2. Daftar perangkat lunak................................................................ 54 DAFTAR GAMBAR Halaman Gambar 2.1.Server sebagai proxy server dan web server ............................ 13 Gambar 2.2.Arsitektur Xen Hypervisor........................................................ 22 Gambar 2.3.Contoh URL Web National Park Service ................................. 44 Gambar 2.4.Alur NDLC ............................................................................... 46 Gambar 3.1.Alur NDLC ............................................................................... 51 Gambar 4.1.Logo PT. Smart Intermedia Solusindo ..................................... 57 Gambar 4.2.Struktur Organisasi PT. Smart Intermedia Solusindo .............. 58 Gambar 4.3.Keadaan sistem jaringan yang sedang berjalan ........................ 60 Gambar 4.4.Desain Virtualisasi ................................................................... 62 Gambar 4.5.Tahap awal instalasi CentOS.................................................... 64 Gambar 4.6.Informasi partisi hard disk........................................................ 65 Gambar 4.7.Partisi yang akan digunakan ..................................................... 66 Gambar 4.8.Memilih tipe instalasi ............................................................... 67 Gambar 4.9.Menambah group virtualisasi ................................................... 67 Gambar 4.10.Pilihan paket virtualisasi ........................................................ 68 Gambar 4.11.Instalasi selesai ....................................................................... 69 Gambar 4.12.PV-Grub ................................................................................. 75 Gambar 4.13.Setting kernel .......................................................................... 79 Gambar 4.14.Setting kernel selesai .............................................................. 80 Gambar 4.15.Tampilan output PV-Grub ...................................................... 80 Gambar 4.16.Instalasi Tools XenServer ...................................................... 82 Gambar 4.17.Tampilan xs-tool.iso ................................................................ 83 Gambar 4.18.Tools XenServer telah di pasang ............................................ 86 Gambar 4.19.Tampilan tab ”Performance” .................................................. 87 Gambar 4.20.Membuat guest OS baru ......................................................... 91 Gambar 4.21.Buat Virtual mschine baru ...................................................... 92 Gambar 4.22.Instalasi sistem baru ............................................................... 93 Gambar 4.23.Sistem operasi untuk guest ..................................................... 93 Gambar 4.24.Menentukan kapasitas hardisk................................................ 95 Gambar 4.25.Instalasi secara remote............................................................ 96 Gambar 4.26.Tampilan YAST ..................................................................... 97 Gambar 4.27.Grafik penggunaan server sebelum menggunakan virtualisasi 98 Gambar 4.28.Grafik penggunaan server setelah menggunakan virtualisasi 98 Gambar 4.29.Kinerja domain Xen ............................................................... 100 Gambar 4.30.Pemantauan kinerja Xen dengan XenTop .............................. 105 BAB I PENDAHULUAN 1.1. Latar Belakang Kebutuhan akan server untuk menangani banyak layanan dibidang teknologi informasi pada dunia industri menjadi sangat penting. Khususnya dunia industri yang berbasis Teknologi Informasi. Disisi lain, kebanyakan dari server sekarang ini, performasi servisnya tidak lebih dari 15% saja (Ian Pratt, 2006). Hal ini menjadi pertanyaan bagaimana cara mengatasi permasalahan ini dengan mencoba sebuah teknologi baru. Pada akhirnya IBM mencetuskan ide virtualisasi sistem operasi untuk mengatasi hal ini (Ian Pratt, 2006). Virtualisasi sistem operasi menjadi menarik dan banyak diteliti karena bisa menjawab pertanyaan terdahulu akan performasi sebuah server. Dengan teknologi virtualisasi ini utilitas akan server bisa ditingkatkan sehingga performasi bisa meningkat secara significant, dan yang lebih menarik dari teknologi ini adalah kemampuannya mendukung platform mesin server yang berbeda, sistem operasi yang berbeda, dan banyak server di dalamnya, dimana setiap server bisa berbagi resource dengan server lainnya. Dunia industri banyak melirik teknologi ini karena selain keunggulan diatas, teknologi ini juga mampu menepis persepsi bahwa teknologi server mahal. Dengan teknologi virtualisasi jumlah kebutuhan akan komputer server bisa berkurang dan kebutuhan akan tempat menjadi lebih kecil. Keterbatasan resource server dan tempat sudah tidak menjadi permasalahan serius, sehingga mengurangi biaya operasional akan server yang selama ini sangat mahal menjadi sangat murah. Bahkan untuk beberapa perusahaan besar sekelas datacenter mengalami kendala lain yakni tingginya pertumbuhan penggunaan server, tentu memerlukan ruangan yang lebih luas dan juga membutuhkan tenaga listrik yang besar pula. Oleh karena itu dibutuhkannya suatu alternatif sebagai solusi efisiensi penggunaan server dengan menggunakan teknologi virtualisasi. Sebagai perusahaan berkembang atau SME (Small Medium Enterprise) PT. Smart Intermedia Solusindo yang bergerak di bidang web hosting dan data storage menyambut dengan baik penelitian ini. Xen Virtual Machine menggunakan Sistem Operasi berbasis Linux. Sistem operasi Linux dikenal dengan kemampuannnya menangani load kinerja yang tinggi, stabil, dan mempunyai sekuritas yang tinggi. Linux juga mempunyai kemampuan multitasking yang sama dengan Unix, kemampuan bekerja dalam waktu yang relatif lama secara terus menerus, dan juga relatif lebih aman dari serangan pihak-pihak yang tidak bertanggung- jawab ataupun gangguan-gangguan yang disebabkan oleh virus, trojan, dan lain sebagainya. Banyaknya dokumentasi yang ada di internet dan dukungan langsung dari pengembang maupun komunitas Linux ditambah sifatnya yang open source dan gratis, menyebabkan pengembangan dengan menggunakan sistem operasi ini lebih disukai. Adanya bug maupun lubang keamanan yang barangkali ditemukan, bisa segera dilakukan patch baik oleh pengguna sendiri maupun memperoleh patch-nya dari pengembang maupun komunitasnya. Teknik virtualisasi yang akan digunakan penulis dalam membahas virtualisasi ialah dengan teknik Full Hardware Virtualization Systems menggunakan Xen Hypervisor. Xen Hypervisor dikembangkan oleh Citrix Company Inc. Penulis mencoba menggunakan Xen Hypervisor sebagai efisiensi penggunaan server menggunakan teknologi Xen virtual machine sehingga bisa menjadi alternatif bagi industri teknologi informasi khususnya untuk industri golongan menengah kebawah di Indonesia. 1.2. Rumusan Masalah Berdasarkan permasalahan yang dipaparkan pada latar belakang maka dirumuskan beberapa masalah yang dihadapi yaitu: Bagaimana PT. Smart Intermedia Solusindo dapat mengatasi tingginya biaya pengadaan server dan keterbatasan tempat atau ruang yang digunakan untuk server farm dengan menggunakan Xen Hypervisor? Sehingga pada fokusnya penulis melakukan penelitian dengan judul ”Virtualisasi Menggunakan Xen Hypervisor Sebagai Efisiensi Penggunaan Server” 1.3. Batasan Masalah Batasan masalah yang akan diteliti pada penelitian ini adalah sebagai berikut : 1. Teknologi virtualisasi yang digunakan adalah Xen Hypervisor. 2. Sistem Operasi yang digunakan adalah Linux Centos. 3. Penggunaan Xen Hypervisor pada Linux Centos di PT. Smart Intermedia Solusindo 1.4. Tujuan Penelitian Tujuan dari penelitian ini adalah menjawab berbagai permasalahan yang telah penulis uraikan pada perumusan masalah, yaitu : 1. Untuk memaksimalkan sumber daya dan kinerja server. 2. Meminimalkan biaya pengadaan server. 3. Mengefisienkan penggunaan tempat atau ruang server. 1.5. Manfaat Penelitian 1. Bagi Penulis a. Menerapkan ilmu-ilmu yang diperoleh selama perkuliahan. b. Mengerti dan Memahami konsep virtualisasi server. c. Mengerti dan mampu mengimplementasikan virtualisasi pada server. 2. Bagi Perusahaan a. Memberi solusi penghematan biaya infrastruktur jaringan komputer b. System administrator perusahan akan lebih mudah dalam mengatur atau mengklarifikasikan dan mengoptimasi kinerja pada sebuah server. 1.6. Metodologi Penelitian 1.6.1. Metode Pengumpulan Data Metode yang digunakan peneliti dalam melakukan analisis data ada beberapa tahap yaitu: 1. Studi Lapangan: a. Observasi Observasi merupakan kegiatan pengamatan untuk mengetahui permasalahan dan survei pengembangan sistem yang diusulkan. b. Wawancara Kegiatan ini dilakukan untuk memperjelas kebutuhan suatu perusahaan dalam pelaksanaan implementasi sesuai informasi yang terkait dengan penelitian. Berupa kegiatan tanya-jawab kepada staff system administrator PT. Smart Intermedia Solusindo. 2. Studi Pustaka Bagian ini dilakukan untuk mendapatkan data-data tertulis baik secara teoritis dan empiris yang terkait dengan topik penelitian. Selain itu studi pustaka yang dilakukan peneliti pengumpulan bahan-bahan yang berkaitan dengan judul skripsi melalui buku-buku bacaan dan situs internet, penelitian yang terkait dengan implementasi virtualisasi pada server. 1.6.2. Metode Penelitian Metode pengembangan sistem yang dipakai dalam penelitian skripsi ini adalah metode Network Development Life Cycle (NDLC) dengan beberapa tahapan, meliputi Analisis, Desain, Simulation Prototyping, Implementasi, Monitoring dan Management (James E.Goldman:2005). 1.7. Sistematika Penulisan Dalam penyusunan tugas akhir ini, penulis akan menyusun penulisan ini menjadi beberapa bab, yaitu: BAB I : PENDAHULUAN Bab ini berisikan latar belakang, perumusan masalah, ruang lingkup dan batasan masalah, tujuan, manfaat serta metodologi dan sistematika penulisan yang dipakai. BAB II : LANDASAN TEORI Bab ini berisikan berbagai teori yang berhubungan dengan virtualisasi server pada linux centos BAB III : METODOLOGI PENELITIAN Bab ini berisi membahas tentang metode-metode yang dilakukan dalam implementasi virtualisasi pada sebuah server BAB IV : HASIL DAN PEMBAHASAN Bab ini menguraikan tentang hasil implementasi virtualisasi pada sebuah server sebagai efisiensi penggunaan server. BAB V : PENUTUP Bab ini berisikan kesimpulan dari hasil penelitian yang dilakukan dan saran-saran terhadap kekurangan dari penelitian tersebut. BAB II LANDASAN TEORI 2.1. Virtualisasi 2.1.1. Sejarah Bulan juni tahun 1959 seorang ilmuwan computer asal Inggris Christopher Strachey mempublikasikan paper yang berjudul Time Sharing in Large Fast Computers pada saat konferensi international Information Processing di UNESCO New York. Maksud dari konsep time sharing adalah bagaimana sebuah sistem komputer dapat berjalan secara Multi-Tasking dan Multi-Programming. Pada tahun 1960an IBM menjalankan beberapa proyek yang bertujuan untuk mengevaluasi konsep time sharing system dan berhasil menciptakan mesin berdasarkan konsep time sharing dengan memanfaatkan penuh mainframe hardware dengan cara membagi logical hardware kedalam mesin virtual. Mesin yang berhasil diciptakan salah satunya adalah CP/CMS dan M44/44X yang menjadi cikal bakal dari arsitektur mesin virtual ( kernel, 2011). 2.1.2. Pengertian Dalam ilmu komputer, virtualisasi (Inggris: virtualization) adalah istilah umum yang mengacu kepada abstraksi dari sumber daya komputer. Definisi lainnya adalah "sebuah teknik untuk menyembunyikan karakteristik fisik dari sumber daya komputer dan bagaimana sistem lain, aplikasi atau pengguna berinteraksi dengan sumber daya tersebut. Hal ini termasuk membuat sebuah sumber daya tunggal seperti server, sebuah sistem operasi, sebuah aplikasi atau peralatan penyimpanan terlihat berfungsi sebagai beberapa sumber daya logikal; atau dapat juga termasuk definisi untuk membuat beberapa sumber daya fisik (seperti beberapa peralatan penyimpanan atau server) terlihat sebagai satu sumber daya logikal. Istilah virtualisasi sudah digunakan secara luas sejak 1960-an oleh IBM untuk meningkatkan pemanfaatan sistem komputer saat itu yang sangat besar dan mahal, namun saat ini telah diaplikasikan kepada beberapa aspek komputer, dari keseluruhan sistem komputer sampai sebuah kemampuan atau komponen individu. Bentuk lain pengertian Virtualisasi adalah metode untuk membuat sesuatu menjadi lepas dari ketergantungan secara fisik. Contoh; virtual machine adalah komputer, yang sebetulnya hanya berupa sebuah file di hard disk. Dengan virtualisasi, maka sebuah komputer (fisik) bisa menjalankan banyak komputer virtual sekaligus pada saat yang bersamaan. Secara sederhana adalah komputer didalam komputer, yang di implementasi kan oleh software. Sebuah virtual machine mengemulasikan keseluruhan system hardware, mulai dari processor sampai network card, memungkinkan operating system yang berbeda untuk berjalan secara simultan. Setiap sistem operasi berada pada partisi software yang berbeda secara bebas ( EMA, 2011). Berdasarkan press release yang dterbitkan oleh perusahaan riset Gartner Inc, penggunaan teknologi virtualisasi server berkembang pesat. Saat ini hanya 16 persen dari server yang berjalan pada mesin virtual, tetapi Gartner meramalkan bahwa angka tersebut akan naik sekitar 50 persen pada akhir 2012 - atau sekitar 58 juta mesin. Semua faktor ini membuat virtualisasi menjadi trend tertinggi yang mengharuskan perusahaan IT untuk mengkonsentrasikan pada teknologi ini dan memperluas kemampuan tenaga ahli IT. Nantinya akan ada banyak permintaan pekerja dengan keahlian di bidang ini di masa yang akan dating (gartner, 2011). 2.1.3. Tipe Virtualisasi 1. Emulation Emulasi memungkinkan untuk menjalankan dan memodifikasi sistem operasi yang mendukung flat-form yang diemulasikan. Implementasi dalam katagori ini, menggunakan emulator seperti bochs sebagai solusi untuk memungkinkan beberapa kode dijalankan pada CPU dalam rangka meningkatkan kinerja. Namun kelemahan utama pada emulasi adalah rendahnya kepadatan dan performa sistem. Contohnya adalah bochs dan qemu. 2. Paravirtualization Paravirtualization adalah teknik untuk menjalankan sistem operasi yang telah dimodifikasi yang berjalan didalam software yang disebut hypervisor. kelebihan dari paravirtualisasi adalah kinerja yang lebih baik dari emulasi namun memiliki kekurangan yakni membutuhkan sistem operasi yang dimodifikasi agar dapat berjalan di lingkungan virtual, contohnya adalah xen. 3. Operating System-level Virtualization Sistem operasi virtualisasi ialah virtualisasi dimana kernel sebuah sistem operasi dapat membuat lingkungan virtual yang telah di isolasi, sebagai contoh FreeBSD Jail, Solaris Zones/Containers, LinuxVServer, OpenVZ (Kolyshkin, 2011). 2.2. Server 2.2.1. Pengertian Pada komputerisasi, server merupakan kombinasi dari perangkat keras dan perangkat lunak yang dirancang untuk menyediakan layanan untuk klien pada sebuah jaringan komputer. Server didukung oleh prosesor yang bersifat scalable dan penggunaan ram yang besar, juga dilengkapi dengan sistem operasi khusus yang disebut sebagai sistem operasi jaringan. Server juga digunakan untuk menjalankan perangkat lunak administratif yang mengontrol akses terhadap jarngan dan sumber daya yang terdapat didalamnya. Umumnya, didalam sistem operasi terdapat berbagai macam service yang menggunakan arsitektur klien/server. Contoh dari service ini adalah DHCP Server, Mail Server, Web Server, FTP server, DNS Server dan sebagainya. Setiap sistem operasi yang digunakan untuk server biasanya sudah disediakan layanan-layanan tersebut disamping layanan tersebut bisa didapatkan dari pihak ketiga. Sistem Operasi yang digunakan sebagai server, biasanya tidak memerlukan GUI dan bersifat opsional. Namun saat ini banyak sekali komputer desktop dengan GUI dapat digunakan sebagai server namun sangat sedikit yang menggunakannya. Server biasanya terhubung dengan client dengan kabel UTP dan sebuah Network Card (adibowo, 2011). 2.2.2. Fungsi Server Dilihat dari fungsinya, server di kategorikan dalam 2 jenis: 1. Server Aplikasi (application server) Server aplikasi adalah server yang digunakan untuk menjalankan berbagai macam aplikasi yang dapat diakses oleh client. 2. Server Data (data server) Server data adalah server yang digunakan untuk menyimpan data, baik yang digunakan client secara langsung maupun data yang diproses oleh server aplikasi. 2.2.3. Cara Kerja Server Cara kerja sebuah server sangat lah sederhana, sebuah komputer server akan mendengarkan sebuah request dengan telinga yang disebut port, setiap layanan berjalan pada port yang berbeda berdasarkan standard international. Sebagai contoh, sebuah web server akan mendengarkan sebuah request melalui port 80, port 80 sering disebut sebagai HTTP port. Contoh lainnya ketika mengirim email, SMTP sever akan mendengarkan port 25. Tentunya ada aturan-aturan bagaimana cara mengirimkan sebuah request kepada server dan bagaimana seharusnya server merespond request tersebut. Setiap layanan akan merespon terhadap request dari klien. Sebagai contoh, klien DHCP akan memberikan request kepada server yang menjalankan service DHCP server; ketika sebuah klien membutuhkan alamat IP, klien akan memberikan perintah/request kepada server, dengan bahasa yang dipahami oleh server DHCP, yakni protokol DHCP itu sendiri (issue, 2011). Gambar 2.1 : Server sebagai proxy server dan web server (Sumber : issue, 2011) 2.3. Linux 2.3.1. Pengertian Linux Linux tidaklah menjadi hal yang awam untuk dibicarakan di dunia teknologi informasi. Linux adalah nama yang diberikan kepada sistem operasi komputer berbasis Unix. Linux merupakan salah satu contoh hasil pengembangan perangkat lunak bebas dan sumber terbuka utama (Open Source). Seperti perangkat lunak bebas dan sumber terbuka lain pada umumnya, kode sumber Linux dapat dimodifikasi, digunakan dan didistribusikan kembali secara bebas oleh siapapun. Nama "Linux" berasal dari nama kernelnya (kernel Linux), yang dibuat tahun 1991 oleh Linus Torvalds. Sistemnya, peralatan sistem dan pustakanya umumnya berasal dari sistem operasi GNU, yang diumumkan tahun 1983 oleh Richard Stallman. Kontribusi GNU adalah dasar dari munculnya nama alternatif GNU/Linux. Sistem operasi Linux yang dikenal dengan istilah distribusi Linux (Linux distribution) atau distro Linux umumnya sudah termasuk perangkat-perangkat lunak pendukung seperti server web, bahasa pemrograman, basisdata, tampilan desktop (desktop environment) (seperti GNOME dan KDE), dan paket aplikasi perkantoran (office suite) seperti OpenOffice.org, KOffice, Abiword, dan Gnumeric. Sebuah sistem Linux umumnya menyediakan sebuah antarmuka baris perintah lewat sebuah shell, yang merupakan cara tradisional untuk berinteraksi dengan sebuah sistem Unix. Sebuah distro Linux yang dikhususkan untuk lingkungan server mungkin hanya memiliki CLI(Command Line Interface) sebagai satu-satunya antarmuka. Sebuah sistem yang tidak memiliki monitor hanya dapat dikontrol melalui baris perintah lewat protokol seperti SSH atau telnet. Kebanyakan komponen tingkat rendah Linux, termasuk GNU Userland, menggunakan CLI secara ekslusif. CLI cocok untuk digunakan pada lingkungan otomasi tugas-tugas yang repetitif atau tertunda, dan menyediakan komunikasi interproses yang sangat sederhana. Sebuah program emulator terminal grafis sering digunakan untuk mengakses CLI dari sebuah Linux desktop. Perbedaan utama antara Linux dan sistem operasi populer lainnya terletak pada kernel Linux dan komponenkomponennya yang bebas dan terbuka. Linux bukan satu-satunya sistem operasi dalam kategori tersebut, walaupun demikian Linux adalah contoh terbaik dan terbanyak digunakan. Beberapa lisensi perangkat lunak bebas dan sumber terbuka berdasarkan prinsip-prinsip copyleft, sebuah konsep yang menganut prinsip: karya yang dihasilkan dari bagian copyleft harus juga merupakan copyleft. Lisensi perangkat lunak bebas yang paling umum, GNU GPL, adalah sebuah bentuk copyleft, dan digunakan oleh kernel Linux dan komponen-komponen dari proyek GNU. Linux dikendalikan oleh pengembang dan komunitas penggunanya. Beberapa vendor mengembangkan dan mendanai distribusi mereka sendiri dengan dasar kesukarelaan. Debian merupakan contoh yang bagus. Yang lain memiliki versi komunitas dari versi komersialnya seperti yang Red Hat lakukan dengan Fedora. Di banyak kota dan wilayah, asosiasi lokal yang dikenal dengan nama Kelompok Pengguna Linux (Linux Users Group atau LUG) mempromosikan Linux dengan mengadakan pertemuan, demonstrasi, pelatihan, dukungan teknis dan instalasi sistem operasi Linux secara gratis. Ada banyak juga komunitas Internet yang menyediakan dukungan terhadap pengembang dan pengguna Linux. Banyak proyek distribusi dan perangkat lunak sumber terbuka yang memiliki ruang percakapan IRC atau newsgroup. Forum daring merupakan bentuk lain untuk mendapatkan dukungan, contoh: LinuxQuestions.org dan forum Gentoo. Distribusi Linux memiliki [milis] dengan pembagian topik seperti penggunaan atau pengembangan. 2.3.2. Pemograman Linux Kebanyakan distribusi Linux mendukung banyak bahasa pemrograman. Koleksi peralatan untuk membangun aplikasi dan program-program sistem operasi yang umum terdapat di dalam GNU toolchain, yang terdiri atas GNU Compiler Collection (GCC) dan GNU build system. GCC menyediakan kompilator untuk Ada, C, C++, Java, dan Fortran. Kernel Linux sendiri ditulis untuk dapat dikompilasi oleh GCC. Kompilator tak bebas (proprietary) untuk Linux antara lain adalah Intel C++ Compiler dan IBM XL C/C++ Compiler. Kebanyakan distribusi juga memiliki dukungan untuk Perl, Ruby, Python dan bahasa pemrograman dinamis lainnya. Contoh bahasa pemrograman yang tidak umum tetapi tetap mendapat dukungan di Linux antara lain adalah C# dengan proyek Mono yang disponsori oleh Novell, dan Scheme. Sejumlah Java Virtual Machine dan peralatan pengembang jalan di Linux termasuk Sun Microsystems JVM (HotSpot), dan J2SE RE IBM, serta proyek-proyek sumber terbuka lainnya seperti Kaffe. Dua kerangka kerja utama untuk pengembangan aplikasi grafis di Linux adalah GNOME dan KDE. Proyek-proyek ini berbasiskan GTK+ dan Qt. Keduanya mendukung beragam bahasa pemrograman. Untuk Integrated development environment terdapat Anjuta, Code::Blocks, Eclipse, KDevelop, Lazarus, MonoDevelop, NetBeans, dan Omnis Studio, sedangkan penyunting teks yang telah lama tersedia adalah Vim dan Emacs. Linux adalah sistem operasi yang di-porting secara luas. Kernel Linux awalnya didisain hanya untuk mikroprosesor Intel 80386, sekarang kernel Linux telah jalan di beragam arsitektur komputer antara lain di perangkat hand-held iPAQ berbasis ARM, komputer mainframe IBM System z9, dari peralatan berupa telepon bergerak hingga superkomputer.Terdapat distribusi yang dikhususkan untuk sejumlah kecil arsitektur. Fork kernel ELKS dapat dijalankan di mikroprosesor 16-bit Intel 8086 atau Intel 80286, sementara fork kernel µClinux dapat dijalankan di atas sistem yang tidak memiliki sebuah unit manajemen memori. 2.3.3. Layanan Pada Linux Pada awalnya Linux memang dirancang sebagai sistem operasi jaringan. Oleh karena itu tidak heran jika banyak sekali program yang berjalan dibackground (tidak terlihat di layar monitor) program seperti itu disebut dengan daemon. Di Windows kita biasa menyebutnya dengan istilah service(layanan). Jadi walaupun sepintas tidak ada aktivitas program di layar monitor, tapi sebenarnya komputer tetap menjalankan beberapa program di background. Misalnya saja httpd untuk webserver atau ftpd untuk FTP server. Service merupakan program yang dijalankan oleh komputer untuk melayani request yang ditujukan pada komputer tersebut. Sebagai contoh agar user bisa melakukan telnet ke suatu server maka sever tersebut harus menjalankan service telnetd, karena jika telnetd tidak dijalankan maka server tersebut tidak akan melayani telnet. Kebanyakan service berjalan dengan menggunakan protokol TCP dan UDP dimana masing masing service telah mempunyai nomor port tersendiri sehingga tidak akan terjadi tabrakan antar service. Pada saat pertama kali menginstal Linux, banyak sekali service yang secara default juga terinstal dan berjalan. Sehingga perlu dilakukan pemeriksaan apakah service-service yang telah berjalan tersebut benar-benar dibutuhkan. Jika memang tidak diperlukan sebaiknya service-service tersebut dimatikan untuk mencegah ekploitasi dan pemborosan sumberdaya. Pada Linux juga dikenal tiga jenis service yaitu init service, inet service dan xinet service. Init service merupakan service yang dijalankan oleh script init yang terdapat pada file dalam direktori /etc/rc.d/ atau /etc/rc.d/init.d/. Inet service merupakan service yang dijalankan oleh daemon inetd, dimana inetd sendiri dijalankan melalui init service, sedangkan xinetd merupakan pengganti dari inetd yang digunakan pada kernel 2.4.x. yang digunakan untuk menghandle setiap koneksi yang masuk pada masing-masing port. Seperti yang diketahui bahwa service yang ada pada linux berjalan berdasarkan port masingmasing Mematikan semua service mungkin memang cara terbaik untuk menjaga keamanan sistem, tetapi hal tersebut tidak mungkin dilakukan jika komputer tersebut adalah sebuah server, karena untuk melayani request dari klien banyak service yang harus dijalankan. Untuk memudahkan dalam mengambil keputusan apakah sebuah service harus dijalankan atau dimatikan ada beberapa hal yang dapat digunakan sebagai pedoman, yaitu : 1. Sedapat mungkin mengurangi service yang berjalan dengan tanpa mengorbankan fungsi dari komputer tersebut. 2. Jika tidak mengenal suatu service untuk lebih aman sebaiknya dimatikan. 3. Memastikan bahwa service-service tersebut tidak mempunyai hole, dengan melihat referensi dan informasi patch. Untuk melihat service apa saja yang sedang dijalankan bisa digunakan utilitas seperti chkconfig, netstat atau ps. 2.4. Xen Hypervisor 2.4.1. Xen Xen (baca : Zen) merupakan sebuah virtual machine monitor untuk computer dengan arsitektur IA-32, x86-64, Itanium and PowerPC 970 . Hal tersebut memungkinkan beberapa guest OS untuk mengeksekusi perangkat keras yang dimiliki oleh host OS secara bersamaan. Xen di kembangkan dan di rilis sebagai bagian dari free software dengan lisensi di bawah GNU General Public Licence (GPLv2). Xen memiliki struktur yang kompleks dengan Hypervisor yang merupakan layer paling bawah atau paling inti . Di atas lapisan ini terdapat beberapa sistem operasi tamu atau guest OS yang berjalan pada host OS atau system operasi utama dan di dalam Xen lebih sering di sebut sebagai “Domain Zero (dom04)” . Secara otomatis pada saat booting dom0 akan menerima hak istimewa khusus untuk mengelola hypervisor dan akses secara langsung ke semua perangkat keras. System administrator dapat login menggunakan dom0 untuk mengelola setiap sistem operasi tamu atau di sebut sebagai “domain U (domU5)”. Sistem operasi yang bisa di jadikan sebagai dom0 dan domU di antaranya adalah Linux , NetBSD , dan solaris . Pada Xen versi 3.0 , xen sudah bisa di jalankan di sistem operasi Microsost Windows dan sistem operasi proprietary lain yang dapat di jadikan sebagai domU pada CPU x86 yang mendukung virtualisasi (seperti : Intel VT dan AMD-V). Sehingga jika kesimpulannya dengan menggunakan xen kita bisa membuat virtual machine (domU) di dalam physical machine server (dom0) jadi kita bisa memisahkan beberapa layanan server (seperti : mail server , web server , dns server , dll). Hal ini dapat memudahkan dalam me-maintenance serta efisiensi untuk menjaga kestabilan layanan server, karena dengan melakukan pemisahan layanan – layanan server maka akan berdampak pada kinerja dan kecepatan server dalam memberikan layanan kepada client. Berikut adalah kelebihan dan kekurangan Xen (Disebut Virtual Dedicated Server / VDS). Kelebihan Xen : 1. Sistemnya berdiri sendiri layaknya sebuah Dedicated Server 2. Menggunakan SWAP 3. Hampir tidak ada masalah dengan seting karena tidak dibatasi oleh node 4. Jika Memory Dedicated habis, maka SWAP akan berfungsi otomatis dan tidak seperti OpenVZ yang down, pada XEN hanya menyebabkan sistem VDSnya akan melambat 5. Bisa mendukung instalasi Windows Server Kekurangan Xen : 1. Setup Node dengan partisi LVM (Karena membutuhkan VG untuk client VDSnya) 2. XEN hanya dapat berjalan stabil pada memori minimal 256 MB RAM 3. Perlu space lebih di node untuk temp prosesnya 4. Tidak bisa melakukan overselling 5. Memerlukan resources yang besar Xen biasanya merupakan pilihan pertama untuk situs yang memerlukan lebih banyak memori. Khususnya bagi pengguna yang berencana untuk melakukan banyak task yang membutuhkan memori tambahan, seperti : video encoding, kompilasi atau pengembangan aplikasi Java. Harga XEN juga jauh lebih mahal dibanding openVZ dikarenakan ketidakmampuannya untuk overselling. 2.4.2. Hypervisor Hypervisor sering juga disebut sebagai Mikrokernel L4. Dalam pengetahuan Ilmu Komputer, mikrokernel merupakan seperangkat perangkat lunak dalam jumlah minimum yang meyediakan beragam mekanisme dasar yang dibutuhkan untuk bekerja sebagai sebuah sistem operasi, seperti halnya manajemen pengalamatan ruang tingkat rendah, manajemen thread, dan komunikasi antar proses. Dalam implementasinya mikrokernel merupakan satu-satunya perangkat lunak yang berjalan dengan tingkat kewenangan tertinggi (umumnya disebut sebagai modus supervisor atau modus kernel) dari serangkaian level kewenangan yang tersedia pada perangkat kerasnya. Layanan yang disediakan oleh sebuah sistem operasi beberapa diantaranya adalah device driver, protokol jaringan, sistem berkas, dan kode antarmuka pengguna yang berada dalam ruang pengguna. Mikrokernel sangat erat terkait dengan exokernel, namun implementasinya lebih bersifat minimalis, dan secara spesifik untuk mendukung pengimplementasian mesin virtual. Istilah nanokernel dalam sejarahnya digunakan untuk membedakan mikrokernel saat ini dengan istilah mikrokernel sebelumnya yang menyediakan layanan sistem aktual, namun secara prinsip minimalitas menurut Jochen Liedtke dalam disain mikrokernel L4 menyebutkan bahwa istilah-istilah tersebut memiliki arti yang kurang lebih sama. Gambar 2.2 Arsitektur Xen hypervisor 2.5. Client Server 2.5.1. Pengertian Client-Server adalah arsitektur jaringan yang memisahkan client(biasanya aplikasi yang menggunakan GUI) dengan server. Masing-masing client dapat meminta data atau informasi dari server. Sistem client server didefinisikan sebagai sistem terdistribusi, tetapi ada beberapa perbedaan karakteristik yaitu : 1. Service (layanan) a. Hubungan antara proses yang berjalan pada mesin yang berbeda b. Pemisahan fungsi berdasarkan ide layanannya. c. Server sebagai provider, client sebagai konsumen 2. Sharing resources (sumber daya) Server bisa melayani beberapa client pada waktu yang sama, dan meregulasi akses bersama untuk share sumber daya dalam menjamin konsistensinya. 3. Asymmetrical protocol (protokol yang tidak simetris) Many-to-one relationship antara client dan server.Client selalu menginisiasikan dialog melalui layanan permintaan, dan server menunggu secara pasif request dari client. 4. Transparansi lokasi Proses yang dilakukan server boleh terletak pada mesin yang sama atau pada mesin yang berbeda melalui jaringan.Lokasi server harus mudah diakses dari client. 5. Mix-and-Match Perbedaan server-client platforms 6. Pesan berbasiskan komunikasi Interaksi server dan client melalui pengiriman pesan yang menyertakan permintaan dan jawaban. 7. Pemisahan interface dan implementasi Server bisa diupgrade tanpa mempengaruhi client selama interface pesan yang diterbitkan tidak berubah. Ketika client membutuhkan suatu service yang ada di server, dia akan mengirim request kepada server lewat jaringan. Jika request tersebut dapat dilaksanakan, maka server akan mengirim balasan berupa service yang dibutuhkan untuk saling berhubungan menggunakan Socket. Socket adalah sebuah endpoint untuk komunikasi didalam jaringan. Sepasang proses atau thread berkomunikasi dengan membangun sepasang socket, yang masing-masing proses memilikinya. Socket dibuat dengan menyambungkan dua buah alamat IP melalui port tertentu. Secara umum socket digunakan dalam client/server system, dimana sebuah server akan menunggu client pada port tertentu. Begitu ada client yang menghubungi server maka server akan menyetujui komunikasi dengan client melalui socket yang dibangun. Sebagai contoh sebuah program web browser pada host x (IP 146.86.5.4) ingin berkomunikasi dengan web server (IP 152.118.25.15) yang sedang menunggu pada port 80. Host x akan menunjuk sebuah port. Dalam hal ini port yang digunakan ialah port 1655. Sehingga terjadi sebuah hubungan dengan sepasang socket (146.86.5.4:1655) dengan (152.118.25.15:80) (budi, 2011). 2.6. Sistem Operasi Sistem operasi atau dalam bahasa Inggris: operating system atau OS adalah perangkat lunak sistem yang bertugas untuk melakukan kontrol dan manajemen perangkat keras serta operasi-operasi dasar sistem, termasuk menjalankan software aplikasi seperti program-program pengolah kata dan browser web. Secara umum, Sistem Operasi adalah software pada lapisan pertama yang ditaruh pada memori komputer pada saat komputer dinyalakan. Sedangkan software-software lainnya dijalankan setelah Sistem Operasi berjalan, dan Sistem Operasi akan melakukan layanan inti umum untuk software-software itu. Layanan inti umum tersebut seperti akses ke disk, manajemen memori, skeduling task, dan antar-muka user. Sehingga masing-masing software tidak perlu lagi melakukan tugas-tugas inti umum tersebut, karena dapat dilayani dan dilakukan oleh Sistem Operasi. Jika sistem komputer terbagi dalam lapisan-lapisan, maka Sistem Operasi adalah penghubung antara lapisan hardware dan lapisan software. Lebih jauh daripada itu, Sistem Operasi melakukan semua tugas-tugas penting dalam komputer, dan menjamin aplikasi-aplikasi yang berbeda dapat berjalan secara bersamaan dengan lancar. Sistem Operasi menjamin aplikasi software lainnya dapat menggunakan memori, melakukan input dan output terhadap peralatan lain, dan memiliki akses kepada sistem file. Apabila beberapa aplikasi berjalan secara bersamaan, maka Sistem Operasi mengatur jadwal yang tepat, sehingga sedapat mungkin semua proses yang berjalan mendapatkan waktu yang cukup untuk menggunakan prosesor (CPU) serta tidak saling mengganggu. Dalam banyak kasus, Sistem Operasi menyediakan suatu pustaka dari fungsi-fungsi standar, dimana aplikasi lain dapat memanggil fungsifungsi itu, sehingga dalam setiap pembuatan program baru, tidak perlu membuat fungsi-fungsi tersebut dari awal. Sistem Operasi secara umum terdiri dari beberapa bagian: 1. Mekanisme Boot, yaitu meletakkan kernel ke dalam memori 2. Kernel, yaitu inti dari sebuah Sistem Operasi 3. Command Interpreter atau shell, yang bertugas membaca input dari pengguna. 4. Pustaka-pustaka, yaitu yang menyediakan kumpulan fungsi dasar dan standar yang dapat dipanggil oleh aplikasi lain. 5. Driver untuk berinteraksi dengan hardware eksternal, sekaligus untuk mengontrol mereka. Sebagian Sistem Operasi hanya mengizinkan satu aplikasi saja yang berjalan pada satu waktu, tetapi sebagian besar Sistem Operasi baru mengizinkan beberapa aplikasi berjalan secara simultan pada waktu yang bersamaan. Sistem Operasi seperti itu disebut sebagai Multi-tasking Operating System. Beberapa Sistem Operasi berukuran sangat besar dan kompleks, serta inputnya tergantung kepada input pengguna, sedangkan Sistem Operasi lainnya sangat kecil dan dibuat dengan asumsi bekerja tanpa intervensi manusia sama sekali. Tipe yang pertama sering disebut sebagai Desktop OS, sedangkan tipe kedua adalah Real-Time OS. Sebagai contoh, yang dimaksud sistem operasi itu antara lain adalah Unix, Linux, Windows, FreeBSD, Solaris dan sebagainya. 2.7. Teknologi Middleware Middleware adalah perangkat lunak sistem yang berdiri sendiri atau program layanan, aplikasi terdistribusi menggunakan perangkat lunak ini untuk berbagi sumber daya antar teknologi yang berbeda. Middleware mengelola database atau program klien dan komunikasi awal antara aplikasi. Middleware antara klien didistribusikan dan jasa memainkan peranan penghubung, seperti manajemen transaksi, load balancing, dan komputasi berbasis Web. 2.7.1. Konsep Middleware Dengan pesatnya perkembangan teknologi komputer, berbagai perangkat lunak aplikasi harus transplantasi berbagai platform, atau platform yang dibutuhkan untuk mendukung beberapa aplikasi dan manajemen dari beberapa sistem aplikasi, perangkat lunak dan platform perangkat keras dan sistem aplikasi harus handal dan efisien transfer data atau konversi, sistem ini mampu menjamin interoperabilitas. Semua ini memerlukan perangkat lunak dan dibangun pada platform perangkat keras, sementara juga menyediakan dukungan terhadap aplikasi atas sistem perangkat lunak, dan middleware di lingkungan ini. Sebagai teknologi middleware adalah dalam proses berkembang, sehingga saat ini tidak dapat didefinisikan secara tegas. Definisi Populer adalah: Middleware adalah perangkat lunak sistem yang terpisah atau program layanan, mendistribusikan perangkat lunak aplikasi menggunakan software ini dalam suatu sumber daya bersama antara teknologi yang berbeda. Middleware di klien / sistem operasi server, pengelolaan sumber daya komputasi dan komunikasi jaringan. Seperti dapat dilihat dari definisi middleware, middleware adalah perangkat lunak kelas, bukan software, middleware tidak hanya saling berhubungan, tetapi juga untuk mencapai interoperabilitas antara aplikasi, middleware didasarkan pada pemrosesan perangkat lunak didistribusikan penekanan khusus pada definisi komunikasi jaringan. 2.7.2. Fitur dan Manfaat dari Middleware Dalam arti biasa, middleware harus memiliki fitur berikut: sejumlah besar aplikasi untuk memenuhi kebutuhan; dijalankan pada hardware berganda dan platform OS; dukungan komputasi terdistribusi, untuk menyediakan antar-jaringan, perangkat keras dan platform OS, aplikasi atau layanan interaksi transparanfungsi; mendukung protokol standar; mendukung antarmuka standar. Programmer untuk menyediakan sejumlah besar dengan memanggil middleware API, lingkungan heterogen, komunikasi, dan dengan demikian terlindung sistem operasi yang kompleks dan protokol jaringan heterogen. Klien dan middleware server untuk menyediakan konektivitas antara layanan yang memiliki antarmuka standar dan prosedur protokol.Untuk sistem operasi yang berbeda dan platform perangkat keras, mereka dapat memenuhi berbagai antarmuka dan spesifikasi protokol untuk mencapainya. Sebagai antarmuka standar untuk portabilitas dan protokol standar untuk pentingnya interoperabilitas, middleware telah menjadi bagian utama dari banyak pekerjaan standardisasi. Untuk pengembangan aplikasi, middleware, sistem operasi dan layanan jaringan jauh lebih penting untuk memberikan middleware program antarmuka mendefinisikan sebuah lingkungan yang relatif stabil aplikasi tingkat tinggi, terlepas dari perangkat keras komputer dan perangkat lunak yang mendasari sistem bagaimana untuk menggantikan yang lama, selama middleware update, dan memelihara middleware yang sama dan definisi antarmuka eksternal, aplikasi, hampir tanpa modifikasi, sehingga melindungi pengembangan perangkat lunak aplikasi enterprise dan pemeliharaan investasi besar. Penggunaan teknologi ini membantu mengurangi beban pengembang aplikasi sehingga mereka menggunakan hardware yang telah ada, sistem operasi, jaringan, sistem manajemen database, dan model obyek untuk membuat perangkat lunak aplikasi mendistribusikan lebih berguna. Sebagai middleware untuk melindungi perusahaan-perusahaan investasi untuk menjamin stabilitas relatif dari aplikasi perangkat lunak, ekstensi aplikasi untuk mencapai; sementara middleware sangat menyederhanakan struktur hardware dari kompleksitas lingkungan multi-pengolahan terdistribusi, itu menyebabkan munculnya semakin perhatian pengguna. Manfaat dari middleware itu sendiri yaitu memungkinkan aplikasi : 1. Transparansi di seluruh jaringan sehingga menyediakan interaksi dengan layanan atau aplikasi lain 2. Independen dari layanan jaringan 3. Handal dan selalu tersedia Middleware menawarkan beberapa keunggulan untuk bisnis dan industri. Dalam bisnis sering digunakan untuk menghubungkan informasi dari departemen database seperti penggajian, penjualan, dan akuntansi. E-Commerce juga menggunakan middleware ini untuk membantu dalam menangani transaksi cepat dan aman di berbagai jenis lingkungan komputer. Singkatnya, middleware telah menjadi elemen penting di berbagai industri, berkat kemampuannya untuk menyatukan sumber daya yang berbeda di seluruh jaringan atau platform komputasi. Jenis Middleware Hurwitz mengatur sistem klasifikasi berbagai jenis middleware yang tersedia saat ini. Klasifikasi ini didasarkan pada skalabilitas dan recoverability : a. Remote Procedure Call. Klien membuat panggilan dengan prosedur yang berjalan pada sistem remote. Dapat asinkron atau sinkron. b. Message Oriented Middleware. Pesan yang dikirim ke client dikumpulkan dan disimpan sampai ditindak lanjuti, sementara client terus dengan pengolahan lain. c. Object Request Broker. Jenis ini memungkinkan aplikasi untuk mengirim permintaan dalam suatu sistem berorientasi objek. d. SQL-oriented Data Access Middleware antara aplikasi dan database server e. Embedded Middleware. Layanan komunikasi dan integrasi antarmuka software / firmware yang beroperasi antara aplikasi dan real time operating system. 2.8. Internet Dunia dalam genggaman, begitulah ungkapan yang tepat diutarakan saat membicarakan tentang teknologi internet. Dengan internet kita bisa menjelajah ke mana saja, asal mengetahui tujuannya. Kita bisa menelpon gratis dan berkirim surat secara cepat, mudah, murah dan tidak mengenal letak geografis (Yuhefizar : 2008 : 1). 2.8.1. Pengertian Internet Ada tiga pendapat yang mengatakan bahwa internet adalah sebuah singkatan dari kata international network, internetworking dan interconnected network (Yuhefizar : 2008 : 1). Internet adalah rangkaian hubungan jaringan komputer yang dapat diakses secara umum diseluruh dunia, yang mengirimkan data dalam bentuk paket data berdasarkan standar Internet Protocol (IP). Lebih dalam lagi, internet adalah kumpulan jaringan dari jaringan-jaringan komputer dunia yang terdiri dari jutaan unit-unit kecil, seperti jaringan pendidikan, jaringan bisnis, jaringan pemerintahan dan lain-lain, yang secara bersama menyediakan layanan informasi seperti e-mail, online chat, transfer file, dan saling keterhubungan (linked) antara satu halaman web dengan sumber halaman web yang lainnya (Yuhefizar : 2008 : 2). Pengertian internet menurut Nana Suarna ST, internet merupakan jaringan komputer terluas di dunia (world wide network) dimana antara satu komputer dengan komputer lainnya saling berhubungan dan saling berkomunikasi (Nana Suarna, ST : 2007 : 9). Sedangkan pengertian internet menurut situs adalah hubungan komputer dengan berbagai tipe yang membentuk sistem jaringan yang mencakup seluruh dunia (jaringan komputer global) dengan melalui jalur telekomunikasi seperti telepon, radio link, satelit dan lainnya yang berasal dari kata Interconnection Networking (Pramana, 2009). 2.8.2. Sejarah Internet Sejarah kelahiran internet bermula dari lahirnya ARPAnet (Advanced Research Projects Agency Network) pada tahun 1969. ARPAnet dikembangkan oleh IPTO (Information Processing Techniques Office) dengan dukungan penuh dari US DARPA (The United States department of Defense Advanced Research Projects Agency). Tujuan awal proyek ARPAnet ini adalah mencari solusi untuk membangun komunikasi data dari node (komputer) yang satu dengan node yang lainnya yang jaraknya sangat berjauhan. Pada waktu itu, mesin yang digunakan untuk berkomunikasi disebut IMPs (Interface Message Processors). Komunikasi data pertama dilakukan antara mesin IMPs yang berada di UCLA di bawah kendali Leonard Kleinrock’s dengan mesin IMPs yang berada di Stanford Research Institute pada bulan Oktober 1969 (Yuhefizar : 2008 : 3). Pada tahun 1970, ARPAnet berhasil menghubungkan 10 node melalui protokol NCP, dan pada tahun 1972, Ray Tomlinson berhasil menemukan konsep komunikasi jarak jauh yang kita kenal saat ini sebagai e-mail sekaligus mendeklarasikan icon ‘@’ sebagai pembatas antara nama user dengan domainnya. Pada tahun yang sama ditemukan juga protocol telnet, sebagai protocol untuk remote node dari jarak jauh. Sejalan dengan itu, pada tahun 1976, Ratu Inggris, berhasil mengirimkan e-mail dari Royal Signals dan Radar Establishment di Malvern, dan beliau dianggap sebagai pemimpin negara pertama yang menggunakan teknologi email. Network Control Protocol atau Network Communication Protocol atau Network Control Program mengacu pada maksud yang sama yaitu NCP adalah jenis protokol yang digunakan untuk berkomunikasi data saat itu, hingga tanggal 1 Januari 1983. NCP digantikan oleh protokol TCP/IP (Transmission Control Protocol/Internet Protocol) sebagai protokol standar bagi internet sampai dengan saat ini. Pada tahun 1974, Bob Kahn dan Vinton G. Cerf dari Stanford University memperkenalkan konsep tentang Transmission Control Protocol (TCP), yaitu protokol untuk komunikasi data yang lebih cepat, lebih murah dan lebih mudah diimplementasikan dibandingkan dengan NCP yang dipakai sebagai standar protocol saat itu. Pada tahun 1978, protokol TCP dipecah menjadi TCP dan IP (Internet Protocol), sehingga kombinasi 2 protokol inilah yang disebut saat ini sebagai TCP/IP (Yuhefizar : 2008 : 4). 2.8.3. Layanan Utama Internet Internet telah membawa perubahan yang sangat besar dalam segala aspek kehidupan kita, hal ini tidak terlepas dari fasilitas-fasilitas yang terdapat dalam internet. Berikut ini fasilitas utama yang ada di internet (Yuhefizar : 2008 : 10) : 1. Electronic Mail (e-Mail) Fasilitas untuk mengirim surat yang lebih cepat, murah dan mudah digunakan. 2. Website (www) Website (WWW) yang sering juga kita sebut dengan website, merupakan fasilitas internet yang paling banyak dipakai, hampir 80 % transaksi di internet dilakukan melalui media website. Dengan website kita dapat menampilkan informasi apa saja melalui browser dan informasi tersebut dapat ditampilkan berupa teks, grafik, suara, gambar, atau video sekalipun, bahkan melalui website kita dapat menonton televisi, radio dan video secara online (Yuhefizar : 2008 : 159). 3. Mailing List (milis) Media untuk membentuk ruang diskusi di internet yang dapat diikuti oleh siapa saja yang mempunyai minat terhadap suatu topik. 4. File Transfer Protocol (FTP) Fasilitas untuk mengirim (meng-upload) dan mengambil (mendownload) file atau folder antara komputer yang terhubung dengan jaringan internet. 5. Chatting Fasilitas untuk mengobrol secara online baik secara teks maupun secara grafik. 2.8.4. Penyedia Akses Internet Selain memiliki piranti akses dan sarana koneksi, kita juga memerlukan penyedia jasa internet agar bisa terhubung ke internet. Terdapat tiga macam penyedia jasa yaitu penyedia jasa internet, jasa online komersial, dan penyedia jasa internet nirkabel. 1. Penyedia Jasa Internet (ISP; Internet Service Provider) Penyedia jasa internet (ISP) adalah organisasi skala lokal, regional, atau nasional yang menyediakan akses ke internet. 2. Jasa Online Komersial Jasa online komersial adalah perusahaan berbasis keanggotaan yang tidak hanya menyediakan akses internet, tetapi juga isi (content) khusus lain, misalnya berita, game, dan data finansial. Contohya adalah AOL (American Online) dan MSN (Microsoft Network). 3. Penyedia Jasa Internet Nirkabel Penyedia jasa internet nirkabel memungkinkan para pengguna komputer yang memiliki modem nirkabel (biasanya laptop) Smart Phone, dan PDA berfitur web untuk mengakses internet. Contohnya adalah AT&T Wireless dan Verizon Wireless (Williams and Sawyer, 2007 : 59). 2.9. World Wide Web (WWW) World Wide Web (WWW) yang sering juga kita sebut dengan website, merupakan fasilitas internet yang paling banyak dipakai, hampir 80 % transaksi di internet dilakukan melalui media website. Dengan website kita dapat menampilkan informasi apa saja melalui browser dan informasi tersebut dapat ditampilkan berupa teks, grafik, suara, gambar, atau video sekalipun, bahkan melalui website kita dapat menonton televisi, radio dan video secara online. 2.9.1. Pengertian World Wide Web (WWW) Istilah web dapat juga diartikan merupakan fasilitas yang berisi database terdistribusi (Suarna : 2007 : 56). Pendapat lain menyebutkan, world wide web sering disingkat dengan www atau web adalah suatu metode untuk menampilkan informasi di internet, baik berupa teks, gambar, suara maupun video yang interaktif dan mempunyai kelebihan untuk menghubungkan (link) satu dokumen dengan dokumen lainnya (hypertext) yang dapat diakses melalui sebuah browser (Yuhefizar : 2008 : 159). Pengertian website menurut salah satu situs yang diakses penulis adalah kumpulan halaman-halaman yang digunakan untuk menampilkan informasi teks, gambar diam atau gerak, animasi, suara, dan atau gabungan dari semuanya itu baik yang bersifat statis maupun dinamis yang membentuk satu rangkaian bangunan yang saling terkait dimana masing-masing dihubungkan dengan jaringan-jaringan halaman (hyperlink) (W.Saputro, 2009). 2.9.2. Sejarah WWW Sir Timothy Berners-Lee, penemu konsep www, Hypertext Markup Language (HTML), perancang skema pemberian alamat (URL), mendesain aturan-aturan di web yang kemudian menjadi HTTP (Hyper Text Transfer Protocol). Seorang computer scientis yang saat ini bekerja pada University of Southampton dan direktur world wide web Consortium (W3C). Sebuah organisasi yang memiliki 400-an anggota dengan staf yang berjumlah sekitar 40 orang yang tersebar seluruh dunia dan kantor berlokasi di Massachussets Institute of Technology (Yuhefizar : 2008 : 161). Sejarah penemuan www berawal ketika tim bekerja di CERN (European Organization for Nuclear Research) merupakan suatu lembaga bagi peneliti fisika energi tinggi di Ganeva Swiss yang mengusulkan sebuah proyek berdasarkan konsep hypertext untuk memfasilitasi dan memperbaharui berbagai informasi antar periset. di tahun 1980. Pada awalnya CERN mempunyai tujuan adalah untuk membantu para fisikawan di berbagai lokasi yang berbeda dalam bekerja sama dan berbagi material penelitian (Williams and Sawyer, 2007 : 65). Pada tahun 1989 Berners-Lee membuat proposal untuk proyek pembuatan hypertext secara global, kemudian pada bulan Oktober 1990, world wide web sudah bisa dijalankan dalam lingkungan CERN. Pada musim panas tahun 1991, www resmi digunakan secara luas pada jaringan internet. Selama rentang tahun 1991 hingga 1993, Tim Berners-Lee terus berupaya membuat web tampil lebih baik lagi. Ia mulai membuat perancangan untuk halaman web, sekaligus mengkoordinir masukan dari para pengguna internet. Ia juga tercatat sebagai orang pertama yang membuat browser, server dan kunci protokol untuk internet. Hasil karyanya dalam membuat alamat URL, penggunaan HTTP dan pengkodean HTML terbukti berhasil dan menjadi kemajuan besar dalam perkembangan teknologi web. Atas jasanya itu, Berners-Lee disebut sebagai bapak world wide web dan majalah Times edisi 14 Juni 1999 menempatkan Tim Berners-Lee sebagai salah satu dari 100 orang yang paling berpengaruh di abad ke-20. Tidak itu saja, beliau juga dianugrahi Millennium Technology Prize di Helsinki, Finlandia. Mendapat penghargaan itu, Berners-Lee hanya berkomentar merendah, “Banyak orang yang terlibat dalam pengembangan web. Saya hanya mengumpulkan (gagasan) dan mengemasnya” (Yuhefizar : 2008 : 162). 2.9.3. Jenis-Jenis Web Seiring dengan perkembangan teknologi informasi yang begitu cepat, website juga mengalami perkembangan yang sangat berarti. Dalam pengelompokan jenis web, lebih diarahkan berdasarkan kepada fungsi, sifat, dan bahasa pemograman yang digunakan (Yuhefizar : 2008 : 162-164). 1. Jenis-jenis web berdasarkan sifatnya : a. Website Dinamis, merupakan website yang menyediakan content atau isi yang selalu berubah-ubah setiap saat. Misalnya website berita, seperti www.kompas.com, www.detik.com, dan lain-lain. b. Website Statis, merupakan website yang contentnya sangat jarang diubah. Misalnya, web profile organisasi, dan lain-lain. 2. Berdasarkan pada tujuannya, website terbagi atas : a. Personal web, website yang berisi informasi pribadi seseorang. b. Corporate web, website yang dimiliki oleh sebuah perusahaan. c. Portal web, website yang mempunyai banyak layanan, mulai dari layanan berita, e-mail, dan jasa-jasa lainnya. d. Forum web, sebuah web yang bertujuan sebagai media untuk diskusi. e. Disamping itu juga ada website e-Government, e-Banking, eShop, e-Learning, e-Payment, e-Procurement, e-Commerce, dan lain sebagainya. 3. Ditinjau dari segi bahasa pemrograman yang digunakan, website terbagi atas : a. Server Side, merupakan website yang menggunakan bahasa pemrograman dan sangat tergantung pada sebuah web server. b. Client Side, adalah website yang tidak membutuhkan server dalam menjalankannya, cukup diakses melalui browser saja. 2.9.4. Unsur-Unsur Website atau Situs Untuk menyediakan keberadaan sebuah website, maka harus tersedia unsurunsur penunjang untuk membangun website, (W.Saputro, 2009) adalah sebagai berikut: 1. Nama domain (Domain name/URL - Uniform Resource Locator) Pengertian Nama domain atau biasa disebut dengan Domain Name atau URL adalah alamat unik di dunia internet yang digunakan untuk mengidentifikasi sebuah website, atau dengan kata lain domain name adalah alamat yang digunakan untuk menemukan sebuah website pada dunia internet. Sebagai contoh : http://www.baliorange.net, http://www.detik.com. Nama domain diperjualbelikan secara bebas di internet dengan status sewa tahunan. Nama domain sendiri mempunyai identifikasi ekstensi/akhiran sesuai dengan kepentingan dan lokasi keberadaan website tersebut. Contoh nama domain ber-ekstensi internasional adalah .com, .net, .org, .info, .biz, .name, .ws. Contoh nama domain ber-ekstensi lokasi Negara Indonesia adalah co.id (untuk nama domain website perusahaan), ac.id (nama domain website pendidikan), go.id (nama domain website instansi pemerintah), or.id (nama domain website organisasi). 2. Rumah tempat website (Web hosting) Pengertian Web Hosting dapat diartikan sebagai ruangan yang terdapat dalam harddisk tempat menyimpan berbagai data, file-file, gambar dan lain sebagainya yang akan ditampilkan di website. Besarnya data yang bisa dimasukkan tergantung dari besarnya web hosting yang disewa/dipunyai, semakin besar web hosting semakin besar pula data yang dapat dimasukkan dan ditampilkan dalam website. Web Hosting juga diperoleh dengan menyewa. Besarnya hosting ditentukan ruangan harddisk dengan ukuran MB( Mega Byte ) atau GB( Giga Byte ). Lama penyewaan web hosting rata-rata dihitung per tahun. Penyewaan hosting dilakukan dari perusahaan-perusahaan penyewa web hosting yang banyak dijumpai baik di Indonesia maupun Luar Negeri. 3. Bahasa Program (Scripts Program) Scripts Program adalah bahasa yang digunakan untuk menerjemahkan setiap perintah dalam website yang pada saat diakses. Jenis bahasa program sangat menentukan statis, dinamis atau interaktifnya sebuah website. Semakin banyak ragam bahasa program yang digunakan maka akan terlihat website semakin dinamis, dan interaktif serta terlihat bagus. Beragam bahasa program saat ini telah hadir untuk mendukung kualitas website. Jenis-jenis bahasa program yang banyak dipakai para designer website antara lain HTML, ASP, PHP, JSP, Java Scripts, Java applets dan sebagainya. Bahasa dasar yang dipakai setiap situs adalah HTML sedangkan PHP, ASP, JSP dan lainnya merupakan bahasa pendukung yang bertindak sebagai pengatur dinamis, dan interaktifnya situs. Bahasa program ASP, PHP, JSP atau lainnya bisa dibuat sendiri. Bahasa program ini biasanya digunakan untuk membangun artikel, forum diskusi, buku tamu, anggota organisasi, email, mailing list dan lain sebagainya yang memerlukan update setiap saat. 4. Design website Setelah melakukan penyewaan domain name dan web hosting serta penguasaan bahasa program (scripts program), unsur website yang penting dan utama adalah design. Design website menentukan kualitas dan keindahan sebuah website. Design sangat berpengaruh kepada penilaian pengunjung akan bagus tidaknya sebuah website. Untuk membuat website biasanya dapat dilakukan sendiri atau menyewa jasa website designer. Saat ini sangat banyak jasa web designer, terutama di kota-kota besar. Perlu diketahui bahwa kualitas situs sangat ditentukan oleh kualitas designer. Semakin banyak penguasaan web designer tentang beragam program/software pendukung pembuatan situs maka akan dihasilkan situs yang semakin berkualitas, demikian pula sebaliknya. Jasa web designer ini yang umumnya memerlukan biaya yang tertinggi dari seluruh biaya pembangunan situs dan semuanya itu tergantung kualitas designer. 5. Publikasi website. Keberadaan situs tidak ada gunanya dibangun tanpa dikunjungi atau dikenal oleh masyarakat atau pengunjung internet. Karena efektif tidaknya situs sangat tergantung dari besarnya pengunjung dan komentar yang masuk. Untuk mengenalkan situs kepada masyarakat memerlukan apa yang disebut publikasi atau promosi. Publikasi situs di masyarakat dapat dilakukan dengan berbagai cara seperti dengan pamlet-pamlet, selebaran, baliho dan lain sebagainya tapi cara ini bisa dikatakan masih kurang efektif dan sangat terbatas. Cara yang biasanya dilakukan dan paling efektif dengan tak terbatas ruang atau waktu adalah publikasi langsung di internet melalui berbagai search engine (seperti : Yahoo, Google, Search Indonesian, dan sebagainya). Cara publikasi di search engine ada yang gratis dan ada pula yang berbayar. Yang gratis biasanya terbatas dan cukup lama untuk bisa masuk dan dikenali di search engine terkenal seperti Yahoo atau Google. Cara efektif publikasi adalah dengan membayar, walaupun harus sedikit mengeluarkan akan tetapi situs cepat masuk ke search engine dan dikenal oleh pengunjung. 6. Pemeliharaan Website. Untuk mendukung kelanjutan dari situs diperlukan pemeliharaan setiap waktu sesuai yang diinginkan seperti penambahan informasi, berita, artikel, links, gambar atau lain sebagainya. Tanpa pemeliharaan yang baik situs akan terkesan membosankan atau monoton juga akan segera ditinggal pengunjung. Pemeliharaan situs dapat dilakukan per periode tertentu seperti tiap hari, tiap minggu atau tiap bulan sekali secara rutin atau secara periodik saja tergantung kebutuhan(tidak rutin). Pemeliharaan rutin biasanya dipakai oleh situs-situs berita, penyedia artikel, organisasi atau lembaga pemerintah. Sedangkan pemeliharaan periodik bisanya untuk situs-situs pribadi, penjualan/e-commerce, dan lain sebagainya. 2.9.5. Istilah-Istilah Seputar WWW Dengan penerapan Graphic User Interface (GUI), memudahkan para pengguna internet mengakses informasi-informasi yang terdapat dalam internet melalui web browser. Web browser diantaranya adalah Netscape Navigator, Internet Explorer, Mozilla Fairfox, Mosaic, Google dan lain-lain (Suarna : 2007 : 56) 1. Browser Browser adalah perangkat lunak untuk menjelajah web, Browser atau Web Browser adalah perangkat lunak yang memungkinkan seseorang mencari dan mengakses beragam komponen web. Web browser digunakan untuk memperoleh informasi dengan format hypertext. Web browser akan mengirimkan request ke web server, dan menampilkan hasilnya ke pengguna. Selain itu web browser juga dapat mengirimkan form ke web server untuk diproses. Contoh dari web browser adalah NCSA Mosaic, Netscape Navigator, MacWeb, IE, Opera, Conqueror dan sebagainya. 2. Web 3. Halaman Web Halaman Web adalah suatu dokumen pada sebuah situs web, sebuah situs dapat terdiri dari beberapa halaman web atau kumpulan halaman web yang terkait. Halaman web adalah dokumen pada world wide web yang bisa berisi teks, gambar, suara dan video. Halaman pertama yang dijumpai pada sebuat situs web mirip dengan halaman judul pada sebuah buku yang disebut homepage atau welcome page, yang merupakan penunjuk sebuah situs web dan berisi links ke halaman lain di situs tersebut. 4. URL URL (Uniform Resource Locator) adalah kumpulan karakter yang menunjukkan pada potongan informasi khusus dibagian mana saja pada web. Dengan kata lain, URL adalah alamat situs web yang unik (tidak ada dua situs berbeda yang memiliki alamat sama). Berikut ini adalah contoh URL untuk sebuah situs web milik National Park Service untuk Taman Nasional Yosemite (Williams and Sawyer, 2007 : 64-65). Gambar 2.3. Contoh URL Web National Park Service ( Sumber : Williams and Sawyer, 2007 : 66 ) 5. Web Server Web server memberikan jawaban/response dari permintaan/request web browser. Web server juga dapat memproses form yang dikirimkan oleh web browser. Contoh dari Web server adalah, Apache, NCSA HTTPD (Unix), Webstar (Mac), IIS/PWS (Windows). Sistem jaringan web server ialah sistem jaringan di mana layanan yang diberikan server berupa pengolahan dan pemakaian bersama dokumen-dokumen yang saling terhubung. Jaringan ini merupakan jaringan yang memungkinkan tiap dokumen dalam jaringan memiliki hubungan ke dokumen lain sehingga dokumen-dokumen dalam jaringan terhubung satu dengan yang lain, semacam jaring laba-laba (Oetomo, et al, 2006 : 88). 2.10. Network Development Life Cycle (NDLC) NDLC merupakan model kunci dibalik proses perancangan jaringan komputer. NDLC merupakan model yang mendefinisikan siklus proses pembangunan atau pengembangan sistem jaringan komputer. (Goldman & Rawles, 2001 : 470). Seperti model pengembangan sistem untuk software, NDLC terdiri dari elemen yang mendefinisikan fase, tahapan, langkah, atau mekanisme proses spesifik. Kata “cyle” (siklus) adalah kata kunci deskriptif dari siklus-hidup pengembangan sistem jaringan yang menggambarkan secara eksplisit seluruh proses dan tahapan pengembangan sistem jaringan yang berkesinambungan. NDLC dijadikan metode yang digunakan sebagai acuan (secara keseluruhan atau secara garis besar) pada proses pengembangan dan pembangunansistem jaringan komputer, mengingat bahwa setiap jaringan komputer memiliki kebutuhan yang berbeda dan permasalahan yang berbeda (spesifik) dengan melakukan pendekatan yang bervariasi terhadap model NDLC. NDLC mendefinisikan siklus hidup proses yang berupa fase atau tahapan-tahapan dari mekanisme yang dibutuhkan dalam suatu rangkaian proses pembangunan atau pengembangan sistem jaringan komputer. Berkaitan dengan penelitian skripsi ini, penerapan dari setiap tahap NDLC adalah sebagai berikut : Gambar 2.4 : Alur NDLC (James E.Goldman:2005) 2.10.1. Analysis (Analisis) Model pengembangan sistem NDLC dimulai pada fase analisis. Pada tahap ini dilakukan proses perumusan permasalahan, Mengidentifikasi konsep dari penelitian yang akan kita lakukan. 2.10.2. Design (Perancangan) Adalah tahap dimana akan dibuatnya gambar design topology jaringan interkoneksi yang akan dibangun, diharapkan dengan gambar design topology akan memberikan gambaran seutuhnya dari kebutuhan yang ada. Design bisa berupa design struktur topology, design akses data, design tata layout perkabelan, dan sebagainya yang akan memberikan gambaran jelas tentang penelitian yang akan dibuat. 2.10.3. Simulation Prototyping (Prototipe Simulasi) Adalah tahap dimana dilakukannya pembuatan prototipe sistem yang akan dibangun, tahap ini dilakukan sebagai simulasi dari implementasi sistem produksi. Dengan demikian dapat diketahui gambaran umum dari proses komunikasi, keterhubungan dan mekanisme kerja dari interkoneksi keseluruhan elemen sistem yang akan dibangun. 2.10.4. Implementation (Implementasi) Adalah tahap dimana spesifikasi rancangan solusi yang dihasilkan pada fase design dan perancangan, digunakan sebagai panduan instruksi implementasi pada lingkungan yang sebenarnya. Aktivitas pada fase implementasi melingkupi instalasi dan konfigurasi terhadap : rancangan topologi jaringan, komponen sistem (beserta sejumlah aplikasi pendukung). 2.10.5. Monitoring (Pengawasan) Adalah tahap dimana dilakukannya pengawasan terhadap hasil dari implementasi yang telah dilakukan. Pada NDLC, proses pengujian digolongkan pada fase ini. Hal ini mengingat bahwa proses pengujian dilakukan melalui aktivitas pengoperasian dan pengamatan sistem yang sudah dibangun/dikembangkan dan sudah diimplementasikan untuk memastikan bilamana sistem dan sejumlah komponen pendukung sudah berjalan dengan baik dan benar, sudah sesuai dengan kebutuhan, serta sudah menjawab semua pertanyaan dan permasalahan spesifik yang dirumuskan. 2.10.6. Management (pengelolaan) Adalah tahap dimana dilakukannya pengaturan atau pengelolaan terhadap system yang telah dibangun agar dapat berjalan dengan baik dan berlangsung lama. Pada NDLC, aktivitas perawatan, pemeliharaan dan pengelolaan dikategorikan pada fase ini, karena proses manajemen/pengelolaan sejalan dengan aktivitas perawatan/pemeliharaan sistem. Jaminan efektivitas dari interkoneksi sistem menjadi masukan pada tahap ini untuk menghasilkan keluaran berupa jaminan fleksibilitas dan kemudahan pengelolaan serta pengembangan sistem di masa yang akan datang. 2.11. Penelitian Sejenis Sebagai acuan dalam melakukan penelitian tugas akhir ini, maka penulis melakukan perbandingan studi terhadap beberapa penelitian sejenis yang berkaitan dengan penelitian ini. Berikut ini adalah beberapa penelitian yang dijadikan perbandingan oleh penulis dalam melakukan penelitian. 1. PERBANDINGAN KINERJA SERVER MELALUI VIRTUALIZATION XEN PADA LINGKUNGAN TERBATAS oleh Haris (Universitas Indonesia, 2008) Implementasi software Virtualization untuk berbagai platform sudah cukup matang untuk digunakan dalam tingkatan operasional organisasi. Dikombinasikan dengan server yang menggunakan prosesor dengan multicore atau server dengan multi prosesor yang mudah dijumpai di pasaran, unjuk kerja virtualization menjadi semakin baik. Sementara itu, pemakaian virtualization sebagai pilihan untuk pemisahan server-server dengan kebutuhan spesifik belum popular di Indonesia. Terbukti dari sulitnya mencari publikasi tentang implementasi atau cerita sukses penggunaan virtualization pada lingkungan suatu organisasi yang berlokasi di Indonesia. Dalam penelitian ini, eksperimen dilakukan untuk mencari tahu sejauh mana server virtual bisa dibuat untuk melayani beberapa layanan popular, yaitu web, mail, dan file-sharing. Eksperimen dalam penelitian ini membuktikan bahwa penggunaan server virtual dengan beban kerja ringan memberikan kinerja dengan perbedaan hamper sama jika dibandingkan dengan layanan pada server native. Hal ini menunjukkan bahwa penggunaan virtualization di dalam suatu organisasi dapat diterima oleh pengguna layanan tertentu, demi mendapatkan keuntungan dari virtualization. Berdasarkan kelebihan dan kekurangan dari penelitian sejenis di atas, maka penelitian penulis yang berjudul “Virtualisai Menggunakan Xen Hypervisor Sebagai Efisiensi Penggunaan Server (Studi Kasus: PT. Smart Intermedia Solusindo) memiliki kelebihan yaitu menggunakan multi Operating System dan aplikasi mudah untuk digunakan. BAB III METODOLOGI PENELITIAN 3.1. Metode Pengumpulan Data 3.1.1. Studi Pustaka Studi pustaka dilakukan dengan mempelajari teori-teori yang terkait dan dari hasil penelitian yang dilakukan penulis sewaktu melakukan penelitian, guna mendukung pemecahan masalah penelitian yang terdiri dari 5 buku dan 18 situs internet. Beberapa buku dan situs yang digunakan diantaranya sebagai berikut : 1. Linux System Administrator, Ahmad Ashari,dkk, Informatika, 2010 2. Panduan Mudah merakit+menginstall server linux, Onno W.Purbo, Andi Yogya,2008 3. http://www.gartner.com/it/page.jsp?id=638207, 2011 4. http://devcentral.f5.com/weblogs/macvittie/archive/2009/06/17/ what-is-server-offload-and-why-do-i-need-it.aspx, 2011 Untuk selebihnya dapat dilihat dihalaman lampiran. 3.1.2. Studi Lapangan 1. Observasi Tempat dan waktu dilakukan obervasi di PT. Smart Intermedia Solusindo, mulai tanggal 17 Januari sampai 6 Mei 2011, yang bertempat di Jalan Raya Lenteng Agung No. 22 Jakarta Selatan 12620. Dari hasil pengamatan yang dilakukan ditemukan bahwa pada PT. Smart Intermedia Solusindo yang bergerak dibidang jasa pelayanan web hosting saat ini belum menggunakan teknologi virtualisasi yang digunakan untuk memaksimalkan penggunaan server. 2. Wawancara Pada tahap ini dilakukan wawancara pada pihak terkait, yaitu Sdr. Roni Rosadi dan Sdr. Awaludin untuk mendapatkan data atau bahan materi yang diperlukan. Salah satu pertanyaan yang diajukan kepada Sdr. Roni Rosadi adalah : Apakah ada kendala yang dihadapi dalam penggunaan server selama ini? dan kepada Sdr. Awaludin adalah: Berapakah biasanya jumlah akun web yang dimasukkan kedalam satu server? Pertanyaan selanjutnya dapat dilihat di halaman lampiran. 3.2. Metode Pengembangan Sistem Metode yang digunakan dalam pengembangan ini adalah metode Network Development Life cycle (NDLC), dengan tahapan-tahapan yaitu : Analisis, Design system, Simulasi, Implementasi, Manajemen dan Monitoring (James E.Goldman : 2005). Gambar 3.1 Alur NDLC (James E.Goldman:2005) 3.2.1 Analisis Tahap analisis sistem adalah proses untuk mengumpulkan kebutuhan yang diperlukan serta alternatif solusi yang dapat diterapkan dalam penggunaan virtualisasi dengan menggunakan Xen. Tahap awal ini dilakukan analisis keadaan sistem jaringan yang sedang berjalan, kemudian melakukan analisis sistem yang sedang berjalan dan kebutuhan akan sistem. Lebih detail dibahas pada sub.bab 4.2.Analisis. 3.2.2. Design System (Sistem Perancangan) Perancangan sistem merupakan langkah untuk menggambarkan hasil analisis baik sistem berjalan maupun sistem usulan. Dalam hal ini penulis melakukan perancangan sistem virtualisasi pada server menggunakan Xen, hal ini dilakukan untuk mempermudah dalam penerapannya. Untuk sistem jaringan yang digunakan saat ini ialah sebuah server yang terhubung dengan WAN (Wide Area Network) melalui switch dan router. Selanjutnya dibahas pada sub.bab 4.2 design system. 3.2.3 Simulasi Prototype Simulasi prototype sistem akan penulis lakukan ketika sistem yang diusulkan telah diterapkan pada sistem jaringan yang ada. Simulasi untuk menguji sistem yang telah diterapkan. Simulasi ini merupakan gambaran yang hampir sama ketika akan diterapkan dalam sebuah jaringan yang sesungguhnya. Lebih detail dibahas pada sub.bab 4.2. 3.2.4. Implementasi Implementasi atau penerapan merupakan langkah untuk mengaplikasikan sistem baru yang telah disimulasikan. Proses implementasi yang akan penulis lakukan adalah meliputi installasi linux centos pada server, Installasi virtualisasi pada server centos dengan menggunakan xen. Setelah itu akan dibuat 3 buah virtualisasi/container yang masing-masing container memiliki system operasi yang berbeda-beda dan terakhir implementasi/koneksi jaringan masing-masing container. Lebih detail dibahas pada sub.bab 4.2. 3.2.5. Monitoring Monitoring atau pengawasan merupakan langkah setelah tahapan implementasi dan pengujian telah selesai dilakukan. Pengawasan ini perlu dilakukan untuk menjaga agar virtualisasi yang telah implementasikan berjalan dengan baik. Lebih detail dibahas pada sub.bab 4.2. 3.2.6 Management Management merupakan suatu pengaturan dalam menjalankan sistem virtualisasi xen hypervisor yang telah di implementasi pada server, seperti membuat dan merubah user baru, membagi sumber daya seperti kapasitas harddisk dan memory serta informasi sumber daya yang telah digunakan. Lebih detail pada sub.bab 4.2. 3.3. Peralatan Penelitian Peralatan atau perangkat yang digunakan dalam penelitian penulis, dapat digolongkan menjadi dua jenis, yaitu perangkat keras (hardware) dan perangkat lunak (software). 3.3.1. Perangkat Keras Perangkat keras (hardware) yang digunakan dalam penelitian ini adalah: Tabel 3.1. Daftar perangkat keras No Perangkat 1 Komputer Jumlah Keterangan 2 Spesifikiasi setiap unit PC: a. AMD® Phenom® X2 CPU 3.0GHz b. DDR3, PC6400, 2 GBytes, Vgen c. Baby Raptor Mainboard d. Seagate Barracuda 7200 rpm 320 GB e. Monitor AOC 19" g. DVD/RW LG (PC) 2 3 Server 1 Spesifikasi: a. Intel® Xeon® E5650 3.0GHz b. FBDIMM ECC, 20GBytes c. Intel board SB5500 a. TPLINK Networking CPU b. DLINK Router c. Telkom Speedy 3.3.2. Perangkat Lunak Perangkat lunak (software) yang digunakan dalam penelitian ini adalah: Tabel 3.2. Daftar perangkat lunak No Software Keterangan 1 2 3 Sistem operasi server Software virtualisasi server Sistem operasi client. Centos 5.5 64bit Xen Windows XP SP3 4 5 6 7 3.4. Software editing text Software web server Software scripting tool Software database 8 Notepad Apache PHP MySQL VSFTPD 9 Postfix Software email server 10 11 Putty Mozilla Firefox SSH Terminal Software browser Software file server Kerangka Berpikir Penulis melakukan penelitian dengan mengikuti rencana kegiatan yang tertuang dalam kerangka berpikir seperti pada gambar 3.2. Gambar 3.2 Kerangka Berpikir BAB IV HASIL DAN PEMBAHASAN Dalam bab ini akan dipaparkan pembahasan atas identifikasi masalah yang mengacu pada tujuan dari penelitian dan berlandaskan teori yang telah dipaparkan dalam bab sebelumnya. 4.1. Gambaran Umum PT. Smart Intermedia Solusindo Berdirinya perusahaan PT. Smart Intermedia Solusindo diawali ketika para pendiri masih menjabat di perusahaan masing-masing. Memulai dengan pengalaman yang dimiliki tercetuslah ide untuk menyatukan diri dalam satu wadah secara profesional guna mengembangkan potensi-potensi yang sudah dimiliki sekaligus membuka lapangan pekerjaan baru. PT. Smart Intermedia Solusindo bergerak di bidang teknologi informasi. Pelayanan yang digunakan secara online. Layanan PT. Smart Intermedia Solusindo mulai beroperasi pada Juli 2007, yang salah satu nama produk dari divisi Web Solution dari PT. Smart Intermedia Solusindo adalah EazySmart.com, yang khusus memberikan layanan di bidang Web Hosting, Registrasi Domain, Web Design/Web Development, Reseller Hosting, Reseller Domain, Software Application, Dedicated Server, dan Virtual Private Server. Dikarenakan perusahaan ini selalu beroperasi 24 jam, hal ini membuat karyawan di perusahaan ini bekerja dalam sift. Karena itulah tidak ada istilah libur bagi kantor operasional yang berlokasi di daerah Lenteng Agung Jakarta Selatan. Pelanggan dapat menghubungi perusahaan ini kapan saja, baik melalui telepon langsung, yahoo messenger maupun lewat e-mail. Untuk menjamin layanan prima, perusahaan ini memiliki server sendiri yang di tempatkan pada pusat Interkoneksi Internet Indonesia (Indonesia Internet Exchange/IIX) yang berlokasi di Gedung Cyber, Jl. Kuningan Barat No. 8 Jakarta Selatan, serta Equinix Chicago Data Center, Amerika Serikat. Untuk menjamin harga yang terjangkau, PT. Smart Intermedia Solusindo selalu menggunakan server dengan kapasitas besar. Kapasitas server selalu di upgrade sesuai dengan kebutuhan pelanggan. Inilah rahasia mengapa harga layanan hosting di perusahaan ini sangat murah hingga 25% dari market price saat ini di Indonesia (Data Primer, 2009). 4.1.1. Visi dan Misi Pesatnya perkembangan Industri Telekomunikasi di Indonesia, memicu pertumbuhan ekonomi kearah yang lebih baik, hal ini ditandai dengan berdirinya perusahaan-perusahaan yang mempunyai andil besar dalam pembangunan Infrastruktur, Maintenance Mechanical dan Electrical jaringan telekomunikasi yang meliputi seluruh wilayah Indonesia. PT. Smart Intermedia Solusindo salah satu perusahaan yang memiliki semangat profesionalisme mengambil bagian dalam perluasan jaringan telekomunikasi yang meliputi pembangunan Infrastruktur, Maintainance Mechanical dan Electrical tersebut baik dalam proyek-proyek swasta maupun pemerintah, serta memberikan solusi yang cerdas untuk kepuasan klien. Hal ini tidak terlepas dari dukungan tenaga-tenaga muda yang berpendidikan, berpengalaman, terampil dan mempunyai motivasi tinggi untuk menjawab tantangan dalam dunia usaha yang berlandaskan semangat profesionalisme. Sehingga PT. Smart Intermedia Solusindo mempunyai visi dan misi sebagai berikut : 1. Memberikan solusi yang cerdas dalam menangani setiap project untuk mendapatkan hasil yang terbaik serta kualitas yang lebih baik dalam rangka menjadi yang terbaik dalam industri telekomunikasi. 2. Menjadi bagian yang prioritas dan utama bagi klien dalam pengembangkan bisnis industri telekomunikasi serta memberikan peran dan kontribusi yang besar dalam pembangunan ekonomi Republik Indonesia yang tercinta. 4.1.2. Logo Gambar 4.1. Logo PT. Smart Intermedia Solusindo (Sumber : Data Primer) 4.1.3. Struktur Organisasi Dewan Penasehat Kepala Bidang Direktur Pelaksana Divisi Web Divisi Solutions Hosting Staf Administrasi Staf Keuangan Gambar 4.2. Struktur Organisasi PT. Smart Intermedia Solusindo (Sumber : Data Primer) 4.1.4. Tugas Berdasarkan dari gambar struktur organisasi perusahaan, akan diuraikan tugas masing-masing fungsi yaitu : 1. Dewan Penasihat Mengawasi dan memberikan masukan untuk perusahaan serta mengadakan rapat secara periodik untuk menilai dan mengevaluasi karyawan. 2. Kepala Bidang Mengatur koordinasi dengan bidang-bidang lain demi tercapainya target yang ditetapkan dan bertanggungjawab langsung kepada dewan penasihat. 3. Divisi Web Solution Merancang bangun website dan content provider. 4. Divisi Hosting Retail hosting dan domain dan maintenance server. 5. Direktur Pelaksana Mengawasi dan mengkoordinasikan pelaksanaan kegiatan perusahaan sehari-hari dan bertanggungjawab langsung kepada dewan penasihat. 6. Staf Keuangan Membuat laporan keuangan dan bertanggungjawab terhadap semua lalu lintas keuangan perusahaan. 7. Staf Administrasi Membantu pelaksanaan administrasi dalam setiap transaksi yang dilakukan perusahaan, seperti surat menyurat dan pengarsipan data. 4.2. Pengembangan Sistem Metode yang penulis gunakan pada penelitian ini adalah metode Network Development Life cycle (NDLC), metode ini dilakukan dengan pendekatan kejadian yang sebenarnya dengan harapan hasil yang didapatkan hampir sesuai dengan apa yang akan terjadi. Penelitian ini dimulai dari tahapan analisis, desain, simulation Prototyping, implementasi, monitoring, dan management. Berikut adalah pembahasan tahapan demi tahapan yang digunakan dalam ”Implementasi Virtualisasi Menggunakan Xen Hypervisor Sebagai Efisiensi Penggunaan Server”: 4.2.1. Analisis Pada tahap awal ini, penulis melakukan pengecekan terhadap keadaan sistem jaringan saat ini, kemudian melakukan analisis sistem yang sedang berjalan dan kebutuhan akan sistem. 1. Keadaan Sistem Jaringan yang Berjalan Pada sistem jaringan yang digunakan server farm PT Smart Intermedia Solusindo terhubung dengan WAN (Wide Area Network) melalui switch dan router dengan luas ruangan server farm 10x10m. Gambar 4.3. Keadaan Sistem Jaringan yang sedang berjalan di PT.Smart Intermedia Solusindo (Sumber : Data Primer) 2. Analisis Sistem yang Berjalan Analisis sistem yang berjalan saat ini, PT Smart Intermedia Solusindo Memiliki 2 buah server rack dengan masing-masing server menggunakan casing 2U. Setiap server memiliki spesifikasi Prosesor Quad Core Q9400, RAM 8 GB dan Hard disk 250 GB. Sistem Operasi menggunakan linux centos yang terinstall apache, php, mysql, dns dan mailserver dalam satu server. Sebagai perusahaan webhosting, setiap server dijalankan lebih dari 500 aplikasi web (dapat dilihat dihalaman lampiran). Namun perbedaan kebutuhan dan sumberdaya sistem setiap aplikasi web dapat mengganggu aplikasi web yang lain dalam satu server. Biasanya jika aplikasi web tersebut membutuhkan konfigurasi khusus maka tidak dapat dijalankan bersamaan dalam web lain. Sebagai contoh, server yang terinstall apache dan php tentunya tidak lagi dapat diinstall apache-tomcat dan java untuk kebutuhan aplikasi web menggunakan jsp. Hal ini tentu membutuhkan server khusus yang terinstall apache-tomcat dan jsp. Namun tingginya biaya sewa server, menjadi kendala customer. Disisi lain tingginya permintaan sewa server juga membutuhkan ruang yang luas untuk menaruh server-server tersebut. 3. Analisis Sistem Usulan Sistem yang digunakan saat ini oleh PT Smart Intermedia Solusindo tidak customable (tidak dapat dimodifikasi sesuai dengan kebutuhan aplikasi web customer) disamping itu aplikasi web yang akan digunakan oleh custumer tidak membutuhkan spesifikasi server yang tinggi. Untuk itu dibutuhkan sebuah solusi untuk memanfaatkan semaksimal mungkin sumber daya dari server yang digunakan dan mengefisiensikan biaya pengadaan server serta penggunaan ruangan yakni dengan menggunakan virtualisasi pada server. 4.2.2. Design System (Sistem Perancangan) Perancangan sistem merupakan langkah untuk menggambarkan hasil analisis baik sistem berjalan maupun sistem usulan. Dalam hal ini penulis melakukan perancangan sistem virtualisasi pada server. Gambar 4.4. Desain Virtualisasi (Sumber : Data Primer) Sebagai gambaran dari 3 buah aplikasi milik customer yang berbeda yang sebelumnya masing-masing berjalan disebuah server dedicated akan dirancang untuk dapat berjalan di satu server saja. Tiga aplikasi tersebut diletakkan pada sebuah server yang telah divirtualisasikan. Dengan menggunakan virtualisasi maka setiap aplikasi tetap memiliki lingkungan dedicated walaupun berada dalam satu server. 4.2.3. Simulasi Prototype Dalam tahap ini penulis membuat simulasi yang bersifat rancangan pembangunan sistem virtualisasi dari sebuah server yang menggunakan linux centos yang kemudian di virtualisasikan menggunakan xen. Percobaan akan terdiri dari tiga skenario yang berbeda. Skenario pertama terdiri atas dua server yang berjalan dalam mesin tunggal menggunakan teknik yang berbeda. Yang pertama akan berjalan dalam lingkungan secara bersamaan, yang kedua dalam lingkungan virtual dan yang terakhir dalam lingkungan virtual dengan seorang manajer yang mengelola sumber daya antara domain. Server-server lingkungan akan (server diuji oleh aplikasi) yang generator beban terdapat yang di akan berbagai menempatkan mereka di bawah tingkat yang berbeda dari beban kerja, untuk memeriksa beberapa situasi yang mewakili situasi yang ekstrim. Dalam dua percobaan bahwa pertama, tes lingkungan akan mencoba virtual menunjukkan membagi lingkungan untuk menghasilkan beberapa manfaat. Akhirnya, beberapa mekanisme untuk mengelola kapasitas sumber maksimum daya atau dalam domain menetapkan Xen CPU seperti pengaturan akan dianalisis dalam rangka untuk mengevaluasi pengenalan dalam lingkungan nyata. 4.2.4. Implementasi Pada tahap ini penulis melakukan instalasi dan konfigurasi sebuah server yang akan di virtualisasikan. 1. Instalasi Linux Centos Pada Server Gambar 4.5. Tahap awal instalasi centos (Sumber : Diolah oleh penulis) Gambar diatas adalah halaman awal instalasi centos, untuk menginstall centos dalam graphic mode cukup menekan enter, sedangkan jika ingin menginstall dalam mode text maka dengan cara mengetik linux text kemudian tekan enter. Disini penulis menggunakan graphic mode karena instalasi lebih mudah dan interaktif. Setelah itu akan ada beberapa tahapan konfigurasi dalam instalasi centos ini. Gambar 4.6. Informasi partisi hard disk (Sumber : Diolah oleh penulis) Selanjutnya adalah tahap partisi hard disk. Partisi hardisk adalah proses membagi ruang yang ada di dalam harddisk yang dimiliki, sehingga ruang yang ada dapat terisi secara efektif dan maksimal. Pada root partition cukup diberikan kapasitas hard disk sebesar 2-4 Gb, karena root partition ini hanya untuk sistem operasi dan file konfigurasi saja. Sedangkan untuk standard swap adalah 2 kali jumlah kapasitas RAM. Gambar 4.7. Partisi yang akan digunakan (Sumber : Diolah oleh penulis) Selanjutnya adalah memilih tipe instalasi, disini ada beberapa pilihan untuk tipe instalasi apakah ingin menginstall desktop gui KDE, desktop gui Gnome, server, server gui, virtualization, clustering dan storage clustering. Gambar 4.8. Memilih tipe instalasi (Sumber : Diolah oleh penulis) Gambar 4.9. Menambah group virtualisasi (Sumber : Diolah oleh penulis) Gambar 4.10. Pilihan paket virtualisasi (Sumber : Diolah oleh penulis) Setelah ini sistem akan mulai melakukan proses instalasi pada hardisk. Lamanya proses instalasi tergantung dari spesifikasi hardware server, biasanya proses instalasi akan berlangsung selama 10-15 menit. Setelah proses instalasi selesai, sistem akan melakukan konfigurasi terakhir secara otomatis. Kemudian sistem akan memberikan informasi bahwa proses instalasi telah berjalan dengan sukses dan selesai. Sampai disini maka kita telah berhasil menginstal linux centos pada server. Kemudian sistem akan meminta kita untuk melakukan booting ulang secara otomatis. Pada saat melakukan booting ulang, pastikan CD Linux Centos telah kita keluarkan dari CD Drive. Gambar 4.11. Instalasi selesai (Sumber : Diolah oleh penulis) 2. Installasi Xen Pada Linux Centos Setelah selesai installasi linux centos pada server, selanjutnya adalah menginstall xen, namun sebelum menginstall xen, penulis mempersiapkan server agar terhubung ke internet. Hal ini dikarenakan penulis mengambil repository xen secara online. Saya akan menggunakan CentOS 5.2 (i386) untuk kedua host OS (dom0) dan guest OS (domU). a. Langkah awal Saya menggunakan partisi berikut pada sistem host saya 5,2 CentOS (dom0): / Boot 150 MB (ext3) Swap 1GB / 3GB (ext3) / Vm sisanya (ext3) Saya akan menciptakan mesin virtual dalam direktori / vm, tentu saja kita dapat menggunakan direktori lain yang telah memiliki cukup ruang, dan kita tidak perlu membuat partisi sendiri untuk itu. Jika kita menggunakan direktori lain, ganti / vm dengan direktori kita sendiri. Jika kita ingin menyimpan mesin virtual kita di / vm juga, tapi belum membuat partisi untuk itu jika direktori / vm tidak ada pada sistem kita, kita dapat membuat seperti ini: mkdir /vm Pastikan bahwa SELinux dinonaktifkan atau permisif: vi /etc/sysconfig/selinux # This file controls the state of SELinux on the system. # SELINUX= can take one of these three values: # enforcing - SELinux security policy is enforced. # permissive - SELinux prints warnings instead of enforcing. # disabled - SELinux is fully disabled. SELINUX=disabled # SELINUXTYPE= type of policy in use. Possible values are: # targeted - Only targeted network daemons are protected. # strict - Full SELinux protection. SELINUXTYPE=targeted Jika kita harus memodifikasi / etc / sysconfig / selinux, silahkan reboot sistem: reboot b. Instalasi Xen Untuk menginstal Xen, kita cukup menjalankan yum install kernel-xen xen Ini menginstal Xen dan kernel Xen pada sistem CentOS. Sebelum kita dapat boot sistem dengan kernel Xen, silakan cek konfigurasi GRUB bootloader. Saya membuka / boot / grub / menu.lst: vi / boot / grub / menu.lst Kernel terdaftar pertama harus kernel Xen yang baru saja diinstal: [...] title CentOS (2.6.18-92.1.13.el5xen) root (hd0,0) kernel /xen.gz-2.6.18-92.1.13.el5 module /vmlinuz-2.6.18-92.1.13.el5xen ro root=/dev/VolGroup00/LogVol00 module /initrd-2.6.18-92.1.13.el5xen.img [...] Ubah nilai default ke 0 (sehingga kernel pertama (kernel Xen) akan boot secara default): [...] default=0 [...] Selengkapnya /boot/grub/menu.lst harus terlihat seperti ini: # grub.conf generated by anaconda # # Note that you do not have to rerun grub after making changes to this file # NOTICE: You have a /boot partition. This means that # all kernel and initrd paths are relative to /boot/, eg. # root (hd0,0) # kernel /vmlinuz-version ro root=/dev/VolGroup00/LogVol00 # initrd /initrd-version.img # boot=/dev/sda default=0 timeout=5 splashimage=(hd0,0)/grub/splash.xpm.gz hiddenmenu title CentOS (2.6.18-92.1.13.el5xen) root (hd0,0) kernel /xen.gz-2.6.18-92.1.13.el5 module /vmlinuz-2.6.18-92.1.13.el5xen ro root=/dev/VolGroup00/LogVol00 module /initrd-2.6.18-92.1.13.el5xen.img title CentOS (2.6.18-92.1.1.el5) root (hd0,0) kernel /vmlinuz-2.6.18-92.1.1.el5 ro root=/dev/VolGroup00/LogVol00 initrd /initrd-2.6.18-92.1.1.el5.img title CentOS (2.6.18-92.el5) root (hd0,0) kernel /vmlinuz-2.6.18-92.el5 ro root=/dev/VolGroup00/LogVol00 initrd /initrd-2.6.18-92.el5.img Setelah itu, kita reboot sistem: reboot Sistem sekarang harus secara otomatis boot kernel Xen yang baru. Setelah sistem telah boot, kita dapat memeriksa bahwa dengan menjalankan uname –r [root@server1 ~]# uname -r 2.6.18-92.1.13.el5xen [root@server1 ~]# Jadi benar-benar menggunakan kernel Xen yang baru! Kita sekarang dapat menjalankan xm list untuk memeriksa apakah Xen telah dimulai. Kita harus daftar Domain-0 (dom0): [root@server1 ~]# xm list Name ID Mem(MiB) VCPUs State Time(s) Domain-0 0 964 1 r----- 134.1 [root@server1 ~]# PV-Grub on CentOS 5.2 PV DomU at Xen 3.3 CentOS 5.2 Dom0 (all 64-bit) Port Xen 3.3 ke CentOS 5.2 telah dilakukan melalui http://www.gitco.de/repo/xen3.3.0. Instal CentOS 5.2 Domu PV melalui Virt-install dalam mode teks memanfaatkan berbagi NFS dengan dipasang DVD ISO. Buat profil PV Domu sebagai berikut tidak menggunakan VfB saat ini dan setup "vnc" di Domu penutup. [root@ServerCentOS52 vm]# cat rhel52.pv-grub name = “rhel-pvgrub” memory = 2048 vcpus = 1 disk = [ 'phy:/dev/sda10,xvda,w!' ] vif = [ "bridge=eth0" ] kernel = “/usr/lib/xen/boot/pv-grub-x86_64.gz” extra = “(hd0,0)/grub/menu.lst” ************************************ Start PV DomU with command ************************************ [root@ServerCentOS52 vm]# xm create -c rhel52.pv-grub Gambar 4.12. PV-Grub (Sumber : Diolah oleh penulis) Booting ‘CentOS (2.6.18-92.el5xen)’ root (hd0,0) Filesystem type is ext2fs, partition type 0×83 kernel /vmlinuz-2.6.18-92.el5xen ro root=/dev/VolGroup00/LogVol00 rhgb quiet initrd /initrd-2.6.18-92.el5xen.img close blk: backend at /local/domain/0/backend/vbd/34/51712 PCI: Fatal: No PCI config space access function found rtc: IRQ 8 is not free. i8042.c: No controller found. Red Hat nash version 5.1.19.6 starting Setting clock (utc): Mon Oct 6 02:45:40 EDT 2008 [ OK ] Starting udev: [ OK ] Setting hostname centos52pvm: [ OK ] Setting up Logical Volume Management: 2 logical volume(s) in volume group “VolGroup00″ now active [ OK ] Checking filesystems Checking all file systems. [/sbin/fsck.ext3 (1) -- /] fsck.ext3 -a /dev/VolGroup00/LogVol00 /dev/VolGroup00/LogVol00: clean, 152718/3482208 files, 1097380/3481600 blocks [/sbin/fsck.ext3 (1) -- /boot] fsck.ext3 -a /dev/xvda1 /boot: clean, 36/26104 files, 16618/104388 blocks [ OK ] Remounting root filesystem in read-write mode: [ OK ] Mounting local filesystems: [ OK ] Enabling local filesystem quotas: [ OK ] Enabling /etc/fstab swaps: [ OK ] INIT: Entering runlevel: 3 Entering non-interactive startup Applying Intel CPU microcode update: [FAILED] Starting monitoring for VG VolGroup00: 2 logical volume(s) in volume group “VolGroup00″ monitored [ OK ] Starting background readahead: [ OK ] Checking for hardware changes [ OK ] Bringing up loopback interface: [ OK ] Bringing up interface eth0: Determining IP information for eth0… done. [ OK ] Starting auditd: [ OK ] Starting system logger: [ OK ] Starting kernel logger: [ OK ] Starting irqbalance: [ OK ] Starting portmap: [ OK ] Starting NFS statd: [ OK ] Starting RPC idmapd: [ OK ] Starting system message bus: [ OK ] [ OK ] Bluetooth services:[ OK ] Mounting other filesystems: [ OK ] Starting PC/SC smart card daemon (pcscd): [ OK ] Starting hidd: [ OK ] Starting autofs: Loading autofs4: [ OK ] Starting automount: [ OK ] [ OK ] Starting hpiod: [ OK ] Starting hpssd: [ OK ] Starting sshd: [ OK ] Starting cups: [ OK ] Starting xinetd: [ OK ] Starting vsftpd for vsftpd: [ OK ] Starting sendmail: [ OK ] Starting sm-client: [ OK ] Starting console mouse services: [ OK ] Starting crond: [ OK ] Starting xfs: [ OK ] Starting anacron: [ OK ] Starting atd: [ OK ] Starting yum-updatesd: [ OK ] Starting Avahi daemon… [ OK ] Starting HAL daemon: [ OK ] Starting smartd: [ OK ] CentOS release 5.2 (Final) Kernel 2.6.18-92.el5xen on an x86_64 rhel52pvm login: root Password: Last login: Sun Oct 5 16:26:58 on xvc0 [root@rhel52pvm ~]# uname -a Linux rhel52pvm 2.6.18-92.el5xen #1 SMP Tue Jun 10 19:20:18 EDT 2008 x86_64 x86_64 x86_64 GNU/Linux [root@rhel52pvm ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/VolGroup00-LogVol00 13G 3.6G 8.7G 30% / /dev/xvda1 99M 14M 81M 14% /boot tmpfs 1.0G 0 1.0G 0% /dev/shm **************************** File /boot/grub/menu.lst **************************** [root@rhel52pvm ~]# cat /boot/grub/menu.lst # grub.conf generated by anaconda #boot=/dev/xvda default=0 timeout=15 splashimage=(hd0,0)/grub/splash.xpm.gz # hiddenmenu title CentOS (2.6.18-92.el5xen) root (hd0,0) kernel /vmlinuz-2.6.18-92.el5xen ro root=/dev/VolGroup00/LogVol00 rhgb quiet initrd /initrd-2.6.18-92.el5xen.img ************************************* Setup vncserver to run at DomU:************************************* # mkdir .vnc # cd .vnc # vncserver :1 Vnc password will be requested by the last command. Edit ~/.vnc/xstartup and uncomment first two lines. Make this file as follows bellow: #!/bin/sh unset SESSION_MANAGER exec /etc/X11/xinit/xinitrc [ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup [ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources xsetroot -solid grey vncconfig -iconic & xterm -geometry 80×24+10+10 -ls -title “$VNCDESKTOP Desktop” & twm & Make following changes to /etc/sysconfig/vncservers file:VNCSERVERS=”1:root” VNCSERVERARGS[1]=”-geometry 1024×768″ Then run:# chkconfig vncserver on # reboot Gambar 4.13. Setting Kernel (Sumber : Diolah oleh penulis) Gambar 4.14. Setting Kernel Selesai (Sumber : Diolah oleh penulis) Gambar 4.15. Tampilan Output PV-Grub (Sumber : Diolah oleh penulis) **************************************************** “xm list -l rhel-pvgrub” report follows bellow:**************************************************** [root@ServerCentOS52 ~]# xm list -l rhel-pvgrub (domain (domid 39) (on_crash restart) (uuid 7b1bd3ec-cb48-209e-7332-fac938b5d47e) (bootloader_args ) (vcpus 1) (name rhel-pvgrub) (on_poweroff destroy) (on_reboot restart) (bootloader ) (maxmem 2048) (memory 2048) (shadow_memory 0) (features ) (on_xend_start ignore) (on_xend_stop ignore) (start_time 1223242728.57) (cpu_time 22.126731432) (online_vcpus 1) (image (linux (kernel /usr/lib/xen/boot/pv-grub-x86_64.gz) (args ‘(hd0,0)/grub/menu.lst’) (notes) ) ) (status 2) (state -b—-) (store_mfn 2239405) (console_mfn 2239404) (device (vif (bridge eth0) (mac 00:16:3e:3c:e4:55) (script vif-bridge) (uuid 02994996-60ef-44fa-3913-ee5f7bf02c3a) (backend 0) ) ) (device (vbd (protocol x86_64-abi) (uuid 00a0c8e2-561a-9eb3-9c0a-3511bbd1ef88) (dev xvda:disk) (uname phy:/dev/sda10) (mode ‘w!’) (backend 0) (bootable 1) (VDI ) ) ) (device (console (protocol vt100) (location 2) (uuid 1e8291b4-07a2-67e5-b124-0fd4084849b2) ) ) ) c. Cara menginstal Alat XenServer ke mesin virtual. 1. Buka XenCenter dan membuat koneksi ke XenServer. 2. Saya mulai dengan hanya mengklik kanan pada nama Virtual Machine dan klik "Instal Alat XenServer". Sebuah peringatan akan muncul yang menyatakan bahwa, "Setiap CD atau DVD saat ini dalam drive CD Virtual Machine akan dikeluarkan ketika XenServer Peralatan diinstal." Klik pada "ZenServer Alat Instal" untuk melanjutkan. Gambar 4.16. Instalasi Tools Xen Server (Sumber : Diolah oleh penulis) 3. Setelah itu ke tab konsol XenCenter untuk Virtual Machine. Kita akan melihat bahwa di bagian atas jendela, di bawah tab bahwa perangkat lunak memberitahu bahwa ia memiliki image CD "xs-tools.iso" dimuat ke dalam DVD Drive. Ini juga disediakan dengan nama perangkat dalam sistem. Gambar 4.17. Tampilan xs-tools.iso (Sumber : Diolah oleh penulis) 4. Selanjutnya kita dapat melakukan langkah-langkah berikut melalui baik konsol atau melalui sesi SSH ke sistem. Saya akan melakukan instalasi menggunakan SSH. Berikut adalah output dari sesi saya. Ingat bahwa nama perangkat drive disediakan oleh XenCenter. $ ssh 10.17.37.243 [email protected]'s password: Last login: Thu Sep 11 12:57:31 2008 from 10.0.80.84 [root@ns0 ~]# cd /mnt [root@ns0 mnt]# ls [root@ns0 mnt]# mkdir xs-tools [root@ns0 mnt]# mount /dev/xvdd /mnt/xs-tools/ mount: block device /dev/xvdd is write-protected, mounting readonly [root@ns0 mnt]# cd /mnt/xs-tools/Linux/ [root@ns0 Linux]# bash install.sh Detected `CentOS release 5.2 (Final)' (centos version 5). The following changes will be made to this Virtual Machine: * packages to be installed/upgraded: - kernel-xen-2.6.18-53.1.13.el5.xs4.1.0.24.x86_64.rpm - xe-guest-utilities-4.1.0-257.x86_64.rpm Continue? [y/n] y Preparing...########################################### [100%] 1:xe-guest-utilities########################################### [100%] Preparing...########################################### [100%] package kernel-xen-2.6.18-92.el5 (which is newer than kernel-xen2.6.18-53.1.13.el5.xs4.1.0.24) is already installed You should now reboot this Virtual Machine. [root@ns0 Linux]# Jika kita ingin cara mudah cukup copy dan paste ke shell, baris berikut harus melakukan semua langkah yang diberikan bahwa ditugaskan nama perangkat yang sama dari / dev / xvdd mkdir /mnt/xs-tools mount /dev/xvdd /mnt/xs-tools cd /mnt/xs-tools/Linux/ bash install.sh 5. Script instalasi Alat XenServer melakukan pekerjaan yang wajar untuk menentukan cara terbaik untuk menginstal apa yang dibutuhkan tanpa intervensi. Jika semuanya berjalan baik kita harus dapat reboot sistem dari baris perintah dan ketika restart kita dapat melihat bahwa alat XenServer yang dipasang seperti pada gambar berikut. Gambar 4.18. Tools XenServer telah di pasang (Sumber : Diolah oleh penulis) 6. Sekarang XenCenter akan dapat memiliki kontrol sedikit lebih dari sistem operasi dalam Virtual Machine dan juga akan dapat melihat counter yang sebelumnya tidak tersedia dalam tab "Performance" dari XenCenter. Gambar 4.19.Tampilan tab “Performance” (Sumber : Diolah oleh penulis) 3. Membuat Virtual Machine CentOS dilengkapi dengan alat yang bagus disebut Virt-install dengan yang kita dapat menciptakan mesin virtual untuk Xen. Untuk memulainya, kita cukup menjalankan virt-install Software mengajukan beberapa pertanyaan sebelum menciptakan mesin virtual. Saya ingin menghubungi mesin virtual pertama saya vm01, dengan 256MB RAM dengan ukuran disk 4GB. Saya ingin menyimpannya dalam file / vm/vm01.img: - Apa nama mesin virtual anda? Vm01 - Berapa banyak RAM yang harus dialokasikan (dalam megabyte)? 256 - Apa yang ingin anda gunakan sebagai disk (path file)? /Vm/vm01.img - Bagaimana besar akan anda seperti disk (/ vm/vm01.img) untuk (dalam gigabyte)? 4 - Apakah anda ingin mengaktifkan dukungan grafis? (ya atau tidak) tidak ada - Apa lokasi menginstal? Pertanyaan tentang dukungan grafis mengacu pada installer, bukan mesin virtual itu sendiri. Hal ini dimungkinkan untuk memulai installer grafis, tapi kita harus terhubung melalui VNC. Ini lebih mudah untuk menggunakan installer teks dengan menawarkan pilihan yang sama, jadi saya memilih menggunakan installer teks. Setelah kita menjawab semua pertanyaan, Virt-install mulai CentOS 5.2 installer yang normal (dalam mode teks) dalam mesin virtual vm01. Kita sudah tahu installer CentOS, jadi seharusnya tidak ada masalah bagi kita untuk menyelesaikan instalasi CentOS di vm01. Setelah instalasi, kita masuk di konsol vm01. Untuk meninggalkan, ketik CTRL +] jika kita berada di konsol, atau CTRL +5 jika kita menggunakan Putty. Kemudian kita akan kembali pada konsol dom0. Virt-install telah menciptakan file konfigurasi /etc/xen/vm01 bagi kita (dalam dom0). Seharusnya terlihat seperti ini: cat /etc/xen/vm01 name = "vm01" uuid = "6c835c75-41da-b13f-ec1b-946c4079ec17" maxmem = 256 memory = 256 vcpus = 1 bootloader = "/usr/bin/pygrub" on_poweroff = "destroy" on_reboot = "restart" on_crash = "restart" vfb = [ ] disk = [ "tap:aio:/vm/vm01.img,xvda,w" ] vif = [ "mac=00:16:3e:7a:27:02,bridge=xenbr0" ] Jalankan xm console vm01 untuk login pada mesin virtual lagi (tipe CTRL +] jika kita berada di konsol, atau CTRL +5 jika kita menggunakan Putty untuk kembali ke dom0), atau menggunakan klien SSH untuk menyambungkan. Untuk mendapatkan daftar tipe yang berjalan di mesin virtual xm list Output akan terlihat seperti ini: [root@server1 ~]# xm list Name Domain-0 ID Mem(MiB) VCPUs State Time(s) 0 771 vm01 1 1 r----- 283.5 255 1 -b---- 237.6 [root@server1 ~]# Untuk menutup vm01, lakukan ini: xm shutdown vm01 Untuk memulai vm01 lagi, jalankan xm create /etc/xen/vm01 Jika ingin vm01 untuk memulai secara otomatis pada boot berikutnya dari sistem, kemudian melakukan ini: ln -s /etc/xen/vm01 /etc/xen/auto Berikut adalah perintah – perintah di dalam Xen : xm create-c / path / ke / config Mulai mesin virtual. xm shutdown yang <name> Stop mesin virtual. xm menghancurkan <name> Stop mesin virtual segera tanpa mematikannya. Ini seperti jika Anda mematikan tombol power. xm list Daftar semua sistem berjalan. xm <name> konsol Login pada mesin virtual. xm help Daftar semua perintah. 4. Pengoperasian Xen Hypervisor Setelah kita berhasil melakukan instalasi Xen Hypervisor, kita bisa langsung membuat guest OS. Perlu dipahami bahwa Xen memiliki keistimewaan dalam melakukan emulasi penggunaan hardware antara Guest OS dengan hostnya dalam bentuk paravirtualization, yaitu pemanfaatan modul pada kernel yang dioptimasi secara khusus. Paravirtualization bisa dilakukan untuk sistem operasi yang sama, misalnya SLES sebagai host terhadap openSUSE sebagai guest, namun hal ini tidak bisa dilakukan pada sistem Windows. Sistem Windows sebagai guest pada Xen menggunakan model full virtualization, dan ini memerlukan dukungan processor yang memiliki fasilitas VT atau Virtualization Technology. Kita bisa mengaktifkan kemampuan VT ini melalui setting BIOS.. Untuk membuat guest OS baru, silakan ikuti panduan berikut ini : 1. Buka YAST | Virtualization | Create Virtual Machines. Klik Forward Gambar 4.20. Membuat Guest OS baru Gambar 4.21. Buat virtual mesin baru 2. Wizard berikutnya akan menanyakan apakah kita hendak melakukan instalasi sistem baru, memindahkan image atau mengupgradenya, silakan pilih I need to install an Operating System untuk membuat guest OS baru Gambar 4.22. Instalasi sistem baru 3. Tahap berikutnya adalah menentukan sistem operasi untuk Guest Gambar 4.23. Sistem operasi untuk guest 4. Pada wizard terakhir, kita bisa menentukan kapasitas harddisk yang diinginkan untuk Guest OS, mounting file ISO atau CD ROM untuk DVD instalasi, menentukan memory, hingga menentukan (opsional) autoyast untuk otomatisasi konfigurasi. Jangan lupa memberi nama virtual machine pada bagian ini dengan nama yang lebih mudah dipahami (misalnya : storage untuk virtual machine yang digunakan untuk file server dll). Kapasitas disk yang ditentukan akan mengisi kapasitas harddisk fisik secara dinamis, dalam arti bisa saja harddisk diset sebesar 80 GB namun isinya secara fisik baru 4 GB sesuai dengan data yang ada pada virtual machine Gambar 4.24. Menentukan kapasitas hardisk 5. Jika sudah diset semua, klik OK. Xen akan mulai melakukan instalasi Guest OS. Xen menggunakan TightVnc untuk melakukan instalasi secara remote. Gambar 4.25. Instalasi secara remote 6. Jika kita ingin mengelola Xen atau utuk menjalankan Guest OS, kita bisa menggunakan menu YAST | Virtualization | Virtual Manager Gambar 4.26. Tampilan YAST Grafik perbandingan harga server yang belum dan setelah divirtualisasikan. Untuk setiap user yang membutuhkan dedicated server dengan harga Rp. 10.000.000,-mendapatkan memory 2GB. Sedangkan harga untuk dedicated server yang divirtualisasikan sebesar Rp. 25.000.000,- dan mendapatkan memory 8GB untuk 4 user yang masing-masing mendapatkan 2GB 120 100 Harga 80 60 Server 40 20 0 1 2 3 4 5 6 7 8 9 10 11 12 Gambar 4.27. Grafik penggunaan server sebelum menggunakan Virtualisasi (Sumber : Data Primer) 80 70 60 Harga 50 40 Server 30 20 10 0 4 8 12 Gambar 4.28. Grafik Penggunaan server setelah menggunakan virtualisasi (Sumber : Diolah oleh penulis) 4.2.5. Monitoring Penting untuk diingat bahwa Xen dalam lingkungan tingkat perusahaan mampu mendukung konfigurasi virtualisasi yang kompleks. Oleh karena itu memerlukan pemahaman tentang alat dan teknik yang diperlukan untuk memonitor sistem yang sedang berjalan, mengidentifikasi masalah kinerja dan mengidentifikasi masalah. Mungkin langkah yang paling dasar dalam pemantauan sistem Xen atau mengisolasi masalah adalah untuk mendapatkan gambaran tingkat tinggi dari lingkungan Xen dan konfigurasi yang mendasarinya. Informasi ini akan penting ketika meminta bantuan dari vendor atau forum. Cara yang baik untuk mendapatkan informasi ini adalah dengan menggunakan perintah info xm. Misalnya, contoh berikut menunjukkan output dari info xm pada Red Hat Enterprise Linux 5 (RHEL5) sistem: xm info host : localhost.localdomain release : 2.6.18-53.el5xen version : #1 SMP Wed Oct 10 17:06:12 EDT 2007 machine : i686 nr_cpus : 1 nr_nodes : 1 sockets_per_node : 1 cores_per_socket : 1 threads_per_core : 1 cpu_mhz : 2993 hw_caps : 0febfbff:20100000:00000000:00000180:0000a015:00000000:00000001 total_memory : 255 free_memory : 14 xen_major : 3 xen_minor : 1 xen_extra : .0-53.el5 xen_caps : xen-3.0-x86_32p xen_pagesize : 4096 platform_params : virt_start=0xf5800000 xen_changeset : unavailable cc_compiler : gcc version 4.1.2 20070626 (Red Hat 4.1.2-14) a. cc_compile_by : brewbuilder cc_compile_domain : build.redhat.com cc_compile_date : Wed Oct 10 16:30:55 EDT 2007 xend_config_format : 2 Pemantauan kinerja Xen dengan XenMon Alat XenMon berguna untuk memantau kinerja domain Xen, terutama ketika mengidentifikasi domain bertanggung jawab untuk tertinggi I / O atau pengolahan beban pada sistem. XenMon dimulai dari baris perintah menggunakan perintah xenmon.py. Gambar berikut menunjukkan sebuah sesi XenMon khas: Gambar 4.29. Kinerja domain Xen Layar XenMon menunjukkan dua set data. Di sisi kiri statistik ditangkap selama 10 detik sebelumnya dan di sebelah kanan adalah data untuk kedua 1 detik terakhir. Untuk setiap domain tiga set data yang disediakan. Baris pertama untuk setiap domain adalah jumlah waktu domain yang dihabiskan untuk mengeksekusi. Baris Diblokir menunjukkan statistik untuk waktu idle. Akhirnya, baris Menunggu menunjukkan jumlah waktu domain tersebut telah dalam keadaan menunggu. Untuk setiap kategori jumlah waktu yang dihabiskan dalam modus tertentu dan waktu sebagai persentase dari keseluruhan waktu selama periode yang sama (yaitu 1 atau 10 detik) ditampilkan. Nilai akhir tergantung pada kategori. Untuk mendapatkan ini merupakan waktu prosesor, untuk Diblokir waktu rata-rata diblokir dan untuk Tunggu waktu menunggu rata-rata. Secara default XenMon menampilkan informasi untuk CPU 0. Jika sistem memiliki lebih dari satu CPU fisik maka tombol p dan n dapat digunakan untuk halaman melalui data untuk setiap CPU pada sistem. Ketika XenMon yang keluar (menggunakan tombol q) ringkasan dari data yang dikumpulkan selama sesi pemantauan ditampilkan: ms_per_sample = 100 Initialized with 1 cpu CPU Frequency = 2993.98 Event counts: 00000000 Other 00000000 Add Domain 00000000 Remove Domain 00000000 Sleep 00022838 Wake 00022838 Block 00045666 Switch 00000000 Timer Func 00045666 Switch Prev 00045666 Switch Next 00000000 Page Map 00000000 Page Unmap 00000000 Page Transfer processed 182674 total records in 288 seconds (634 per second) woke up 288 times in 288 seconds (1 per second) XenMon menerima berbagai opsi baris perintah yang mengontrol berbagai aspek pemantauan. Untuk rincian dari pilihan ini hanya lulus argumen membantu melalui xenmon.py: xenmon.py --help usage: xenmon.py [options] options: -h, --help show this help message and exit -l, --live show the ncurses live monitoring frontend (default) -n, --notlive write to file instead of live monitoring -p PREFIX, --prefix=PREFIX prefix to use for output files -t DURATION, --time=DURATION stop logging to file after this much time has elapsed (in seconds). set to 0 to keep logging indefinitely -i INTERVAL, --interval=INTERVAL interval for logging (in ms) --ms_per_sample=MSPERSAMPLE determines how many ms worth of data goes in a sample --cpu=CPU specifies which cpu to display data for --allocated --noallocated Display allocated time for each domain Don't display allocated time for each domain --blocked --noblocked Display blocked time for each domain Don't display blocked time for each domain --waited --nowaited Display waiting time for each domain Don't display waiting time for each domain --excount Display execution count for each domain --noexcount Don't display execution count for each --iocount Display I/O count for each domain domain --noiocount Don't display I/O count for each domain b. Pemantauan Kinerja dengan XenTop Siapapun yang telah menggunakan UNIX atau Linux untuk waktu yang lama (terutama sejak hari sebelum lingkungan desktop GUI) mungkin familiar dengan perintah di atas. Alat ini sudah sejak lama digunakan untuk menampilkan informasi, seperti CPU dan penggunaan memori, tentang proses yang berjalan pada sistem tertentu. Salah satu fitur terbaik dari atas adalah yang menempatkan proses pembuatan penggunaan terberat dari sebuah sumber daya tertentu di bagian atas daftar. Ketika sebuah sistem adalah menunjukkan penurunan kinerja komando puncak sering port pertama panggilan untuk administrator sistem yang berpengalaman. XenTop pada dasarnya adalah versi Xen dari utilitas atas asli dan digunakan untuk menampilkan informasi tentang semua domain yang berjalan pada sistem tertentu. Alat XenTop diluncurkan dengan mengetik xentop sebagai root pada baris-perintah. Sementara xentop dapat diluncurkan tanpa opsi baris perintah, perlu mengetahui bahwa berbagai pilihan yang tersedia dan dapat terdaftar menggunakan flag - membantu: xentop --help Usage: xentop [OPTION] Displays ongoing information about xen vm resources -h, --help display this help and exit -V, --version output version information and exit -d, --delay=SECONDS seconds between updates (default 3) -n, --networks output vif network data -x, --vbds output vbd block device data -r, --repeat-header repeat table header before each domain -v, --vcpus output vcpu data -b, --batch output in batch mode, no user input accepted -i, --iterations number of iterations before exiting Gambar berikut menunjukkan contoh output dari sesi XenTop: Gambar 4.30. Pemantauan kinerja Xen dengan XenTop 4.2.6. Management Tahap manajemen untuk pembagian sumber daya virtual private server dilakukan oleh system administrator PT. Smart Intermedia Solusindo sesuai dengan kebijakan yang berlaku diperusahaan tersebut. BAB V PENUTUP 5.1. Kesimpulan Dalam tugas akhir ini dapat disimpulkan sebagai berikut : 1. Virtualisasi sebagai konsep yang mulai dicanangkan pada tahun 1960 ternyata masih dibutuhkan oleh perkembangan teknologi informasi saat ini untuk pemanfaatan sistem komputer dan sumber dayanya semaksimal mungkin. 2. Dengan menggunakan virtualisasi maka dapat mengurangi pengadaan server karena beberapa aplikasi web milik customer yang membutuhkan lingkungan dedicated dapat diletakan pada satu server. 3. Tingginya biaya pengadaan server untuk memenuhi permintaan customer akan membutuhkan tempat untuk meletakan server, dengan virtualisasi pada server maka dapat menghemat tempat untuk meletakkan server tersebut. 4. Dengan menggunakan Xen kita dapat memisahkan aplikasi kita ke mesin virtual yang berbeda yang benar-benar independen dari satu sama lain, tetapi masih menggunakan hardware yang sama. Hal ini menghemat uang, dan yang lebih penting, yaitu lebih aman. 5.2. Saran 1. Xen biasanya merupakan pilihan pertama bagi penyedia layanan website yang memerlukan lebih banyak memori. Hal ini terutama penting bagi pengguna yang berencana untuk melakukan banyak tugas one-off yang membutuhkan memori tambahan, seperti video encoding, kompilasi atau pengembangan aplikasi Java. 2. Pada PT. Smart Intermedia Solusindo sebagai perusahaan penyedia jasa layanan hosting, virtualisasi menjadi solusi untuk mengatasi kendala tingginya biaya pengadaan server. 3. Pada saat ini implementasi virtualisasi baru efektif untuk lingkungan server saja. Selain itu, mengingat kebutuhan kinerjanya, dibutuhkan spesifikasi hardware yang dilengkapi dengan standar peralatan yang tinggi, seperti jumlah RAM yang banyak, prosesor dengan teknologi virtualization seperti Intel-VT dan AMD-V. Penelitian ini menunjukkan bahwa dengan kebutuhan yang rendah, komputer dengan spesifikasi rendah pun bisa menjadi host untuk virtualization. Hal ini bisa menjadi daya tarik bagi dunia UKM (Usaha Kecil dan Menengah) di Indonesia, di mana UKM biasanya tidak mudah tertarik dengan pemanfaatan TI. Dengan virtualisasi, berbagai UKM bisa berbagi sumber daya layanan melalui jasa pihak ketiga, memanfaatkan layanan sesuai dengan kebutuhan mereka, dan membayar layanan sesuai dengan pemakaian mereka, dengan biaya yang lebih murah dibandingkan dengan harus membayar biaya pemakaian sumber daya komputasi satu server utuh. DAFTAR PUSTAKA Ashari, Ahmad, dkk. 2010. Linux Sistem Administrasi. Bandung: Informatika. Sutanta, Edhy. 2005. Komunikasi Data&Jaringan Komputer. Yogyakarta: Graha Ilmu. Suarna Nana, ST. 2007. Panduan Lengkap Cara Menggunakan Internet. Bandung: Yrama Widya. W.Purbo, Onno. 2008. Panduan Mudah Merakit+Menginstal Server Linux. Yogyakarta: Andi. W.Purbo, Onno. 2000. Buku Pintar Internet Membangun Web E-Commerce. Jakarta: Elex Media Komputindo. Williams dan Sawyer. 2007. Using Information Technologi, Pengenalan Praktis Dunia Komputer dan Komunikasi. Edisi 7, Terjemahan Nur Wijayaning Rahayu & Th. Arief Prabawati. Yogyakarta: Andi. Yuhefizar. 2008. 10 Jam Menguasai Internet : Teknologi dan Aplikasinya. Jakarta: Elex Media Komputindo. E.Goldman, James. 2005. Applied Data Communications, A business-Oriented Approach. Wilay. Mansfield. N. 2004. Practical TCP/IP. Yogyakarta: Andi. Zhang. W. 1999. Linux Virtual Server for Scalable Network Service. P. O'Rourke and M. Keefe. 2001. Performance Evaluation of Linux Virtual Server. Pratt, Ian. 2006. Xen and the Art of Virtualization. Takemura, Chris and Crawford. 2009. The Book of XEN. San Fransisco: No Starch Press. Matthews and Jeanna N. 2008. Running Xen. U.S. Prentice Hall Chisnall, David. 2008. The Definitive Guide to the Xen Hypervisor. San Fransisco: Prentice Hall http://www.linuxvirtualserver.org/ [10 Juni 2011] http://rac.uii.ac.id/server/document/Public/20110212101706LAP.pdf [10 Juni 2011] www.xen.org [10 Juni 2011] http://harry.sufehmi.com/archives/2006-07-29-1222/ [11 Juni 2011] http://en.wikipedia.org/wiki/Operating_system-level_virtualization [11 Juni 2011] http://slitrixiumlooqman.spaces.live.com/blog/ [11 Juni 2011] http://www.gartner.com/it/page.jsp?id=638207 [15 Juni 2011] http://www.gartner.com/it/page.jsp?id=1211813 [15 Juni 2011] http://vavai.com/2010/01/25/teknologi-virtualisasi-virtualbox-xen-hypervisor-fullvirtualization-paravirtualization/ [15 Juni 2011] http://searchservervirtualization.techtarget.com/tip/Paravirtualization-explained Virtualization [12 Juli 2011] http://www.kernelthread.com/publications/virtualization/ [12 Juli 2011] http://www.infobarrel.com/History_of_Virtualization [12 Juli 2011] http://adibowo.com/komputer-server-pengertian-jenis-dan-fungsi-server/ [22 Juli 2011] http://www.tech-faq.com/understanding-server-roles.html [22 Juli 2011] http://www.webzila.com/commonproblems/misc/issue32.html [22 Juli 2011] http://kambing.ui.ac.id/bebas/v06/Kuliah/SistemOperasi/BUKU/SistemOperasi-4.X1/ch17s05.html [22 Juli 2011] http://stikom-pti2007-kelompok9.blogspot.com/2007/09/pengertian-internet.html, [25 Juli 2011] LAMPIRAN 1 LAMPIRAN 2 WAWANCARA Responden : Roni Rosadi Tanggal : 15 Februari 2011 Penanya Subjek : Informasi : Ari Kristiyanto Tujuan wawancara : Untuk mengetahui informasi tentang kebutuhan Costumer akan spesifikasi kebutuhan untuk menjalankan webnya. Point Wawancara : 1. Apakah ada kendala yang dihadapi dalam penggunaan server selama ini? Hasil Wawancara : Ada, salah satu kendalanya kurangnya fleksibilitas dalam menyesuaikannya sesuai dengan kebutuhan costumer. Point Wawancara : 2. Seperti apa kendala dalam menyesuaikan kebutuhan costumer? Hasil Wawancara : Yakni apabila aplikasi yang dijalankan membutuhkan spesifikasi yang berbeda satu dengan yang lain. Point Wawancara : 3. Apa spesifikasi minimal pada sebuah server? Hasil Wawancara : Spesifikasi minimal adalah intel xeon dual core, memory 2GB, hardisk 250 GB. Responden : Awaludin Tanggal : 15 Februari 2011 Penanya Subjek : Ari Kristiyanto : Informasi Tujuan wawancara : Untuk mengetahui informasi tentang kebutuhan Costumer akan spesifikasi kebutuhan untuk menjalankan webnya. Point Wawancara : 1. Berapakah biasanya jumlah akun web yang dimasukkan kedalam satu server? Hasil Wawancara : Dapat menampung 800 website. Point Wawancara : 2. Berapakah konsumsi listrik yang dibutuhkan pada sebuah server? Hasil Wawancara : Membutuhkan daya sebesar 500 Watt. Point Wawancara : 3. Berapa biaya pengadaan satu buah server? Hasil Wawancara : Sesuai dengan spesifikasi intel xeon dual core, memory 2GB, hardisk 250 GB, biaya yang dibutuhkan sekitar 10 juta rupiah. LAMPIRAN 3 Installasi Xen Pada Linux Centos 1. Langkah awal Saya menggunakan partisi berikut pada sistem host saya 5,2 CentOS (dom0): / Boot 150 MB (ext3) Swap 1GB / 3GB (ext3) / Vm sisanya (ext3) Pastikan bahwa SELinux dinonaktifkan atau permisif: vi /etc/sysconfig/selinux # This file controls the state of SELinux on the system. # SELINUX= can take one of these three values: # enforcing - SELinux security policy is enforced. # permissive - SELinux prints warnings instead of enforcing. # disabled - SELinux is fully disabled. SELINUX=disabled # SELINUXTYPE= type of policy in use. Possible values are: # targeted - Only targeted network daemons are protected. # strict - Full SELinux protection. SELINUXTYPE=targeted Jika kita harus memodifikasi / etc / sysconfig / selinux, silahkan reboot sistem: reboot 2. Instalasi Xen Untuk menginstal Xen, kita cukup menjalankan yum install kernel-xen xen Saya membuka / boot / grub / menu.lst: vi / boot / grub / menu.lst Kernel terdaftar pertama harus kernel Xen yang baru saja diinstal: [...] title CentOS (2.6.18-92.1.13.el5xen) root (hd0,0) kernel /xen.gz-2.6.18-92.1.13.el5 module /vmlinuz-2.6.18-92.1.13.el5xen root=/dev/VolGroup00/LogVol00 module /initrd-2.6.18-92.1.13.el5xen.img [...] ro Ubah nilai default ke 0 (sehingga kernel pertama (kernel Xen) akan boot secara default): [...] default=0 [...] Selengkapnya /boot/grub/menu.lst harus terlihat seperti ini: # grub.conf generated by anaconda # # Note that you do not have to rerun grub after making changes to this file # NOTICE: You have a /boot partition. This means that # all kernel and initrd paths are relative to /boot/, eg. # root (hd0,0) # kernel /vmlinuz-version ro root=/dev/VolGroup00/LogVol00 # initrd /initrd-version.img # boot=/dev/sda default=0 timeout=5 splashimage=(hd0,0)/grub/splash.xpm.gz hiddenmenu title CentOS (2.6.18-92.1.13.el5xen) root (hd0,0) kernel /xen.gz-2.6.18-92.1.13.el5 module /vmlinuz-2.6.18-92.1.13.el5xen ro root=/dev/VolGroup00/LogVol00 module /initrd-2.6.18-92.1.13.el5xen.img title CentOS (2.6.18-92.1.1.el5) root (hd0,0) kernel /vmlinuz-2.6.18-92.1.1.el5 ro root=/dev/VolGroup00/LogVol00 initrd /initrd-2.6.18-92.1.1.el5.img title CentOS (2.6.18-92.el5) root (hd0,0) kernel /vmlinuz-2.6.18-92.el5 ro root=/dev/VolGroup00/LogVol00 initrd /initrd-2.6.18-92.el5.img Setelah itu, kita reboot sistem: reboot Sistem sekarang harus secara otomatis boot kernel Xen yang baru. Setelah sistem telah boot, kita dapat memeriksa bahwa dengan menjalankan uname –r [root@server1 ~]# uname -r 2.6.18-92.1.13.el5xen [root@server1 ~]# Kita sekarang dapat menjalankan xm list untuk memeriksa apakah Xen telah dimulai. Kita harus daftar Domain-0 (dom0): [root@server1 ~]# xm list Name Domain-0 [root@server1 ~]# ID Mem(MiB) VCPUs State Time(s) 0 964 1 r----- 134.1 PV-Grub [root@ServerCentOS52 vm]# cat rhel52.pv-grub name = “rhel-pvgrub” memory = 2048 vcpus = 1 disk = [ 'phy:/dev/sda10,xvda,w!' ] vif = [ "bridge=eth0" ] kernel = “/usr/lib/xen/boot/pv-grub-x86_64.gz” extra = “(hd0,0)/grub/menu.lst” ************************************ Start PV DomU with command ************************************ [root@ServerCentOS52 vm]# xm create -c rhel52.pv-grub Kernel 2.6.18-92.el5xen on an x86_64 rhel52pvm login: root Password: Last login: Sun Oct 5 16:26:58 on xvc0 [root@rhel52pvm ~]# uname -a Linux rhel52pvm 2.6.18-92.el5xen #1 SMP Tue Jun 10 19:20:18 EDT 2008 x86_64 x86_64 x86_64 GNU/Linux [root@rhel52pvm ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/VolGroup00-LogVol00 13G 3.6G 8.7G 30% / /dev/xvda1 99M 14M 81M 14% /boot tmpfs 1.0G 0 1.0G 0% /dev/shm **************************** File /boot/grub/menu.lst **************************** [root@rhel52pvm ~]# cat /boot/grub/menu.lst # grub.conf generated by anaconda #boot=/dev/xvda default=0 timeout=15 splashimage=(hd0,0)/grub/splash.xpm.gz # hiddenmenu title CentOS (2.6.18-92.el5xen) root (hd0,0) kernel /vmlinuz-2.6.18-92.el5xen ro root=/dev/VolGroup00/LogVol00 rhgb quiet initrd /initrd-2.6.18-92.el5xen.img ************************************* Setup vncserver to run at DomU:************************************* # mkdir .vnc # cd .vnc # vncserver :1 Vnc password will be requested by the last command. Edit ~/.vnc/xstartup and uncomment first two lines. Make this file as follows bellow: #!/bin/sh unset SESSION_MANAGER exec /etc/X11/xinit/xinitrc [ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup [ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources xsetroot -solid grey vncconfig -iconic & xterm -geometry 80×24+10+10 -ls -title “$VNCDESKTOP Desktop” & twm & Make following changes to /etc/sysconfig/vncservers file:VNCSERVERS=”1:root” VNCSERVERARGS[1]=”-geometry 1024×768″ Then run:# chkconfig vncserver on # reboot **************************************************** “xm list -l rhel-pvgrub” report follows bellow:**************************************************** [root@ServerCentOS52 ~]# xm list -l rhel-pvgrub (domain (domid 39) (on_crash restart) (uuid 7b1bd3ec-cb48-209e-7332-fac938b5d47e) (bootloader_args ) (vcpus 1) (name rhel-pvgrub) (on_poweroff destroy) (on_reboot restart) (bootloader ) (maxmem 2048) (memory 2048) (shadow_memory 0) (features ) (on_xend_start ignore) (on_xend_stop ignore) (start_time 1223242728.57) (cpu_time 22.126731432) (online_vcpus 1) (image (linux (kernel /usr/lib/xen/boot/pv-grub-x86_64.gz) (args ‘(hd0,0)/grub/menu.lst’) (notes) ) ) (status 2) (state -b—-) (store_mfn 2239405) (console_mfn 2239404) (device (vif (bridge eth0) (mac 00:16:3e:3c:e4:55) (script vif-bridge) (uuid 02994996-60ef-44fa-3913-ee5f7bf02c3a) (backend 0) ) ) (device (vbd (protocol x86_64-abi) (uuid 00a0c8e2-561a-9eb3-9c0a-3511bbd1ef88) (dev xvda:disk) (uname phy:/dev/sda10) (mode ‘w!’) (backend 0) (bootable 1) (VDI ) ) ) (device (console (protocol vt100) (location 2) (uuid 1e8291b4-07a2-67e5-b124-0fd4084849b2) ) ) ) Instalasi menggunakan SSH $ ssh 10.17.37.243 [email protected]'s password: Last login: Thu Sep 11 12:57:31 2008 from 10.0.80.84 [root@ns0 ~]# cd /mnt [root@ns0 mnt]# ls [root@ns0 mnt]# mkdir xs-tools [root@ns0 mnt]# mount /dev/xvdd /mnt/xs-tools/ mount: block device /dev/xvdd is write-protected, mounting readonly [root@ns0 mnt]# cd /mnt/xs-tools/Linux/ [root@ns0 Linux]# bash install.sh Detected `CentOS release 5.2 (Final)' (centos version 5). The following changes will be made to this Virtual Machine: * packages to be installed/upgraded: - kernel-xen-2.6.18-53.1.13.el5.xs4.1.0.24.x86_64.rpm - xe-guest-utilities-4.1.0-257.x86_64.rpm Continue? [y/n] y Preparing...########################################### [100%] 1:xe-guest-utilities########################################### [100%] Preparing...########################################### [100%] package kernel-xen-2.6.18-92.el5 (which is newer than kernel-xen2.6.18-53.1.13.el5.xs4.1.0.24) is already installed You should now reboot this Virtual Machine. [root@ns0 Linux]# mkdir /mnt/xs-tools mount /dev/xvdd /mnt/xs-tools cd /mnt/xs-tools/Linux/ bash install.sh Virt-install cat /etc/xen/vm01 name = "vm01" uuid = "6c835c75-41da-b13f-ec1b-946c4079ec17" maxmem = 256 memory = 256 vcpus = 1 bootloader = "/usr/bin/pygrub" on_poweroff = "destroy" on_reboot = "restart" on_crash = "restart" vfb = [ ] disk = [ "tap:aio:/vm/vm01.img,xvda,w" ] vif = [ "mac=00:16:3e:7a:27:02,bridge=xenbr0" ] Jalankan xm console vm01 untuk login pada mesin virtual lagi (tipe CTRL +] jika kita berada di konsol, atau CTRL +5 jika kita menggunakan Putty untuk kembali ke dom0), atau menggunakan klien SSH untuk menyambungkan. Untuk mendapatkan daftar tipe yang berjalan di mesin virtual xm list Output akan terlihat seperti ini: [root@server1 ~]# xm list Name Domain-0 ID Mem(MiB) VCPUs State Time(s) 0 771 vm01 1 1 r----- 283.5 255 1 -b---- 237.6 [root@server1 ~]# Untuk menutup vm01, lakukan ini: xm shutdown vm01 Untuk memulai vm01 lagi, jalankan xm create /etc/xen/vm01 Jika ingin vm01 untuk memulai secara otomatis pada boot berikutnya dari sistem, kemudian melakukan ini: ln -s /etc/xen/vm01 /etc/xen/auto Output info xm xm info host : localhost.localdomain release : 2.6.18-53.el5xen version : #1 SMP Wed Oct 10 17:06:12 EDT 2007 machine : i686 nr_cpus : 1 nr_nodes : 1 sockets_per_node : 1 cores_per_socket : 1 threads_per_core : 1 cpu_mhz : 2993 hw_caps : 0febfbff:20100000:00000000:00000180:0000a015:00000000:00000001 total_memory : 255 free_memory : 14 xen_major : 3 xen_minor : 1 xen_extra : .0-53.el5 xen_caps xen_pagesize platform_params xen_changeset cc_compiler 4.1.2-14) cc_compile_by cc_compile_domain cc_compile_date xend_config_format : : : : xen-3.0-x86_32p 4096 virt_start=0xf5800000 unavailable : gcc version 4.1.2 20070626 (Red Hat : : : : brewbuilder build.redhat.com Wed Oct 10 16:30:55 EDT 2007 2 XenMon ms_per_sample = 100 Initialized with 1 cpu CPU Frequency = 2993.98 Event counts: 00000000 Other 00000000 Add Domain 00000000 Remove Domain 00000000 Sleep 00022838 Wake 00022838 Block 00045666 Switch 00000000 Timer Func 00045666 Switch Prev 00045666 Switch Next 00000000 Page Map 00000000 Page Unmap 00000000 Page Transfer processed 182674 total records in 288 seconds (634 per second) woke up 288 times in 288 seconds (1 per second) xenmon.py: xenmon.py --help usage: xenmon.py [options] options: -h, --help show this help message and exit -l, --live show the ncurses live monitoring frontend (default) -n, --notlive write to file instead of live monitoring -p PREFIX, --prefix=PREFIX prefix to use for output files -t DURATION, --time=DURATION stop logging to file after this much time has elapsed (in seconds). set to 0 to keep logging indefinitely -i INTERVAL, --interval=INTERVAL interval for logging (in ms) --ms_per_sample=MSPERSAMPLE determines how many ms worth of data goes in a sample --cpu=CPU for --allocated --noallocated domain --blocked --noblocked domain --waited --nowaited domain --excount domain --noexcount domain --iocount --noiocount domain specifies which cpu to display data Display allocated time for each domain Don't display allocated time for each Display blocked time for each domain Don't display blocked time for each Display waiting time for each domain Don't display waiting time for each Display execution count for each Don't display execution count for each Display I/O count for each domain Don't display I/O count for each XenTop xentop --help Usage: xentop [OPTION] Displays ongoing information about xen vm resources -h, -V, -d, -n, -x, -r, -v, -b, accepted -i, --help --version --delay=SECONDS --networks --vbds --repeat-header --vcpus --batch display this help and exit output version information and exit seconds between updates (default 3) output vif network data output vbd block device data repeat table header before each domain output vcpu data output in batch mode, no user input --iterations number of iterations before exiting