GNU/Linux >> Belajar Linux >  >> Debian

Cara menginstal dan mengkonfigurasi ZFS di Linux menggunakan Debian Jessie 8.1

Di halaman ini

  1. Prasyarat:
  • Langkah 1 - Perbarui Repositori dan Perbarui Sistem Linux Debian
  • Langkah 2 - Instal zfsonlinux
  • Langkah 3 - Buat dan konfigurasikan kumpulan
  • Langkah 5 - Buat dan konfigurasikan sistem file ZFS
  • Kesimpulan
  • ZFS adalah gabungan sistem file dan manajer volume logis. Fitur ZFS termasuk perlindungan terhadap korupsi data, dukungan untuk kapasitas penyimpanan yang tinggi, kompresi data yang efisien, integrasi sistem file dan konsep manajemen volume, snapshot dan klon copy-on-write, pemeriksaan integritas berkelanjutan dan perbaikan otomatis, RAID-Z dan native ACL NFSv4.

    ZFS awalnya diimplementasikan sebagai perangkat lunak sumber terbuka, dilisensikan di bawah Lisensi Pengembangan dan Distribusi Umum (CDDL).

    Ketika kita berbicara tentang sistem file ZFS, kita dapat menyoroti konsep kunci berikut:

    • Integritas data.
    • Administrasi penyimpanan sederhana dengan hanya dua perintah:zfs dan zpool.
    • Semuanya dapat dilakukan saat sistem file online.

    Untuk ikhtisar lengkap dan deskripsi semua fitur yang tersedia, lihat artikel wikipedia terperinci ini.

    Dalam tutorial ini, saya akan memandu Anda langkah demi langkah melalui instalasi sistem file ZFS di Debian 8.1 (Jessie). Saya akan menunjukkan cara membuat dan mengkonfigurasi pool menggunakan raid0 (stripe), raid1 (Mirror) dan RAID-Z (Raid with parity) dan menjelaskan cara mengkonfigurasi sistem file dengan ZFS.

    Berdasarkan informasi dari situs web www.zfsonlinux.org, ZFS hanya didukung pada arsitektur AMD64 dan Intel 64 Bit (amd64). Mari kita mulai dengan penyiapan.

    Prasyarat:

    • Debian 8 dengan Kernel 64bit.
    • hak istimewa root.

    Langkah 1 - Perbarui Repositori dan Perbarui Sistem Linux Debian

    Untuk menambahkan repositori zfsonlinux ke sistem kami, unduh dan instal paket zfsonlinux seperti yang ditunjukkan di bawah ini. Ini akan menambahkan file /etc/apt/sources.list.d/zfsonlinux.list dan /etc/apt/trusted.gpg.d/zfsonlinux.gpg di komputer Anda. Setelah itu, Anda dapat menginstal zfs seperti paket Debian lainnya dengan perintah apt-get. Manfaat lain menggunakan repositori zfsonlinux adalah Anda mendapatkan pembaruan secara otomatis dengan menjalankan "apt-get update &&apt-get upgrade".

    Masuk ke server Debian dengan akses SSH, menjadi pengguna root, lalu jalankan perintah berikut.

    # uname -a
    Linux debian-zfs 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt11-1 (2015-05-24) x86_64 GNU/Linux
    # wget http://archive.zfsonlinux.org/debian/pool/main/z/zfsonlinux/zfsonlinux_6_all.deb
    # dpkg -i zfsonlinux_6_all.deb
    # apt-get update

    Langkah 2 - Instal zfsonlinux

    Zfsonlinux memiliki banyak dependensi perangkat lunak yang diinstal oleh apt secara otomatis. Proses ini akan memakan waktu cukup lama. Ketika instalasi selesai, reboot server.

    # apt-get install lsb-release
    # apt-get install debian-zfs
    # shutdown -r sekarang

    Langkah 3 - Buat dan konfigurasikan kumpulan

    Setelah server di-boot ulang, periksa apakah zfsonlinux telah diinstal dan berjalan dengan baik.

    # dpkg -l | grep zfs 
    II debian-zfs 7 ~ Jessie AMD64 Native ZFS Filesystem Metapackage untuk Debian.
    II libzfs2 0.6.5.2-2 AMD64 Perpustakaan sistem file ZFS asli untuk Linux
    II ZFS-DKMS 0.6.5.2 -2 Semua modul kernel sistem file zfs asli untuk linux
    ii zfsonlinux 6 all archive.zfsonlinux.org Paket kepercayaan
    II zfsutils 0.6.5.2-2 AMD64 Alat baris perintah untuk mengelola sistem file ZFS

    Hasil di atas menunjukkan bahwa zfs di linux sudah terinstal, jadi kita bisa melanjutkan dengan membuat kumpulan pertama.

    Saya telah menambahkan lima disk ke server ini, masing-masing dengan ukuran 2GB. Kami dapat memeriksa disk yang tersedia dengan perintah ini:

    # ls /dev/sd*
    /dev/sda  /dev/sda1  /dev/sda2  /dev/sda5  /dev/sdb  /dev/sdc  /dev/sdd  /dev/sde  /dev/sdf /dev/sdg

    Kita dapat melihat bahwa kita memiliki /dev/sda hingga /dev/sdg, /dev/sda digunakan untuk sistem operasi Debian Linux Jessie 8.1. Kami akan menggunakan /dev/sdb hingga /dev/sdg untuk sistem file ZFS.

    Sekarang kita bisa mulai membuat poolnya, untuk yang pertama saya akan tunjukkan cara membuat raid0 (stripe).

    # zpool list
    tidak ada pool yang tersedia
    # zpool create -f pool0 /dev/sdb
    # zpool list
    NAME    UKURAN  ALLOC   GRATIS  EXPANDSZ   FRAG    CAP  DEDUP  KESEHATAN  ALTROOT
    pool0  1.98G    64K    0     x  ONLINE  ​​-

    Perintah "zpool list" menunjukkan bahwa kita berhasil membuat satu raid0 zfs pool, nama poolnya adalah pool0, dan ukurannya 2GB.

    Selanjutnya kita akan membuat raid1 (mirror) dengan disk lainnya.

    # zpool create -f pool1 mirror /dev/sdc /dev/sdd
    # zpool list
    NAME    UKURAN  ALLOC   GRATIS  EXPANDSZ   FRAG    CAP  DEDUP  ALTROOT KESEHATAN
    pool0  1.98G       1.98G      1.98G 0%     0%  1.00x  ONLINE  ​​-
    pool1  1.98G    64K  1.98G        -     0%     0%  1.00x  ONLINE  ​​-

    Kita dapat melihat bahwa kita memiliki dua kumpulan sekarang, kumpulan0 untuk raid0 dan pool1 untuk raid1.

    Untuk memeriksa status pool, kita dapat menggunakan perintah di bawah ini:

    # zpool status
      pool:pool0
     state:ONLINE
      scan:tidak ada yang diminta
    config:

           NAMA       NEGARA     BACA TULIS CKSUM
            pool0       ONLINE       0    0     0
             sdb       ONLINE      0    0     0

    kesalahan:Tidak ada kesalahan data yang diketahui:
    ONLINE /
    ONLINE> Pemindaian:Tidak ada yang diminta
    Config:

    Nama Negara Baca Tulis Cksum
    Pool1 Online 0 0 0
    Mirror-0 Online 0 0 0
    SDC Online 0     0     0
               sdd     ONLINE       0     0     0

    kesalahan:Tidak ada kesalahan data yang diketahui

    Kita bisa mengecek status pool dengan perintah "zpool status". Kita dapat melihat perbedaan antara pool0 dan pool1, pool0 hanya memiliki satu disk, dan pool1 memiliki dua disk dan status disk adalah mirror (mirror-0).

    Selanjutnya, kita akan membuat kumpulan dengan RAID-Z, RAID-Z adalah skema distribusi data/paritas seperti RAID-5, tetapi menggunakan lebar strip dinamis:setiap blok memiliki strip RAID sendiri, berapa pun ukuran bloknya, menghasilkan setiap penulisan RAID-Z menjadi penulisan garis penuh.

    RAID-Z membutuhkan minimal tiga hard drive dan merupakan semacam kompromi antara RAID 0 dan RAID 1. Di kumpulan RAID-Z: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 penyiapan drive lebih berlebihan, Anda dapat menggunakan RAID 6 (RAID-Z2 dalam kasus ZFS) untuk mendapatkan paritas ganda.

    Mari buat kumpulan RAID-Z dengan satu paritas terlebih dahulu.

    # zpool create -f poolz1 raidz sde sdf sdg
    # zpool list poolz1
    NAME     UKURAN  ALLOC   GRATIS  EXPANDSZ   FRAG    CAP  DEDUP  ALTROOT KESEHATAN
    poolz     0      5.94G 1,00x  ONLINE  ​​-
    # zpool status poolz1
      pool:poolz1
     state:ONLINE
      scan:tidak ada yang diminta
    config:

           NAMA       NEGARA     BACA TULIS CKSUM
    Poolz1 online 0 0 0
    raidz1-0 online 0 0 0
    SDE Online 0 0 0
    SDF Online 0 0 0
    SDG Online 0 0 0

    kesalahan:Tidak ada kesalahan data yang diketahui
    # df -h /poolz1
    Filesystem      Ukuran  Digunakan Tersedia Penggunaan% Dipasang di
    poolz1         3.9G     0  3.9G   0% /poolz1

    Seperti yang kita lihat, df -h menunjukkan bahwa kumpulan 6GB kami sekarang telah dikurangi menjadi 4GB, 2GB digunakan untuk menyimpan informasi paritas. Dengan perintah status zpool, kami melihat bahwa kumpulan kami menggunakan RAID-Z sekarang.

    Selanjutnya kita akan membuat RAID-Z2 (raid 6), untuk tujuan ini kita harus menghapus pool yang ada karena tidak ada lagi disk yang tersedia. Menghapus pool sangat mudah, kita bisa menggunakan perintah zpool destroy untuk itu.

    # zpool list
    NAME     UKURAN  ALLOC   GRATIS  EXPANDSZ   FRAG    CAP  DEDUP  ALTROOT KESEHATAN
    pool0   1.98G    64K  1.98G  LINE      -     0%      0%      0% 0%     0%  1.00x  ONLINE  ​​-
    poolz1  5.94G   117K  5.94G        -     0%     0%  1.00x  ONLINE  ​​-
    # zpool menghancurkan pool0
    # zpool menghancurkan pool1
    # zpool menghancurkan poolz1
    # daftar zpool
    tidak ada pool yang tersedia

    Sekarang semua zpool kami hilang, jadi kami dapat membuat kumpulan RAID-Z2.

    # zpool create poolz2 raidz2 sdb sdc sdd sde
    # zpool list
    NAME     UKURAN  ALLOC   GRATIS  EXPANDSZ   FRAG    CAP  DEDUP  KESEHATAN  ALTROOT
    poolz2     94%      94%     94G ONLINE  ​​-
    # df -h /poolz2
    Filesystem      Ukuran  Digunakan Tersedia Penggunaan% Dipasang di
    poolz2         3.9G     0  3.9G   0% /poolz2
    # zpool status poolz2
      pool:poolz2
     state:ONLINE
      scan:tidak ada yang diminta
    config:

           NAMA       NEGARA     BACA TULIS CKSUM
    Poolz2 online 0 0 0
    raidz2-0 online 0 0 0
    SDB Online 0 0 0
    SDC ONLINE 0 0 0
    SDD Online 0 0 0
    SDE ONLINE       0     0     0

    kesalahan:Tidak ada kesalahan data yang diketahui

    Seperti yang dapat kita lihat, df -h menunjukkan bahwa kumpulan 8GB kami sekarang telah dikurangi menjadi 4GB, karena 4GB digunakan untuk menyimpan informasi paritas dua kali. Dengan perintah "zpool status", kita melihat bahwa pool kita menggunakan RAID-Z2 sekarang.

    Langkah 4 - Simulasikan Kegagalan Disk

    Pada langkah ini, kami akan mensimulasikan kegagalan disk yang parah (yaitu salah satu HDD di zpool berhenti berfungsi).

    Buat file di poolz2, dan pastikan kita dapat mengaksesnya.

    # echo "Hanya Uji"> /poolz2/test.txt
    # cat /poolz2/test.txt
    Hanya Uji

    Sebelum mensimulasikan kegagalan:periksa status poolz2 dan pastikan statusnya Online dan status semua disk Online.

    Kegagalan disimulasikan dengan menulis data acak dengan perintah dd ke /dev/sdb .

    # dd if=/dev/urandom of=/dev/sdb bs=1024 count=20480
    # zpool scrub poolz2
    # zpool status
      pool:poolz2
     state :ONLINE
    status:Satu atau beberapa perangkat mengalami kesalahan yang tidak dapat dipulihkan. Sebuah
            telah dilakukan untuk memperbaiki kesalahan tersebut. Aplikasi tidak terpengaruh.
    tindakan:Tentukan apakah perangkat perlu diganti, dan hapus kesalahan
            menggunakan 'zpool clear' atau ganti perangkat dengan 'zpool replace'.
       lihat:http://zfsonlinux.org/msg/ZFS-8000-9P
      pemindaian:scrub diperbaiki 17K dalam 0j0m dengan 0 kesalahan pada Sel 8 Des  22:37:49 2015
    config:

    Nama Negara Baca Tulis Cksum
    Poolz2 Online 0 0 0
    Raidz2-0 Online 0 0 0
    SDB Online 0 0 25
    SDC Online 0 0 0
    SDD Online 0     0     0
               sde     ONLINE       0     0     0

    kesalahan:Tidak ada kesalahan data yang diketahui

    Sekarang kita dapat melihat bahwa satu atau lebih disk mengalami kesalahan yang tidak dapat dipulihkan, jadi kami harus mengganti disk. Dalam hal ini, kami mengganti /dev/sdb disk dengan /dev/sdf.

    # zpool replace poolz2 sdb sdf
    # zpool status
      pool:poolz2
     state:ONLINE
      scan:reslivered 49,5K dalam 0j0m dengan 0 kesalahan pada Sel 8 Des 22:43:35 2015
    Config:

    Nama Negara Baca Tulis Cksum
    Poolz2 Online 0 0 0
    RAIDZ2-0 Online 0 0 0
    SDF Online 0 0 0
    SDC Online 0 0 0
    SDD ONLINE 0 0 0
    SDE Online 0 0 0

    Kesalahan:Tidak ada kesalahan data yang diketahui

    Setelah kami mengganti /dev/sdb dengan /dev/sdf, kesalahan tersebut hilang dan kami masih dapat mengakses file pengujian yang telah kami buat sebelumnya.

    # cat /poolz2/test.txt
    Hanya Tes

    Sampai langkah ini, kita tahu tentang cara membuat dan mengonfigurasi zpool.

    Langkah 5 - Buat dan konfigurasikan sistem file ZFS

    Pada langkah berikutnya, kita akan mempelajari cara membuat dan mengonfigurasi sistem file ZFS.

    # daftar zfs
    NAMA     YANG DIGUNAKAN  TERSEDIA  REFER  MOUNTPOINT
    poolz2   105K  3.83G  26.1K  /poolz2

    Kami sudah memiliki satu sistem file ZFS, ini otomatis ditambahkan saat kami membuat zpool. Sekarang kita akan membuat sistem file ZFS lainnya.

    # zfs create poolz2/tank
    # zfs list
    NAME          DIGUNAKAN  AVAIL  REFER  MOUNTPOINT
    poolz2       132K  3.83G  26.1K  /poolz2
    poolz2 3.83  25.4K 3.83 /poolz2/tank
    # df -h | grep poolz2
    poolz2         3.9G  128K  3.9G   1% /poolz2
    poolz2/tank     3.9G  128K  3.9G   1% /poolz2/tank

    Sangat mudah bukan? Kami membuat sistem file ZFS baru bernama tank dan memasangnya secara otomatis sebagai /poolz2/tank.

    Bagaimana cara membuat mountpoint khusus untuk sistem file ZFS? Gunakan perintah di bawah ini:

    # zfs buat poolz2/data -o mountpoint=/data
    # df -h | grep poolz2
    poolz2         3.9G     0  3.9G   0% /poolz2
    poolz2/tank     3.9G     0  3.9G   0% /poolz2/tank
    poolz2/data     0  3.9G  

    Bagaimana cara memodifikasi mountpoint yang ada? Kita dapat melakukannya dengan perintah di bawah ini:

    # zfs set mountpoint=/tank poolz2/tank
    # df -h | grep poolz2
    poolz2         3.9G     0  3.9G   0% /poolz2
    poolz2/data     3.9G     0  3.9G   0% /data
    poolz2/tank    3.9G     0  3.9G    0  /tank pra>

    Untuk memasang dan melepas sistem file, gunakan perintah di bawah ini:

    # zfs melepas /data
    # df -h | grep poolz2
    poolz2         3.9G     0  3.9G   0% /poolz2
    poolz2/tank     3.9G     0  3.9G   0% /tank
    # zfs mount poolz2/data
    # df -h | grep poolz2
    poolz2         3.9G     0  3.9G   0% /poolz2
    poolz2/tank     3.9G     0  3.9G   0% /tank
    poolz2/data    3.9G     0  3.9G    0 pra>

    Menghapus sistem file zfs sangat mudah, kita dapat menggunakan perintah zfs destroy untuk itu.

    # zfs menghancurkan poolz2/data
    # zfs list
    NAME          DIGUNAKAN  AVAIL  REFER  MOUNTPOINT
    poolz2       152K  3.83G  26.1K  /poolz2
    poolz2 3.83G  25.4K  3.83G /tank

    Sistem file /data hilang.

    Kesimpulan

    Sistem file ZFS adalah sistem file baru yang revolusioner yang secara mendasar mengubah cara sistem file dikelola pada sistem operasi mirip Unix. ZFS menyediakan fitur dan manfaat yang tidak ditemukan di sistem file lain yang tersedia saat ini. ZFS kuat, skalabel, dan mudah dikelola.


    Debian
    1. Cara Menginstal dan Mengkonfigurasi Mariadb 10 di Debian 11

    2. Cara menginstal dan mengkonfigurasi MongoDB 5 di Debian 11

    3. Cara menginstal dan mengkonfigurasi Node.js dan npm di Ubuntu, Debian atau Linux Mint

    1. Cara Menginstal dan Mengkonfigurasi VNC di Debian 9

    2. Cara menginstal dan mengkonfigurasi buruh pelabuhan di Debian 11

    3. Cara menginstal dan mengkonfigurasi Redis 6 di Debian 11

    1. Cara Menginstal dan Mengonfigurasi Redis di Debian 9

    2. Cara Menginstal dan Mengonfigurasi Nagios di Debian 9

    3. Cara Menginstal dan Mengkonfigurasi Zabbix di Debian 9 Linux