Komunitas Cloud Indonesia

Membangun Server LAMP dengan Amazon EC2

Penulis :   |   July 6, 2012

Pada dasarnya Amazon EC2 adalah sebuah private server yang berdiri di atas infrastruktur cloud. Sebuah EC2 server pada biasa disebut sebagai EC2 instance. Seperti halnya layanan server umumnya, kita dapat melakukan instalasi software apapun yang kita butuhkan. Pada kesempatan kali ini, kita akan membuat sebuah server LAMP (Linux, Apache, MySQL, PHP) beserta akses FTP dan virtual host. Dengan demikian nantinya kita akan dapat memanfaatkan EC2 sebagai alternatif dari layanan VPS dan dedicated server.

Menyiapkan account AWS

Bila anda belum memiliki account AWS, silahkan melakukan registrasi terlebih dahulu.

Setelah registrasi anda akan mendapatkan fasilitas Free Usage Tier. Anda memperoleh layanan EC2 gratis untuk 750 jam sebulan untuk setahun. Hal ini memungkinkan anda untuk menjalankan sebuah EC2 micro instance selama satu tahun secara gratis. Micro instance memiliki spesifikasi memory sebesar 613 MB dan 2 ECU (short periodic bursts). Spesifikasi yang cukup untuk tahap development atau untuk website yang tidak terlalu ramai.

Membuat EC2 instance

Untuk membuat EC2 instance, kita menggunakan AWS Console.

Anda akan mendapatkan pilihan Classic Wizard dan Quick Launch Wizard. Saya pribadi lebih menyukai Classic Wizard karena kita bisa mendapatkan banyak pilihan konfigurasi.

Selanjutnya kita akan memilih AMI (Amazon Machine Image) yang akan kita gunakan. Untuk keperluan server LAMP, anda dapat menggunakan berbagai macam distro linux yang familiar dengan anda seperti ubuntu, redhat, fedora atau lainnya. Di sini saya akan gunakan AMI yang dibuat oleh Bitnami, yaitu LAMP Stack. Dengan menggunakan AMI ini pekerjaan kita akan menjadi lebih mudah, karena kita tidak perlu melakukan instalasi softwares-software yang kita butuhkan dan akan hanya membutuhkan sedikit konfigurasi.

Tekan tab Community AMIs.

Masukkan keyword bitnami lamp.

Pilih versi yang anda suka, kita bisa mencoba AMI ID: ami-02e0a450.

Pilih tipe Micro.

Tekan Continue karena kita tidak membutuhkan pengaturan Advance untuk saat ini.

Beri nama EC2 instance yang akan kita buat. Nama di sini berfungsi sebagai tanda pengenal yang akan mengingatkan kita akan kegunaan dari EC2 instance tersebut.

Untuk mengakses EC2 instance, dibutuhkan sepasang key. Kita dapat membuat key baru atau menggunakan key yang lama bila ada. Tekan Create a new Key Pair.

Masukkan nama key.

Tekan tombol Create & Download your Key Pair untuk mendownload key yang telah kita buat.

Selanjutnya adalah pengaturan akses port mana saja yang diperbolehkan. Kita membutuhkan akses SSH (port 22), HTTP (port 80), dan FTP (port 21).

Pada akhir wizard akan ditampilkan review dari EC2 instance yang akan kita buat. Tekan tombol Launch untuk membuat dan menjalankan EC2 instance.

Melakukan koneksi ke EC2 instance.

Setelah EC2 instance selesai dibuat, kita perlu mengetahui Public DNS dari EC2 instance yang telah kita buat. Pada AWS Console, pilih EC2 instance yang telah kita buat. Pada bagian detail, perhatikan item Public DNS. Perlu diperhatikan bahwa Public DNS akan berubah setiap kali EC2 instance di-start ulang. Agar tidak berubah anda dapat menggunakan fasilitas Elastic IP yang berguna untuk meng-assign public IP address ke EC2 instance.

Untuk mencobanya silahkan masukkan alamat public DNS ke browser.

Mengakses menggunakan SSH

Sejauh ini kita telah memiliki:

  • Public DNS: ec2-54-251-10-148.ap-southeast-1.compute.amazonaws.com
  • File Key Pair: cibitnamilamp.pem

Bila anda menggunakan Linux atau OSX anda dapat menggunakan terminal. Untuk Windows anda dapat menggunakan Putty.

OSX/Linux

Buka terminal, pastikan anda telah masuk ke folder yang berisi file cibitnamilamp.pem. Kita perlu mengubah file permission untuk cibitnamilamp.pem ke 600, ketik:

chmod 600 cibitnamilamp.pem

Selanjutnya lakukan koneksi dengan SSH. Bitnami menggunakan user default bitnami, ketik:

ssh -i cibitnamilamp.pem [email protected]

Windows

Putty tidak bisa memanfaatkan file .pem secara langsung. Kita perlu mengkonversinya dengan tool bernama PuttyGen.

Buka PuttyGen, Load file .pem. Lalu Save private key untuk mengkonversi ke file .ppk.

Selanjutnya gunakan file .ppk yang telah dibuat untuk melakukan koneksi.

Ketika sudah terkoneksi, gunakan user bitnami ketika login.

Mengkonfigurasi FTP server

Kita perlu membuat password untuk user bitnami untuk keperluan login FTP, ketik:

sudo passwd bitnami

Selanjutnya merubah file konfigurasi vsftpd.

sudo nano /etc/vsftpd.conf

Tekan control-V beberapa kali untuk menuju baris terakhir.

Beri tanda # pada awal listen_address = 127.0.0.1, atau hapus baris ini, untuk mengijinkan koneksi dari luar.

Tekan control-X untuk melakukan penyimpanan.

Restart FTP server.

sudo restart vsftpd

Sekarang kita dapat melakukan koneksi FTP. Apabila anda mengalami masalah koneksi, anda bisa menggunakan mode Active.

  • Username: bitnami
  • Password: <password yang telah anda buat pada langkah sebelumnya>
  • Host: alamat Public DNS

Apache

Document root untuk akses web adalah /opt/bitnami/apache2/htdocs. Anda dapat menempatkan file-file untuk web di folder ini.

Untuk pengaturan konfigurasi Apache, ketik:

sudo nano /opt/bitnami/apache2/conf/httpd.conf

Untuk pengaturan virtual host:

sudo nano /opt/bitnami/apache2/conf/extra/httpd-vhosts.conf

Setelah melakukan perubahan file-file tersebut di atas, lakukan restart terhadap apache.

sudo /opt/bitnami/ctlscript.sh restart apache

PHP

Pada umumnya kita tidak perlu melakukan perubahan konfigurasi pada PHP. Namun bila anda membutuhkannya, anda dapat melakukan dengan perintah:

sudo nano /opt/bitnami/php/etc/php.ini

Jangan lupa melakukan restart apache setelah membuat perubahan.

PHPMyAdmin

Secara default bitnami tidak mengijinkan akses phpmyadmin selain dari localhost. Kita perlu melakukan membuka akses dari luar dan merubah password untuk root.

Ketik:

sudo nano /opt/bitnami/apps/phpmyadmin/conf/phpmyadmin.conf

Ubah bagian

Allow from 127.0.0.1

menjadi

Allow from all

Lalu restart apache.

sudo /opt/bitnami/ctlscript.sh restart apache

Sekarang PHPMyAdmin sudah siap digunakan. Buka browser:

http://ec2-54-251-10-148.ap-southeast-1.compute.amazonaws.com/phpmyadmin/

User: root

Password: bitnami

Untuk merubah password mysql root:

sudo mysqladmin -p password

Setelah anda merubah password tersebut, otomatis password untuk phpmyadmin juga telah berubah.

Untuk meng-assign nama domain, anda harus melakukan perubahan pada DNS entry di domain name control panel. Gunakan record type CNAME apabila anda menggunakan public DNS, atau record type A apabila EC2 instance anda memiliki IP address (dari layanan Elastic IP).

Saat ini FTP, Apache, PHP, MySQL dan PHPMyAdmin telah terkonfigurasi dengan baik dan anda sudah dapat memanfaatkan layanan Amazon EC2 sebagai alternatif dari VPS untuk keperluan web hosting.

Apa yang telah kita bahas di sini adalah sebagian kecil dari banyak manfaat yang dapat kita ambil dari infrastruktur AWS. Di kesempatan lain kita akan membahas ELB (Elastic Load Balancing) dan auto scale yang memungkinkan penambahan dan pengurangan kapasitas secara otomatis berdasarkan kebutuhan resource.

    Tidak ditemukan artikel yang terkait

Penulis :

Dody Rachmat Wicaksono adalah seorang freelance web dan mobile app developer di Surabaya. Memiliki antusias dalam hal sejarah manusia (ibn Katsir) dan software engineering, termasuk di dalamnya agile development (kanban), programming (PHP, JS, RoR, XCode, Titanium), dan cloud services.

Komentar

7 thoughts on “Membangun Server LAMP dengan Amazon EC2
  1. dodyrw Post author

    Iya registrasi harus pake cc. Tapi free tier -nya lebih dari cukup untuk ngoprek selama setahun. Bahkan bisa simulasi beberapa EC2 instance sekaligus secara gratis, asal pemakaian total sebulan gak lebih dari 750 jam (stop aja instance nya).

    Reply
  2. Sasongko

    Itu registrasinya kok rumit ya??
    Pake diteleponin segala…

    Reply
    1. dodyrw Post author

      kalo gak salah telpnya otomatis kok, jadi mesin yg bicara .. kalo gak salah nanti kita dikasih kode..
      sori agak2 lupa, karena acc. saya udah setahun lebih

      Reply
  3. Nuhajat

    Salam kenal;

    Sekedar sharing,

    saya tidak punya kartu kredit namun kita tetap bisa daftar menggunakan Virtual Card Number (VCN) .

    saya sudah dua kali berhasil daftar menggunakan VCN tersebut. berikut contoh reply sms banking BNI:

    BNI SMS BANKING:08/10/2014 17:04 Req VCN telah berhasil. No.VCN:5264158496951951,CVC2:290,Valid Thru:10/16. Ref: 23758479

    http://www.bni.co.id/id-id/bnipromo/newsletter/belanjaonlinedenganbnidebitonline/faqbnidebitonline.aspx

    http://www.bni.co.id/id-id/bnipromo/newsletter/belanjaonlinedenganbnidebitonline.aspx

    Dengan Modal 20rb kita sudah bisa ngoprek selama satu tahun 😀

     

    Reply
  4. jose

    om nanya dong,

    kalo nanti instance ini saya mau install SSL ribet ga yah ?

     

    rencana mau migrasi ke sana web kantor.

    dan untuk handle emailnya gmn yah.

     

    karena selama ini pake whm di vps lokal.

    terima kasih

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *