"Beberapa dari Anda mungkin bertanya, Ngapain bikin template segala? Kan bisa langsung saja instal dari akun VPS-nya? Pernyataan tersebut memang benar, tetapi saat Anda bertindak sebagai penyedia layanan VPS, maka pembuatan template akan menghemat banyak waktu saat harus membuat beberapa akun VPS dengan cPanel di dalamnya."
— dit
Intro
Ada beberapa jenis virtualisasi yang biasanya dipakai untuk penerapan layanan VPS, yaitu Xen, KVM dan OpenVZ. Masing-masing memiliki kelebihan dan kekurangannya serta pengembangannya sendiri berdasarkan kebutuhan penggunanya. Kali ini akan dibahas lebih lanjut untuk virtualisasi OpenVZ dalam rangka pembuatan template VPS yang didalamnya menggunakan sistem operasi Linux CentOS dan cPanel terbaru.
Analisa
Ada beberapa hal yang harus disiapkan terlebih dahulu sebelum pembuatan template dilakukan. Riset kali ini saya menggunakan sebuah akun VPS dengan ketentuan sebagai berikut.
- Kapasitas 15GB
- RAM minimal 512MB
- Sistem operasi Linux CentOS 5.6 64bit [32bit juga bisa]
Selesai dengan prasyarat di atas, kini kita melangkah ke tahapan berikutnya untuk instalasi cPanel di akun VPS yang sudah disiapkan. Sebagai contoh, akun VPS yang akan dijadikan template bernama 64.dit.web.id dengan ID 102 dan IP address 113.20.28.253.
Instalasi cPanel & Konfigurasinya
Silakan ikuti beberapa langkah di bawah ini untuk panduan instalasi cPanel dan konfigurasinya terkait pembuatan template VPS.
- Login ke dalam akun VPS yang sudah disiapkan sampai setara root, lalu integrasikan modul Perl ke dalam sistem menggunakan perintah yum -y install perl.
- Perbarui modul yang sudah terinstal menggunakan perintah yum -y update.
- Beranjak ke direktori /root dan unduhlah penginstal cPanel dengan perintah wget layer1.cpanel.net/latest.
[root@64 /]# cd /root/ [root@64 ~]# wget layer1.cpanel.net/latest --2011-07-27 09:53:23-- http://layer1.cpanel.net/latest Resolving layer1.cpanel.net... 64.50.161.11, 67.159.2.2, 67.205.110.4, ... Connecting to layer1.cpanel.net|64.50.161.11|:80... connected. HTTP request sent, awaiting response... 200 OK Length: 28413 (28K) [application/octet-stream] Saving to: `latest' 100%[===========================>] 28,413 41.7K/s in 0.7s 2011-07-27 09:53:24 (41.7 KB/s) - `latest' saved [28413/28413] [root@64 ~]#
- Eksekusi penginstalnya dengan perintah sh latest & dan tunggulah sampai selesai.
[root@64 ~]# sh latest & [1] 2025 Creating directory installd Verifying archive integrity...[root@64 ~]# All good. Uncompressing Cpanel & WHM Installer............. ____ _ ___ | _ \ __ _ _ ___ | | / __||_) / _ `| '_ \ / _ \| | | (__| __/ (_| | | | | __/| | \___ |_| \__,_|_| |_|\___|| | Installer Version v00002 r916950a3830cd3de6d30294018c46ae137dac5e3 Beginning main installation. 2011-07-27 09:53:51 474 ( INFO): cPanel install started at: Wed Jul 27 09:53:51 2011! 2011-07-27 09:53:51 475 ( INFO): This install will take 10-70 minutes depending on your hardware. 2011-07-27 09:53:51 476 ( INFO): Now is the time to go get another cup of coffee/jolt. 2011-07-27 09:53:51 477 ( INFO): The install will log to /var/log/cpanel-install.log. 2011-07-27 09:53:51 478 ( INFO): 2011-07-27 09:53:51 479 ( INFO): Beginning Installation 2011-07-27 09:53:51 378 ( INFO): centos 5 (Linux) detected! dst... 2011-07-30 22:08:11 186 (DEBUG): [20110730.220811] ==> Post Install Complete 2011-07-30 22:08:11 186 (DEBUG): => Log closed Sat Jul 30 22:08:11 2011 2011-07-30 22:08:11 186 (DEBUG): ---------------------------------------------------------------------------------------------------- 2011-07-30 22:08:11 186 (DEBUG): => Log opened from cPanel Update (upcp) - Slave at Sat Jul 30 22:08:11 2011 2011-07-30 22:08:11 186 (DEBUG): [20110730.220811] Post-sync cleanup completed successfully 2011-07-30 22:08:11 186 (DEBUG): [20110730.220811] Polling updatenow to see if a newer version is available for upgrade 2011-07-30 22:08:11 186 (DEBUG): => Log closed Sat Jul 30 22:08:11 2011 2011-07-30 22:08:11 186 (DEBUG): ---------------------------------------------------------------------------------------------------- 2011-07-30 22:08:11 186 (DEBUG): => Log opened from /usr/local/cpanel/scripts/updatenow at Sat Jul 30 22:08:11 2011 2011-07-30 22:08:12 186 (DEBUG): [20110730.220811] Version is the same on the server and locally (11.30.1.4) 2011-07-30 22:08:12 186 (DEBUG): => Log closed Sat Jul 30 22:08:11 2011 2011-07-30 22:08:12 186 (DEBUG): ---------------------------------------------------------------------------------------------------- 2011-07-30 22:08:12 186 (DEBUG): => Log opened from cPanel Update (upcp) - Slave at Sat Jul 30 22:08:11 2011 2011-07-30 22:08:12 186 (DEBUG): [20110730.220811] 2011-07-30 22:08:12 186 (DEBUG): [20110730.220811] cPanel update completed 2011-07-30 22:08:12 186 (DEBUG): [20110730.220811] A log of this update is available at /var/cpanel/updatelogs/update.1312048842.log 2011-07-30 22:08:12 186 (DEBUG): [20110730.220811] Removing upcp pidfile 2011-07-30 22:08:12 186 (DEBUG): [20110730.220811] 2011-07-30 22:08:12 186 (DEBUG): [20110730.220811] Completed all updates 2011-07-30 22:08:12 186 (DEBUG): => Log closed Sat Jul 30 22:08:11 2011 2011-07-30 22:08:12 186 (DEBUG): - ssystem [END] 2011-07-30 22:08:12 192 ( INFO): Adding services to chkconfig. 2011-07-30 22:08:12 194 ( INFO): - Enabling cpanel 2011-07-30 22:08:12 195 (DEBUG): - ssystem [BEGIN]: /sbin/chkconfig --level 35 cpanel on 2011-07-30 22:08:12 195 (DEBUG): - ssystem [END] 2011-07-30 22:08:12 194 ( INFO): - Enabling mysql 2011-07-30 22:08:12 195 (DEBUG): - ssystem [BEGIN]: /sbin/chkconfig --level 35 mysql on 2011-07-30 22:08:12 195 (DEBUG): - ssystem [END] 2011-07-30 22:08:12 194 ( INFO): - Enabling sshd 2011-07-30 22:08:12 195 (DEBUG): - ssystem [BEGIN]: /sbin/chkconfig --level 35 sshd on 2011-07-30 22:08:12 195 (DEBUG): - ssystem [END] 2011-07-30 22:08:12 1621 ( INFO): Enabling cphulkd ... 2011-07-30 22:08:12 1628 ( INFO): Done 2011-07-30 22:08:12 211 ( INFO): cPanel install finished in 179 minutes and 35 seconds! Removing /root/installer.lock [root@64 ~]# [1]+ Done sh latest [root@64 ~]#
- Gunakan sembarang editor teks kegemaran Anda dan ubah hostname di /etc/hosts.
::1 localhost.localdomain localhost 127.0.0.1 localhost.localdomain localhost # Auto-generated hostname. Please do not remove this comment. #113.20.28.253 64.dit.web.id 64 1.9.8.1 server.domain.apa server
- Selesai dengan instalasi cPanel, ubahlah IP address di file konfigurasi menjadi sembarang IP address lain di /etc/sysconfig/network-scripts/ifcfg-venet0:0.
DEVICE=venet0:0 ONBOOT=yes #IPADDR=113.20.28.253 IPADDR=1.9.8.1 NETMASK=255.255.255.255
- Sesuaikan pula gateway-nya dengan nama lain di /etc/sysconfig/network.
NETWORKING="yes" GATEWAYDEV="venet0" NETWORKING_IPV6="yes" IPV6_DEFAULTDEV="venet0" #HOSTNAME="64.dit.web.id" HOSTNAME="server.domain.apa"
- Jangan lupa juga untuk menyesuaikan konfigurasi hostname dan nameserver di /etc/wwwacct.conf.
#HOST 64.dit.web.id HOST server.domain.apa HOMEDIR /home ETHDEV #NS ns1.dit.web.id NS ns1.domain.apa #NS2 ns2.dit.web.id ns2.domain.apa HOMEMATCH home NSTTL 86400 NS4 TTL 14400 #ADDR 113.20.28.253 ADDR 1.9.8.1 DEFMOD x3 SCRIPTALIAS y CONTACTPAGER MINUID 500 NS3 CONTACTEMAIL siapa@domain.apa LOGSTYLE combined
- Pindahlah ke /var/lib/mysql dan hapus semua file log MySQL yang terbentuk paska instalasi cPanel.
[root@64 ~]# cd /var/lib/mysql/ [root@64 mysql]# ll total 20556 -rw-rw---- 1 mysql root 1340 Jul 30 21:41 64.dit.web.id.err -rw-rw---- 1 mysql mysql 5 Jul 30 21:41 64.dit.web.id.pid drwx------ 2 mysql mysql 4096 Jul 30 22:06 cphulkd drwx------ 2 mysql mysql 4096 Aug 1 05:19 eximstats drwx------ 2 mysql mysql 4096 Jul 30 22:06 horde -rw-rw---- 1 mysql mysql 10485760 Jul 30 22:06 ibdata1 -rw-rw---- 1 mysql mysql 5242880 Jul 30 22:06 ib_logfile0 -rw-rw---- 1 mysql mysql 5242880 Jul 30 21:41 ib_logfile1 drwx------ 2 mysql mysql 4096 Jul 30 22:04 leechprotect drwx--x--x 2 mysql mysql 4096 Jul 30 21:41 mysql srwxrwxrwx 1 mysql mysql 0 Jul 30 21:41 mysql.sock -rw-r--r-- 1 mysql root 6 Jul 30 21:41 mysql_upgrade_info drwx------ 2 mysql mysql 4096 Jul 30 22:06 roundcube [root@64 mysql]# rm -f 64.dit.web.id.* [root@64 mysql]#
- Untuk menghindari adanya masalah Udev di kemudian hari pada akun VPS klien, nonaktifkanlah fiturnya melalui /etc/rc.sysinit dan tambahkan 2 sintak seperti di bawah ini.
#/sbin/start_udev /sbin/MAKEDEV pty /sbin/MAKEDEV tty
Sampai posisi ini akun VPS sudah berisi cPanel dan terkonfigurasi serta siap dijadikan template. Simak tahapan berikutnya di bawah ini.
Membuat VPS Menjadi Template
Jika langkah sebelumnya dilakukan di sisi akun VPS [yang dipakai klien], maka kali ini beralih ke sisi server slave [yang memuat kumpulan akun VPS].
- Login ke server slave VPS sampai setara root.
- Matikan akun VPS terkait dengan perintah vzctl stop xxx, dimana xxx adalah ID yang mewakili akun VPS 64.dit.web.id.
- Pindahlah ke lokasi /vz/private/xxx [dalam hal ini xxx adalah 102 yang mewakili akun VPS 64.dit.web.id.
- Gunakan perintah Tar untuk merangkum konten akun VPS menjadi file terkompresi bernama centos-5.6-x86-cpanel-ovz.tar.gz dan simpan hasilnya di /vz/template/cache.
- Pindah ke lokasi /vz/template/cache dan Anda akan menjumpai file hasil kompresinya.
Selesai dengan pembuatan file kompresi template-nya di server slave, berikutnya masih ada sedikit langkah lanjutan yang dilakukan di server master.
- Login ke server master sampai setara root.
- Beranjaklah ke lokasi /vz/template/cache.
- Buatlah file kosong bernama centos-5.6-x86-cpanel-ovz.tar.gz menggunakan perintah touch centos-5.6-x86-cpanel-ovz.tar.gz.
Jika Anda perhatikan antara server master dan slave memilki struktur direktori yang sama, yaitu /vz/template/cache. Perbedaan yang paling kentara adalah semua file di dalam /vz/template/cache di server master berukuran 0, sedangkan yang di server slave tidak. Jadi, kenapa harus ada 2 lokasi yang sama? Kenapa yang di di server master hanya berisi kumpulan file kosong?
Pembuatan file kosong sesuai dengan nama file kompresi template [dalam hal ini centos-5.6-x86-cpanel-ovz.tar.gz] ditujukan agar panel SolusVM dapat mengenali adanya template centos-5.6-x86-cpanel-ovz.tar.gz yang nantinya merujuk ke server slave.
Pembuatan Paket VPS
Setelah menempuh semua tahapan di atas, kini tiba waktunya untuk mengunjungi panel SolusVM Anda yang bersemayam di server master. Jika di tahapan sebelumnya Anda hanya berhadapan dengan layar kelam akan shell, maka kali ini mata Anda akan dimanjakan dengan kombinasi warna sederhana nan apik panel SolusVM melalui jendela browser.
- Gunakan sembarang browser kegemaran, lalu akseslah panel SolusVM utama dengan format URL http://1.2.3.4:5353/admincp/login.php, dimana 1.2.3.4 adalah IP address server yang difungsikan sebagai server master. Lakukan validasi akunnya dengan cara mengisikan username dan password-nya, lalu klik tombol Login.
- Sampai di menu utama SolusVM, arahkan pointer ke menu Media, pilih submenu Add Template dan klik opsi OpenVZ.
- Tidak berselang lama formulir Add OpenVZ Template akan muncul. Isikanlah sembarang nama paket di bagian Name, misalnya centos-5.6-x86-cpanel-ovz. Tuliskan deskripsi singkat tengtang paket yang akan dibuat di bagian Description, misalnya CentOS 5.6 64bit dan cPanel 11.30.X.
- Melalui dropdown menu Template, cari dan pilihlah opsi centos-5.6-x86-cpanel-ovz.tar.gz yang mewakili template VPS yang sebelumnya telah dibuat. Pastikan opsi x86_64 sudah terpilih di bagian Arch yang mewakili arsitektur sistem operasinya.
- Simpan konfigurasi paketnya dengan mengklik tombol Add Template dan paket barupun sudah siap digunakan.
Uji Coba Template
Perjalanan panjang telah ditempuh, kini tiba saatnya untuk menuai hasilnya dengan cara membuat sebuah akun VPS baru menggunakan paket VPS yang telah dibuat. :)
- Masih dari panel utama SolusVM, arahkan pointer ke menu Virtual Servers dan pilih opsi Add Virtual Server.
- Anda akan diminta memilih jenis virtualisasi yang akan dipakai di Add Virtual Server. Pilihlah opsi OpenVZ.
- Langkah berikutnya adalah menentukan nama server slave [Node] untuk penempatan akun VPS dan besaran kapasitas [Plan] akun VPS-nya.
- Terakhir adalah konfigurasi profil klien akun VPS. Pilihlah identitas klien di dropdown menu Client, isikan hostname akun VPS yang akan dibuat di bagian Hostname, pilih centos-5.6-x86-cpanel-ovz sebagai template di Operating System dan alokasikan IP address-nya.
- Picu pembuatan akun VPS berdasarkan konfigurasi yang telah ditentukan dengan mengklik tombol Create Virtual Server. Tidak berselang lama akan muncul detil informasi akun root dan konsol serta kata sandinya.
Masih dari jendela browser, akseslah format URL http://1.4.1.2:2086 [dimana 1.4.1.2 adalah IP address akun VPS yang baru saja dibuat]. Niscaya tampilan boks login WHM dari cPanel akan muncul sekaligus menandakan bahwa template berfungsi dengan baik.