Pengantar Sistem File Z (ZFS) untuk Linux
ZFS umumnya digunakan oleh para penimbun data, pecinta NAS, dan geek lainnya yang lebih memilih untuk menaruh kepercayaan mereka pada sistem penyimpanan berlebihan mereka sendiri daripada cloud. Ini adalah sistem file yang bagus untuk digunakan untuk mengelola beberapa disk data dan menyaingi beberapa pengaturan RAID terbesar.
Foto oleh Kenny Louie.
Apa itu ZFS dan Mengapa Saya Harus Menggunakannya??
Sistem file Z adalah manajer volume logis gratis dan open source yang dibuat oleh Sun Microsystems untuk digunakan dalam sistem operasi Solaris mereka. Beberapa fitur yang paling menarik termasuk:
Skalabilitas tak berujung
Ya tidak secara teknis tak ada habisnya, tapi ini adalah sistem file 128-bit yang mampu mengelola zettabytes (satu miliar terabyte) data. Tidak peduli berapa banyak ruang hard drive yang Anda miliki, ZFS akan cocok untuk mengelolanya.
Integritas maksimum
Semua yang Anda lakukan di dalam ZFS menggunakan checksum untuk memastikan integritas file. Anda dapat yakin bahwa file Anda dan salinannya yang berlebihan tidak akan menemukan korupsi data diam. Selain itu, sementara ZFS sibuk diam-diam memeriksa integritas data Anda, itu akan melakukan perbaikan otomatis kapan saja bisa.
Drive pooling
Pembuat ZFS ingin Anda menganggapnya mirip dengan cara komputer Anda menggunakan RAM. Ketika Anda membutuhkan lebih banyak memori di komputer Anda, Anda memasukkan tongkat lain dan Anda selesai. Sama halnya dengan ZFS, saat Anda membutuhkan lebih banyak ruang hard drive, Anda memasukkan hard drive lain dan selesai. Tidak perlu menghabiskan waktu mempartisi, memformat, menginisialisasi, atau melakukan hal lain ke disk Anda - saat Anda membutuhkan "kumpulan" penyimpanan yang lebih besar, cukup tambahkan disk.
SERANGAN
ZFS mampu berbagai level RAID yang berbeda, semuanya memberikan kinerja yang sebanding dengan pengontrol RAID perangkat keras. Ini memungkinkan Anda menghemat uang, mempermudah pengaturan, dan memiliki akses ke level RAID superior yang telah ditingkatkan ZFS.
Menginstal ZFS
Karena kita hanya membahas dasar-dasar dalam panduan ini, kita tidak akan menginstal ZFS sebagai sistem file root. Bagian ini mengasumsikan bahwa Anda menggunakan ext4 atau sistem file lain dan ingin menggunakan ZFS untuk beberapa hard drive sekunder. Berikut adalah perintah untuk menginstal ZFS di beberapa distribusi Linux paling populer.
Solaris dan FreeBSD seharusnya sudah hadir dengan ZFS yang terinstal dan siap digunakan.
Ubuntu:
$ sudo add-apt-repository ppa: zfs-native / stable
Pembaruan apt-get $ sudo
$ sudo apt-get install ubuntu-zfs
Debian:
$ su -
# wget http://archive.zfsonlinux.org/debian/pool/main/z/zfsonlinux/zfsonlinux_2%7Ewheezy_all.deb
# dpkg -i zfsonlinux_2 ~ wheezy_all.deb
# apt-get update
# apt-get install debian-zfs
RHEL / CentOS:
$ sudo yum localinstall --nogpgcheck http://archive.zfsonlinux.org/epel/zfs-release-1-3.el6.noarch.rpm
$ sudo yum instal zfs
Jika Anda memiliki distribusi lain, lihat zfsonlinux.org dan klik distribusi Anda di bawah daftar "Paket" untuk instruksi tentang cara menginstal ZFS.
Ketika kita melanjutkan dengan panduan ini, kita akan menggunakan Ubuntu karena itu tampaknya menjadi pilihan # 1 untuk Geeks Linux. Anda harus tetap dapat mengikuti apa pun yang terjadi, karena perintah ZFS tidak akan berubah di distribusi yang berbeda.
Instalasi membutuhkan waktu cukup lama, tetapi setelah selesai, jalankan daftar $ sudo zfs
untuk memastikan itu dipasang dengan benar. Anda harus mendapatkan output seperti ini:
Kami sedang menggunakan instalasi baru server Ubuntu sekarang, dengan hanya satu hard drive.
Mengkonfigurasi ZFS
Sekarang, katakanlah kita memasukkan enam hard drive lagi ke komputer kita.
$ sudo fdisk -l | grep Error
akan menunjukkan kepada kita enam hard drive yang baru saja kita instal. Mereka saat ini tidak dapat digunakan karena mereka tidak mengandung segala jenis tabel partisi.
Seperti yang kami sebutkan sebelumnya, salah satu hal baik tentang ZFS adalah bahwa kita tidak perlu repot dengan partisi (walaupun Anda bisa jika mau). Mari kita mulai dengan mengambil tiga hard disk kita dan meletakkannya di kolam penyimpanan dengan menjalankan perintah berikut:
$ sudo zpool membuat -f geek1 / dev / sdb / dev / sdc / dev / sdd
zpool buat
adalah perintah yang digunakan untuk membuat kumpulan penyimpanan baru, -f
mengganti kesalahan yang terjadi (seperti jika disk sudah memiliki informasi tentangnya), geek1
adalah nama kumpulan penyimpanan, dan / dev / sdb / dev / sdc / dev / sdd
adalah hard drive yang kami letakkan di kolam.
Setelah membuat kolam, Anda harus dapat melihatnya dengan df
perintah atau daftar sudo zfs
:
Seperti yang Anda lihat, / geek1 telah di-mount dan siap digunakan.
Jika Anda ingin melihat tiga disk yang Anda pilih untuk kumpulan Anda, Anda bisa menjalankannya status sudo zpool
:
Apa yang telah kami lakukan sejauh ini adalah membuat 9 TB dynamic stripe pool (efektif, RAID 0). Jika Anda tidak terbiasa dengan artinya, bayangkan kami membuat file 3 KB di / geek1. 1 KB akan secara otomatis ke sdb, 1 KB ke sdc, dan 1 KB ke sdd. Kemudian ketika kita membaca file 3 KB, setiap hard drive akan menghadirkan 1 KB kepada kita, menggabungkan kecepatan dari tiga drive. Ini membuat menulis dan membaca data dengan cepat, tetapi juga berarti kita memiliki satu titik kegagalan. Jika hanya satu hard drive gagal, kami akan kehilangan file 3 KB kami.
Dengan anggapan bahwa melindungi data Anda lebih penting daripada mengaksesnya dengan cepat, mari kita lihat pengaturan populer lainnya. Pertama, kami akan menghapus zpool yang kami buat sehingga kami dapat menggunakan disk ini dalam pengaturan yang lebih berlebihan:
$ sudo zpool menghancurkan geek1
Bam, zpool kami hilang. Kali ini, mari kita gunakan tiga disk kita untuk membuat kelompok RAID-Z. RAID-Z pada dasarnya adalah versi yang ditingkatkan dari RAID 5, karena itu menghindari "lubang tulis" dengan menggunakan copy-on-write. RAID-Z membutuhkan minimal tiga hard drive, dan merupakan semacam kompromi antara RAID 0 dan RAID 1. Dalam kelompok RAID-Z, Anda masih akan mendapatkan kecepatan striping level blok tetapi juga akan memiliki paritas yang didistribusikan. Jika satu disk di kumpulan Anda mati, cukup ganti disk itu dan ZFS akan secara otomatis membangun kembali data berdasarkan informasi paritas dari disk lain. Untuk kehilangan semua informasi di kumpulan penyimpanan Anda, dua disk harus mati. Untuk membuat hal-hal menjadi lebih mubazir, Anda dapat menggunakan RAID 6 (RAID-Z2 dalam kasus ZFS) dan memiliki paritas ganda.
Untuk mencapai ini, kita bisa menggunakan yang sama zpool buat
perintah seperti sebelumnya tetapi tentukan raidz
setelah nama kolam:
$ sudo zpool membuat -f geek1 raidz / dev / sdb / dev / sdc / dev / sdd
Seperti yang terlihat, df-h
menunjukkan bahwa kumpulan 9 TB kami sekarang telah dikurangi menjadi 6 TB, karena 3 TB digunakan untuk menyimpan informasi paritas. Dengan status zpool
perintah, kita melihat bahwa kumpulan kita sebagian besar sama seperti sebelumnya, tetapi sekarang menggunakan RAID-Z.
Untuk menunjukkan betapa mudahnya menambahkan lebih banyak disk ke kumpulan penyimpanan kami, mari tambahkan tiga disk lainnya (9 TB lainnya) ke kumpulan penyimpanan geek1 kami sebagai konfigurasi RAID-Z lainnya:
$ sudo zpool tambahkan -f geek1 raidz / dev / sde / dev / sdf / dev / sdg
Kita berakhir dengan:
Saga Berlanjut ...
Kami baru saja menggores permukaan ZFS dan kapabilitasnya, tetapi menggunakan apa yang telah Anda pelajari di artikel ini sekarang Anda seharusnya dapat membuat kumpulan penyimpanan data Anda yang berlebihan. Periksa kembali bersama kami untuk artikel mendatang tentang ZFS, lihat halaman manual, dan cari sekitar untuk panduan niche tak berujung dan video Youtube yang mencakup fungsi ZFS.