Tmpfs is a file system which keeps all files in virtual memory. TMPFS adalah sistem berkas yang menyimpan semua berkas ke dalam memori virtual. TMPFS memiliki ukuran yang didefinisikan di awal dan memberikan pesan disk full jika sudah penuh. TMPFS mengikuti sifat dari RAM, yaitu data akan hilang bersamaan dengan hilangnya tenaga listrik. TMPFS akan memanfaatkan SWAP jika tidak ada lagi ruang di RAM (sumber: https://www.kernel.org/doc/Documentation/filesystems/tmpfs.txt)
WARNING!!
Berdasarkan pengalaman pribadi, apabila ada setting yang tidak dapat diimplementasikan atau error, maka di luar tanggung jawab kami. Server yang digunakan berbasis UBUNTU (turunan dari Debian)
Mempercepat Kinerja Server
- Menambah RAMTerkadang tidak terjadi peningkatan secara signifikan, setelah dicek ternyata RAM yang digunakan hanya 30% sampai 50%.
- Memasang/mengaktifkan cache
Terkadang tidak terjadi peningkatan secara signifikan, karena cache masih menggunakan disk - Memisah cache ke dalam disk lain
- HybridMenggabungkan ketiga teknik di atas. Bagaimana caranya?
Cara untuk meningkatkan kinerja server dengan menggabungkan penambahan RAM, pengaktifan cache dan pemisahan cache ke disk yang berbeda adalah dengan membuat partisi di RAM, bukan di disk. Untuk tujuan itulah TMPFS digunakan. Patut diperhatikan bahwa data di RAM akan hilang ketika server mati
Peringatan Penggunaan TMPFS
- TMPFS akan menggunakan SWAP jika tidak lagi ada ruang di RAM. Pastikan bahwa ukuran yang digunakan tidak terlalu besar. Ketahui dahulu penggunaan RAM pada saat server bekerja keras, bisa menggunakan perintah top atau free -m. Misalnya: RAM total 8GiB, memori yang digunakan saat server banyak digunakan adalah 3GiB, maka TMPFS dapat disetting kurang dari 5GiB, tetapi sebaiknya diberi cadangan beberapa MB atau GiB
- TMPFS mengikuti perilaku RAM, yaitu data akan hilang ketika tidak ada daya listrik. Pastikan bahwa server tidak error/bermasalah ketika data yang disimpan dalam RAM hilang
- Pasang UPS untuk menghilangkan atau memperkecil peluang server untuk mati agar tidak perlu membuat cache lagi dari awal
Membuat RAM_TMP, Direktori Temporary Yang Disimpan Di RAM
Jalankan perintah berikut di terminal menggunakan user Root (digunakan di Ubuntu, untuk sistem lain mungkin akan sedikit berbeda):
mkdir /ram_tmp
echo “#1 tmp dir on memory” >> /etc/fstab
echo “tmpfs /ram_tmp tmpfs defaults,noatime,nosuid,mode=1777,size=2116M 0 0″ >> /etc/fstab
mount -a
echo ” owner /ram_tmp/** rwkl, ” >> /etc/apparmor.d/abstractions/user-tmp
echo ” /ram_tmp rw, ” >> /etc/apparmor.d/abstractions/user-tmp
service apparmor restart
Penjelasan baris per baris:
- Membuat direktori /ram_tmp, jika tidak dibuat, maka akan terjadi masalah ketika di-mount.
- Memberikan keterangan di /etc/fstab bahwa ini adalah direktori tmp pertama di memori
- Memberi definisi partisi di RAM menggunakan TMPFS pada /ram_tmp, dengan permisi 1777 (dapat baca, eksekusi dan tulis untuk semua) dengan ukuran 2116MB (dapat disesuaikan) (sumber: http://askubuntu.com/questions/173094/how-can-i-use-ram-storage-for-the-tmp-directory-and-how-to-set-a-maximum-amount)
- Mount semua yang ada pada /etc/fstab
- Memberi ijin untuk membaca dan menulis di AppArmor untuk pemilik berkas (sumber: http://askubuntu.com/questions/442536/mysql-couldnt-write-to-tmp-then-failed-to-restart)
- Memberi ijin untuk membaca dan menulis di AppArmor
- Menghidupkan kembali AppArmor agar ijin dapat digunakan
Konfigurasi Server
http://pdsi.unisayogya.ac.id/konfigurasi-server-dengan-tmpfs/