Linux : Cara Install Varnish, Nginx, PHP-FPM, dan MySQL di Ubuntu 12.10


  Install Varnish, Nginx, PHP-FPM, dan MySQL di Ubuntu 12.10

Selamat hari minggu bro,oke kali ini saya akan mengshared tutorial tentang cara install varnish di gabungkan bersama nginx dan kawan-kawanya. sebelumnya saya melihat tutorial ini di forum-forum tetangga ada yang bilang katanya jika nginx di gabungkan dengan varnish akan menjadi webserver yang powerfull,dan akhirnya saya pun mencoba alhasilnya work bekerja di webserver saya. oke langgsung saja

Nginx adalah web server yang high-performance dan varnish itu sebagai http accelerator, jadi varnish+nginx akan menghasilkan sebuah web server yang high performance.

Langkah-langkah menginstallnya,disini saya menggunakan ubuntu server 12.10

  • Step 1

Install Mysql Server Login di server anda ketik perintah ini :

apt-get install mysql-server mysql-client

tunggu proses,dan masukan password mysql yang anda mau

  • Step 2

Install Nginx Web Server Ketik perintah ini :

apt-get install nginx

Tunggu sampai finish,dan aktif kan nginx nya :

/etc/init.d/nginx start

Jika sudah di jalakan nginx nya di coba dengan membuka http://localhost atau http://domainanda

  • Step 3

Install PHP5 (PHP-FPM), modul PHP, dan APC (php cache) ketik perintah ini :

apt-get install php5-fpm php5-mysql php5-curl php5-gd php5-intl php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl

Tunggu sampai finish

  • Step 4

Konfigurasi VirtualHost dan Port di Nginx jadi nantinya varnish sebagai frontend dan nginx sebagai beckend web servernya, makan perlu di edit virtualhostnya. Disini saya mengedit virtualhost default dan untuk virtual host lainnya itu sama. ketik perintah :

nano /etc/nginx/sites-available/default

Contoh konfigurasinya:

server {
        listen   127.0.0.1:8080; ## listen for ipv4; this line is default and implied
        #listen   [::]:80 default ipv6only=on; ## listen for ipv6

        root /usr/share/nginx/www;
        index index.html index.htm index.php;

        # Make site accessible from http://localhost/
        server_name localhost;

        location / {
                # First attempt to serve request as file, then
                # as directory, then fall back to index.html
                try_files $uri $uri/ /index.html;
                # Uncomment to enable naxsi on this location
                # include /etc/nginx/naxsi.rules
        }

        location /doc/ {
                alias /usr/share/doc/;
                autoindex on;
                allow 127.0.0.1;
                deny all;
        }

        location ~ \.php$ {
                fastcgi_split_path_info ^(.+\.php)(/.+)$;
        #       # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
        #
        #       # With php5-cgi alone:
                fastcgi_pass 127.0.0.1:9000;
        #       # With php5-fpm:
        #       fastcgi_pass unix:/var/run/php5-fpm.sock;
                fastcgi_index index.php;
                include fastcgi_params;
        }

        # deny access to .htaccess files, if Apache's document root
        # concurs with nginx's one
        #
        location ~ /\.ht {
               deny all;
        }
}

Disitu nginx listen di localhost dan port 8080, artinya user dari luar tidak bisa mangakses server kita dgn port 8080, misal http://domainkita:8080/ dan direktory webnya berada di /ush/share/nginx/www/. Kemudian kita restart service nya:

/etc/init.d/php5-fpm restart
/etc/init.d/nginx restart
  • Step 5

Install Varnish dan konfigurasi port ketik ini untuk menginstall varnish:

apt-get install varnish

Secara default setelah menginstall varnish, service langsung aktif dan listen di port 6081, namun vanishnya akan dijadikan frontend web server, maka perlu diubah portnya agar listen di port 80 ketik perintah ini :

nano /etc/default/varnish

konfigurasinya seperti ini :

DAEMON_OPTS="-a :80 \
             -T localhost:6082 \
             -f /etc/varnish/default.vcl \
             -S /etc/varnish/secret \
             -s malloc,256m"

Jika kamu setting nginx nya bukan diport 8080, maka perlu disesuaikan port beckend web servernya sgn mengedit file /etc/varnish/default.vcl Kemudian kita restart service varnishnya :

/etc/init.d/varnish restart

oke selesai menginstall Varnish, Nginx, PHP-FPM, dan MySQL di Ubuntu 12.10

Contoh webserver saya : ns1.fahmi.my.id

Sumber 

Fahmi

We’re still Pioneers, We Barely Begun. Our Greatest Accomplishments cannot be behind us, cause our destiny lies above us.

14 Comments

  • parka the north face
    November 18, 2013 at 9:18 pm

    Hey there would you mind shasring which blog platform you’re working
    with? I’m planning to start my own blog soon but I’m having a difficult time selecting between BlogEngine/Wordpress/B2evolution and Drupal.
    The reason I ask is because your design seems different then most
    blogs and I’m looking for something unique. P.S Sorry for gettiong off-topic
    but I had to ask!

    • fahmi
      November 28, 2013 at 7:24 pm

      thanks in advance, here I use his platform wordpress. If you are interested in creating a personal blog, I can help her please contact to email webmaster@fahmi.my.id 🙂

  • boutique moncler
    November 28, 2013 at 12:34 pm

    Hi there! I just wish to give you a huge thumbs up for your excellent
    info you have got right here on this post. I’ll be
    coming back to your site for more soon.

    • fahmi
      November 28, 2013 at 7:29 pm

      Thank you for visiting my blog, if there is a message or suggestions please use the facility “pesan”. I really appreciate your comments and suggestions. 🙂

  • happy cam
    January 3, 2014 at 6:37 pm

    gan ane masih bingung ni, sesuai tutorial diatas work semua, cuman ane tes website di http://www.isvarnishworking.com/ (katanya untuk cek varnish) katanye varnish nya not work, ane nyoba punya ente fahmi.my.id juga gak work kate webnye.

    • Fahmi
      January 3, 2014 at 7:35 pm

      terimakasih happy cam sudah berkunjung, sebelumnya blog saya masih menggunakan shared di salah satu hosting di indonesia, saya membuat tutorial ini dan saya testing di server milik client saya. jika kamu sudah melakukan seperti diatas dan sudah yakin semua berjalan. untuk testing bisa melihat port varnish itu sendiri apakah listening atau tidak. jika listening seharusnya itu sudah berkerja dengan baik. jika ada trouble lagi bisa share disini sekaligus gambar (ss) nya. kalau menggunakan orang ke tiga untuk pengecekan work varnish atau tidak itu tidak maksimal 🙂

  • happy cam
    January 5, 2014 at 1:12 am

    kalo saya cek pake curl -I http://localhost di ssh hasilnya varnish gak work. kalo pek curl -I http://localhost:6081 varnish nya work. dimana letak salahnya ya

    • Fahmi
      January 5, 2014 at 9:20 am

      mungkin kesalahnya disini : Secara default setelah menginstall varnish, service langsung aktif dan listen di port 6081, namun vanish nya akan dijadikan frontend web server, maka perlu diubah portnya agar listen di port 80 “/etc/default/varnish”

      contoh seperti ini

      DAEMON_OPTS="-a :80 
                   -T localhost:6082 
                   -f /etc/varnish/default.vcl 
                   -S /etc/varnish/secret 
                   -s malloc,256m"
      

      jangan lupa abis di edit restart service varnish nya.

  • irgi
    February 4, 2015 at 12:10 am

    baru ajah di coba, tapi kayanya kaga ada prubahan yang sangat siknifikan yah 🙂
    mungkin kudu di gangbang rame2 kali baru brasa kali yah???

    • Fahmi
      February 4, 2015 at 12:54 am

      iya om, kalau untuk mempunyai client dengan visitor besar berasa perubahan nya.
      varnish ini cukup baik handle caching & nginx ini cukup baik handle concurent connection dan bisa reduce memory usage, ini kelebihannya
      kelemahannya high IO disk di busy server dan buat frezze memory kadang di heavy server.

      Lebih kece lagi kalau di experiment
      Apache => Varnish => Nginx => Client

      * agak besar dikit usage memory nya cuma speed lebih cepat.

  • Olive
    July 2, 2015 at 1:33 pm

    hallo .. saya kan pakai webuzo yah .. nah sudah ikutin tutor diatas cuma agak berbeda dari webuzo .. yang aneh varnish gk mau start ?

    “Unknown user(attempting to set param user to varnish)
    Unknown group(attempting to set param group to varnish) ”

    ini kenapa yah ?

    • Fahmi
      July 2, 2015 at 6:54 pm

      Terimakasih atas kunjungan nya bro 🙂

      Sebelum kita mencari tau masalahnya, apakah bro bisa paste logs nginx / webserver yang bro pakai.

  • desta
    January 13, 2016 at 1:33 am

    Bro, kalau pake ssl, default portnya harus 443 atau 80?
    Soalnya utk port 80 udah ane redirect ke ssl..

    • Fahmi
      February 5, 2016 at 6:06 pm

      Hi desta, disini kelemahan varnish yaitu tidak support protokol https/ssl. tapi kamu bisa akalin dengan cara seperti ini

      #cheers

Leave a Reply