
Mongrel dan mongrel_cluster adalah salah satu dari sekian aplikasi yang bisa digunakan untuk menjalankan aplikasi berbasiskan rails. Sedikit lebih rumit bila dibandingkan dengan thin atau mod_rails, tapi ini adalah salah satu cara yang paling ‘original’ untuk menjalankan aplikasi rails.
Silakan lakukan instalasi ruby and rails di Ubuntu Hardy Anda, seperti yang sudah saya tuliskan caranya di artikel sebelumnya, Instalasi Ruby on Rail di Ubuntu Hardy.
Instalasi Mongrel
Mongrel bisa dengan mudah diinstal menggunakan rubygems.
sudo gem install mongrel
Menjalankan dan Mematikan Mongrel
Untuk menjalankan mongrel, Anda harus berada di direktori instalasi aplikasi rails.
mongrel_rails start -e production -p 5000
Perintah di atas, akan menjalankan mongrel di port 5000. Karena kita tidak menambahkan opsi -d, mongrel akan dijalankan di foreground. Dan terminal harus tetap terbuka agar aplikasi tidak berhenti dijalankan. Untuk menghentikan mongrel, Anda tinggal tekan control c.
Untuk menjalankan mongrel di background jalankan perintah seperti di bawah ini. Sebagai informasi tambahan, -e production adalah untuk memilih environtment rails yang akan digunakan.
mongrel_rails start -e production -p 5000 -d
Dan untuk mematikan mongrel, lagi-lagi Anda harus ada di direktori instalasi aplikasi rails, lalu jalankan perintah berikut
mongrel_rails stop
Menjalankan aplikasi rails meggunakan mongrel sangat mudah. Tapi akan tidak efisien jika Anda memiliki banyak aplikasi rails yang ingin dijalankan. Solusi untuk masalah ini adalah mongrel_cluster.
Instalasi Mongrel Cluster
Sama seperti mongrel, mongrel_cluster juga bisa kita instal dengan mudah menggunakan rubygems
sudo gem install mongrel_cluster
Mengkonfigurasi Mongrel Cluster
Untuk menjalankan 2 buah cluster mongrel
mongrel_rails cluster::configure -e production -p 8000 -N 2 -c /opt/aplikasi/test -a 127.0.0.1
Di contoh di atas, aplikasi cluster di jalankan sebanyak 2 buah, mulai dari port 8000, serta listen hanya di ip 127.0.0.1.
Untuk melihat opsi lain yang bisa Anda terapkan, jalankan perintah berikut
mongrel_rails cluster::configure -h
Kembali ke konfigurasi di atas, perintah itu akan membuat berkas konfigurasi baru. Seperti yang tertulis saat perintah dijalankan.
Writing configuration file to config/mongrel_cluster.yml.
Sekarang mari kita lihat berkas konfigurasi tersebut. Isinya kira-kira seperti di bawah ini.
cwd: /opt/aplikasi/test log_file: log/mongrel.log port: "8000" environment: production address: 127.0.0.1 pid_file: tmp/pids/mongrel.pid servers: 2
Anda bisa menyunting berkas tersebut untuk mengganti beberapa parameter yang Anda inginkan.
Menjalankan dan Mematikan Mongrel Cluster
Untuk menjalankan cluster
mongrel_rails cluster::start
Untuk merestart
mongrel_rails cluster::restart
Dan untuk mematikan cluster
mongrel_rails cluster::stop
Membuat Skrip Init untuk Mongrel Cluster
Pertama buat dulu folder tempat menyimpan konfigurasi cluster
sudo mkdir /etc/mongrel_cluster
Setelah itu, buat simbolik link konfigurasi aplikasi rails ke direktori yang sudah kita buat sebelumnya
sudo ln -s /opt/aplikasi/test/config/mongrel_cluster.yml /etc/mongrel_cluster/testapp.yml
Skrip init bisa kita salin dari instalasi mongrel_cluster
sudo cp /usr/lib/ruby/gems/1.8/gems/mongrel_cluster-1.0.5/resources/mongrel_cluster /etc/init.d/
Pastikan skrip menggunakan mode yang tepat, bisa dieksekusi
sudo chmod +x /etc/init.d/mongrel_cluster
Pastikan skrip dijalankan secara otomatis di run level defaults
sudo /usr/sbin/update-rc.d -f mongrel_cluster defaults
Mengadministrasi Cluster
Melihat status cluster
sudo mongrel_cluster_ctl status
Start, Stop, Restart cluster
sudo mongrel_cluster_ctl start ... sudo mongrel_cluster_ctl stop ... sudo mongrel_cluster_ctl restart
Rangkuman
Artikel yang lumayan panjang, tapi mudah-mudahan tidak membuat Anda tambah pusing. Prinsipnya menjalankan aplikasi rails menggunakan mongrel sebetulnya tidak susah, hanya saja ketika Anda diharuskan membuat skrip init, prosesnya lebih rumit bila dibanding dengan mod_rails atau thin.
Proses mengkonfigurasi apache, lighttpd atau nginx yang diproxy ke mongrel atau mongrel cluster akan dibahas dalam tulisan terpisah.
Ruby on Rails di Ubuntu Hardy
- Instalasi Ruby on Rails di Ubuntu Hardy
- Instalasi Thin untuk Ruby on Rails di Ubuntu Hardy
- Instalasi Passenger (mod_rails) di Ubuntu Hardy
- Instalasi Mongrel dan Mongrel Cluster di Ubuntu Hardy





