Setelah melakukan instalasi Ubuntu Server 12.04, kali ini kita akan melakukan konfigurasi High availability Linux Apache MySQl PHP Server atau yang biasa dikenal dengan LAMP Server. LAMP adalah istilah yang merupakan singkatan dari Linux, Apache HTTP Server, MySQL dan Perl/PHP/Phyton. LAMP merupakan paket perangkat lunak bebas yang digunakan untuk menjalankan sebuah aplikasi secara lengkap. Secara prinsip dan umumnya sebagai webserver.
Kombinasi yang pasti dari perangkat lunak yang disertakan dalam paket LAMP dapat bervariasi, terutama berkenaan dengan perangkat lunak scripting web, seperti PHP dapat diganti atau dilengkapi dengan Perl dan / atau Phyton. Istilah serupa dengan dasar perangkat lunak yang sama (AMP) berjalan pada sistem operasi lainnya, seperti Microsoft Windows (WAMP), Mac OS (MAMP), Solaris (SAMP), iSeries (iAMP), atau OpenBSD (OAMP).
Meskipun penulis asli dari program ini tidak merancang mereka semua untuk bekerja secara khusus dengan satu sama lain. Kombinasi perangkat lunak ini menjadi populer karena bebas dari biaya, –sifatnya open source, dan karena itu mudah beradaptasi, dan karena di mana-mana komponennya yang dibundel dengan distribusi Linux terbaru.
Komponen-komponen dari LAMP diantaranya:
- Linux sebagai sistem operasi
- Apache HTTP Server sebagai web server
- MySQL sebagai sistem basis data
- Perl atau PHP atau Pyton sebagai bahasa pemrograman yang dipakai
Pada tulisan ini kita akan mempelajari bagaimana me-konfigurasi sebuah server High availability dengan Linux, Apache, MySQL, and PHP (LAMP). Sehingga ketika ada salah satu server dalam (cluster) yang menjadi tidak aktif, service A(pache) M(ySQL) P(HP) akan diberikan oleh cluster yang kita miliki sehingga service AMP akan tetap tersedia. Sebelum memulai, ada baiknya membaca bagaimana konfigurasi/instalasi sebuah LAMP Server pada beberapa link berikut:
http://www.howtoforge.com/ubuntu_lamp_for_newbies
https://help.ubuntu.com/community/ApacheMySQLPHP
Persiapan konfigurasi.
Konfigurasi sistem high availability yang akan kita bangun secara umum akan tersusun sebagai berikut:
- Operating System:
Sesuai judulnya, tentu saja Ubuntu Server Precise Pangolin (12.04 LTS). - LAMP Server 1:
hostname: node1.excellent.co.id
IP Address LAN: 10.10.1.101
IP Address private (untuk drbd): 126.10.1.1 - LAMP Server 2:
hostname: node2.excellent.co.id
IP Address: 10.10.1.102
IP Address private (untuk drbd): 126.10.1.2
LAMP Server Virtual IP Address: 10.10.1.10 - Sebuah konfigurasi Distributed Replicated Block Device (DRBD) yang akan melakukan mirror /srv/data antara node1 and node2
Untuk memulai, siapkan dua unit PC dan install server Ubuntu 12.04 (Precise Pangolin). Dalam simulasi ini, kita melakukan konfigurasi dalam lingkungan virtual dengan proxmox. Hal ini mempermudah kita ketika ingin menambah Harddisk atau LAN Card.
Kapasitas harddisk yang saya gunakan sebesar 250GB masing-masing server 1 buah, dengan skema partisi seperti berikut:
/dev/sda1 — 100 MB — /boot (primary)
/dev/sda2 — 50 GB — Partisi LVM
/dev/sda3 – 198GB — untuk drbd
Tentu saja kita bisa menggunakan dua buah harddisk dengan memisahkan antara harddisk yang digunakan oleh sistem dan data yang akan dibuat mirror. Misalkan kita memiliki duah buah harddisk 250 GB & 2 TB, kita bisa menempatkan OS pada harddisk yang 250 GB dan data pada Harddisk yang 2 TB. Semua bisa disesuaikan dengan kebutuhan.
Setelah selesai dua buah installasi minimal Ubuntu server, lakukan update sistem & matikan apparmor. Kenapa kita lakukan ini? Karena terkadang saya pribadi suka lupa saat tidak bisa akses server karena apparmor sedang aktif. Namun jangan takut, karena kita bisa aktifkan lagi nanti.
sudo apt-get update sudo apt-get upgrade sudo service apparmor teardown sudo update-rc.d -f apparmor remove
Dilanjutkan ke bagian kedua.