Makalah ini membahas tentang GlusterFS, yaitu clustered file system open source yang dapat digunakan untuk membuat media penyimpanan terdistribusi. Secara ringkas ditunjukkan bagaimana menginstal dan mengkonfigurasi GlusterFS pada server dan client untuk mendistribusikan ruang penyimpanan antara dua server."
Media penyimpanan-terdistribusi-degan-glusterfs-pada-debian-squeeze
1. MEMBUAT MEDIA PENYIMPANAN TERDISTRIBUSI
MENGGUNAKAN GLUSTERFS
PADA DEBIAN SQUEEZE
Disusun oleh:
SUYADI
L200100015
UNIVERSITAS MUHAMMADIYAH SURAKARTA
FAKULTAS KOMUNIKASI DAN INFORMATIKA
JURUSAN INFORMATIKA
2011
2. MEMBUAT MEDIA PENYIMPANAN TERDISTRIBUSI
MENGGUNAKAN GLUSTERFS
PADA DEBIAN SQUEEZE
A. PENDAHULUAN
1. Latar Belakang
Memiliki alamat e-mail pada saat ini merupakan keharusan, apalagi bagi
mereka yang berstatus pegawai dan mahasiswa. Aktivitas terkait dengan e-mail
seperti membaca dan membalas pesan elektronik ini sudah menjadi kegiatan rutin
(Ahira, 2010).
Di internet banyak penyedia layanan e-mail gratis seperti Yahoo dan
Gmail. Gmail merupakan webmail gratis yang diluncurkan oleh Google pada 1
April 2004 dan menjelma menjadi layanan e-mail yang sangat populer. Pada akhir
tahun 2010 pengguna Gmail mencapai lebih dari 190 juta. Gmail menyediakan 7
GB ruang penyimpanan bagi setiap pengguna, jika dikalikan dengan jumlah
pengguna, jumlahnya lebih dari 1,3 milyar gigabyte atau 1.300 petabyte.
Bagaimana membuat sebuah ruang penyimpanan tunggal sebesar itu ?
Jawabannya adalah dengan teknologi cloud computing.
Menurut Ed Lenta (2011) arsitektur hybrid cloud menawarkan keuntungan
yang signifikan bagi kalangan enterprise dan menyediakan kesempatan perubahan
di dunia enterprise dalam menggunakan dan memproduksi layanan berbasis TI.
Dengan implementasi private atau public cloud efisiensi biaya dapat terukur
secara pasti sehingga memungkinkan perusahaan dapat mengukur produktifitas
dan kinerja menuju perbaikan yang berkesinambungan.
Salah satu komponen penting dalam cloud computing adalah clustered file
system. Banyak perangkat lunak clustering yang beredar di pasaran, di antaranya
adalah GlusterFS. Pada situs resminya (http://www.gluster.com/) disebutkan
bahwa GlusterFS adalah “The Fastest Path to Public and Private Cloud Storage”.
2
3. 2. Rumusan Masalah
Berpijak dari pemaparan di atas dirumuskan permasalahan sebagai
berikut:
1) Apa GlusterFS itu ?
2) Bagaimana meng-install dan mengkonfigurasi GlusterFS sebagai media
penyimpanan terdistribusi (teknik clustering sederhana)?
3. Tujuan Penulisan
Makalah ini disusun untuk memperkenalkan GlusterFS sebagai clustered
File System yang mudah digunakan dan penerapannya sebagai media
penyimpanan terdistribusi sederhana.
4. Tahapan Penulisan
Tahap pertama, penulis mengumpulkan dokumen-dokumen dari internet
yang berhubungan dengan clustering dan GlusterFS.
Tahap kedua, penulis melakukan eksperimen menggunakan komputer
virtual. Software yang digunakan adalah VirtualBox.
Tahap ketiga, penulis membuat catatan proses-proses yang terjadi dalam
eksperimen yang digunakan sebagai bahan menulis karya tulis.
3
4. B. PEMBAHASAN
1. Mengenal GlusterFS
GlusterFS adalah clustered file system yang bersifat open source yang
dapat beroperasi dengan kapasitas petabyte dan menangani ribuan client.
GlusterFS menggabungkan disk, memori dan pengolahan data dari beberapa
modul server dalam sebuah ruang tunggal. GlusterFS didesain untuk memenuhi
kebutuhan ruang penyimpanan bagi pengguna dan dapat memberikan kinerja yang
luar biasa untuk beban kerja yang beragam.
Arsitektur GlusterFS bersifat modular yang memungkinkan administrator
menambah atau mengurangi modul server sesuai dengan kebutuhan pengguna.
Sebagai contoh, administrator dapat mengkonfigurasi sistem server mandiri
dengan cepat menggunakan GlusterFS dan kemudian mengembangkan sistem
sebagai kebutuhan tumbuh.
GlusterFS versi 3.2 memiliki kemampuan mengatur quota penggunaan
ruang disk dengan direktori atau volume. Administrator dapat mengendalikan
pemanfaatan ruang disk pada tingkat direktori dan/atau volume dengan
menetapkan batas-batas untuk ruang disk dialokasikan di setiap tingkat dalam
volume dan hirarki direktori.
GlusterFS dirancang untuk komputasi awan dengan performa tinggi.
Tidak seperti pusat data tradisional, lingkungan awan membutuhkan multi-sewa
bersama dengan kemampuan untuk tumbuh atau menyusut sumber daya sesuai
permintaan.
4
5. Gambar 1: Komputasi awan menggunakan GlusterFS
GlusterFS di bawah lisensi GNU Affero General Public License. GNU
Affero General Public License adalah bebas (free), pengguna dapat menggunakan
GlusterFS secara resmi tanpa harus mengeluarkan uang untuk membeli lisensi.
2. Instalasi dan Konfigurasi GlusterFS sebagai Media Penyimpanan
Terdistribusi (Teknik Clustering Sederhana)
GlusterFS dapat didesain dalam beberapa mode. Mode yang umum
dipakai adalah sebagai berikut :
• Distributed - File-file didistribusikan dalam cluster
• Distributed Replicated – Replikasi data di antara dua simpul (node) dalam
cluster.
• Distributed Striped - Memecah file di antara simpul-simpul dalam cluster,
biasanya digunakan untuk mengakses file yang sangat besar.
5
6. Tulisan ini hanya akan membahas model distributed sederhana. Model ini
dapat diterapkan di kampus misalnya pada aplikasi e-mail. Misalnya di UMS
terdapat 15 ribu mahasiswa, masing-masing mahasiswa memiliki e-mail dengan
kapasitas 1 GB, maka perlu disediakan 15 terrabyte ruang penyimpanan atau
butuh 10 buah server dengan kapasitas penyimpanan masing-masing 1.5 TB yang
dikonfigurasi secara terdistribusi.
Sebagai bahan observasi, kita siapkan dua buah komputer virtual sebagai
simpul server dan sebuah komputer sebagai client. Hasilnya diharapkan dapat
dijadikan permodelan dalam pengembangan mail server di UMS. Sistem operasi
yang digunakan Debian Squeeze (Debian versi 6.0). Masing-masing simpul
menyediakan 4.6 GB kapasisitas disk yang akan digunakan untuk
mendistribusikan file-file dalam cluster, sehingga kapasitasnya bisa ditingkatkan
menjadi dua kali lipat (9.2 GB) dan dapat ditingkatkan lagi dengan mudah di
waktu mendatang dengan menambah simpul baru.
a. Kebutuhan Sistem
Kebutuhan sistem minimum untuk produksi yang dijalankan dalam sistem
yang sesungguhnya :
• Perangkat keras: Intel/AMD x86 64-bit processor , memori 1 GB, hardisk
8 GB, Gigabit Ethernet.
• Sistem operasi: Linux Debian 5.0 arsitektur x86_64 atau RHEL 5.1 atau
Ubuntu 8.04 atau CentOS 5.1 atau distribusi linux yang lain.
• Sistem file: ext3, ext4, atau sistem file POSIX compliant yang lain. Untuk
mendukung file dengan ukuran yang sangat besar GlusterFS
merekomendasikan XFS File System.
6
7. b. Proses Instalasi GlusterFS pada Server dan Client
Anggap pada semua komputer telah terpasang Debian Squeeze Business
Card Edition. Komputer-komputer tersebut kita set sebagai :
• svr1: IP address 192.168.56.11 (server)
• svr2: IP address 192.168.56.12 (server)
• client: IP address 192.168.56.2 (client)
Kita akan memasang GlusterFS pada masing-masing komputer (svr1, svr2
dan client) dari source code (kode sumbernya) dengan langkah-langkah sebagai
berikut :
1) Login ke server dengan user root.
2) Install paket-paket yang dibutuhkan dengan mengetikkan perintah :
# aptget install sshfs buildessential flex bison
3) Unduh source code dari http://www.gluster.org/download/. Nama file yang
diunduh glusterfs-3.2.0.tar.gz
4) Bongkar source code dengan perintah :
# tar zxvf glusterfs3.2.0.tar.gz
5) Pindah ke direktori glusterfs-3.2.0 dengan perintah :
# cd glusterfs3.2.0
6) Jalankan program konfigurasi dengan perintah :
# ./configure
GlusterFS configure summary
===========================
FUSE client : yes
Infiniband verbs : yes
epoll IO multiplex : yes
argpstandalone : no
fusermount : no
readline : yes
Rangkuman konfigurasi di atas menunjukkan komponen-komponen yang
akan kita pasang bersama dengan GlusterFS.
7
8. 7) Build dan install GlusterFS dengan perintah :
# make && make install
8) Lakukan verifikasi versi yang terpasang dengan perintah :
# glusterfs –version
c. Menjalankan GlusterFS pada Server
GlusterFS server berjalan sebagai servis. Untuk menjalankan servis
jalankan daemon-nya dengan perintah :
# /etc/init.d/glusterd start
Untuk menghentikan, servis jalankan perintah :
# /etc/init.d/glusterd stop
Untuk melihat status, jalankan perintah :
# /etc/init.d/glusterd status
Untuk menjalankan GlusterFS secara otomatis ketika server dinyalakan, jalankan
perintah :
# updaterc.d glusterd defaults
d. Membuat Volume
Level tertinggi dalam hierarki GlusterFS adalah volume. Volume inilah
nantinya yang akan dibaca oleh client sebagai media penyimpanan tunggal.
Volume terdistribusi merupakan gabungan media penyimpanan dua node atau
lebih dengan menjumlah kapasitas menjadi sebuah media peyimpanan tunggal
dengan kapasitas besar yang nantinya diakses oleh pengguna pada sisi client.
Sebelum membuat volume, terlebih dahulu dibuat trusted storage pool.
Langkah-langkahnya sebagai berikut :
1) Login ke svr1 dengan user root.
2) Untuk menambahkan sebuah server ke dalam pool misalnya: svr2 dengan
IP address 192.168.56.12, jalankan perintah :
# gluster peer probe 192.168.56.12
8
9. Catatan: tidak perlu melakukan probe untuk localhost (svr1).
3) Verifikasi status peer dari svr1, dengan perintah :
#gluster peer status
Jika muncul pesan seperti berikut, berarti svr2 telah masuk dalam pool dan
siap ditambahkan dalam volume.
Number of Peers: 2
Hostname: 192.168.56.12
Uuid: 5e987bda16dd43c2835b08b7d55e94e5
State: Peer in Cluster (Connected)
Langkah berikutnya adalah membuat volume. Kita akan memasukkan
direktori /export pada svr1 dan svr2.
1) Membuat volume, syntax-nya :
# gluster volume create NEWVOLNAME [transport tcp |
rdma | tcp,rdma] NEWBRICK..
Dalam percobaa ini, kita jalankan perintah :
# gluster volume create test-volume transport tcp 192.168.56.11:/export
192.168.56.12:/export
2) Kita dapat menampilkan informasi volume yang kita buat, dengan
perintah:
# gluster volume info
Volume Name: testvolume
Type: Distribute
Status: Created
Number of Bricks: 2
Transporttype: tcp
Bricks:
Brick1: 192.168.56.11:/export
Brick2: 192.168.56.12:/export
9
10. 3) Untuk mengaktifkan volume, jalankan perintah :
# gluster volume start testvolume
Starting volume testvolume has been successful
e. Menjalankan GlusterFS pada Client
GlusterFS mengijinkan beberapa jalan bagi pengguna mengakses volume
dalam cluster, di antaranya adalah :
• Gluster Native Client – Metode ini menyediakan konkurensi dan
performasi yang tinggi.
• NFS (Network File System) – Metode ini yang paling simpel yang
menggunakan protokol file server yang umum digunakan pada Linux.
• CIFS (Common Internet File System) – Metode ini digunakan untuk
mengakses volume menggunakan Miscrosoft Windows seperti klien
SAMBA.
Untuk mengakses volume dengan Gluster Native Client secara manual :
• Untuk mengakses volume (kita gunakan port default), gunakan perintah :
# mount t glusterfs HOSTNAMEORIPADDRESS:/VOLNAME
MOUNTDIR
Contoh:
# mount t glusterfs 192.168.56.11:/testvolume
/mnt/glusterfs
• Untuk mengakses volume dengan port yang berbeda, gunakan perintah :
# mount t glusterfs HOSTNAMEOR
IPADDRESS:PORT:/VOLNAME MOUNTDIR
Contoh:
# mount t glusterfs 192.168.56.11:7997:/test
volume /mnt/glusterfs
10
11. Untuk mengakses volume dengan Gluster Native Client otomatis ketika komputer
dijalankan :
• Untuk mengakses volume pada port default, edit file /etc/fstab dan
tambahkan baris seperti berikut :
HOSTNAMEORIPADDRESS:/VOLNAME MOUNTDIR glusterfs
defaults,_netdev 0 0
Contoh:
192.168.56.11:/testvolume /mnt glusterfs
defaults,_netdev 0 0
• Untuk mengakses volume pada port selain default, edit file /etc/fstab
dan tambahkan baris seperti berikut :
HOSTNAMEORIPADDRESS:PORT:/VOLNAME MOUNTDIR glusterfs
defaults,_netdev 0 0
Contoh:
192.168.56.11:7997:/testvolume /mnt glusterfs
defaults,_netdev 0 0
Gambar 2: Client GlusterFs
11
12. Pada Gambar 2 terlihat bahwa setelah volume GlusterFs ditambahkan pada client,
client mendapatkan tambahan ruang penyimpanan sebesar 9,2 GB pada
direktori /mnt.
Untuk mengakses volume dengan NFS Client secara manual :
Sebelum mengakses volume dengan NFS harus dipasang paket nfs-common
dengan perintah :
# aptget install nfscommon
Untuk mengakses sebuah volume (dengan asumsi menggunakan port dafault),
jalankan perintah :
# mount t nfs HOSTNAMEORIPADDRESS:/VOLNAME MOUNTDIR
Contoh:
# mount t nfs 192.168.56.11:/testvolume /mnt
Untuk mengakses sebuah volume pada port yang berbeda, jalankan perintah :
# mount t nfs HOSTNAMEORIPADDRESS:PORT:/VOLNAME MOUNTDIR
Contoh:
# mount t nfs 192.168.56.11:7997:/testvolume /mnt
Catatan:
GlusterFs tidak mendukung protokol UDP. Jika NFS Client menggunakan
protokol default yang menggunakan UDP, akan muncul pesan: requested NFS
version or transport protocol is not supported. Gunakan koneksi dengan protokol
TCP untuk mengatasi kesalahan tersebut.
Untuk melakukan koneksi menggunakan TCP, tambahkan opsi berikut saat
melakukan mounting :
o mountproto=tcp
Contoh:
# mount o mountproto=tcp t nfs 192.168.56.11:7997:/test
volume /mnt
12
13. Untuk mengakses volume dengan NFS Client otomatis ketika komputer
dijalankan :
• Untuk mengakses volume pada port default, edit file /etc/fstab dan
tambahkan baris seperti berikut :
HOSTNAMEORIPADDRESS:/VOLNAME MOUNTDIR glusterfs
defaults,_netdev 0 0
Contoh:
192.168.56.11:/testvolume /mnt glusterfs
defaults,_netdev 0 0
• Untuk mengakses volume pada port selain default, edit file /etc/fstab
dan tambahkan baris seperti berikut :
HOSTNAMEORIPADDRESS:PORT:/VOLNAME MOUNTDIR nfs
defaults,_netdev 0 0
Contoh:
192.168.56.11:7997:/testvolume /mnt nfs
defaults,_netdev 0 0
13
14. C. PENUTUP
1. Simpulan
GlusterFS adalah clustered file system yang bersifat open source yang
dapat beroperasi dengan kapasitas petabyte dan menangani ribuan client.
GlusterFS mudah digunakan dan cukup handal. GlusterFS dapat digunakan untuk
membuat media penyimpanan terdistribusi sederhana. Ruang peyimpanan tersebar
di beberapa komputer yang kapasitasnya dapat ditambah dan dikurangi dengan
mudah.
GlusterFS sangat cocok untuk diterapkan dalam pembuatan Data Center
yang cukup kompleks dan membutuhkan banyak sumber daya, seperti Data
Center Universitas. Pengelolaan perangkat keras dan perangkat lunak dapat
dilakukan dengan mudah, serta menghemat beaya pengadaan dan perawatannya.
2. Saran
Untuk penilitian yang lebih serius dapat diteliti model-model yang lebih
kompleks yang sesuai dengan kenyataan yaitu model replicated atau striped serta
gabungan beberapa model yang ada.
14
15. DAFTAR PUSTAKA
______, 2011, Gluster 3.2 Documentation (online), url:
http://gluster.com/community/documentation/index.php/Main_Page,
Gluster Inc., diakses 25 Mei 2011.
Ahira, Anne, 2010, Layanan Gmail Semakin Komplit (online), url:
http://www.anneahira.com/gmail.htm , diakses 10 Mei 2011.
Ed Lenta, 2011, Memangkas biaya hingga 60 persen, Chip 05/2011, hal. 29.
15