Cara Memasang Stratis untuk Mengelola Penyimpanan Lokal Berlapis di RHEL 8


Stratis adalah salah satu fitur baru yang disertakan dengan distribusi RHEL 8. Stratis adalah solusi pengelolaan penyimpanan lokal yang berfokus pada kesederhanaan dan peningkatan kegunaan sekaligus menyediakan akses ke fitur penyimpanan tingkat lanjut. Ia menggunakan sistem file XFS dan memberi Anda akses ke kemampuan penyimpanan tingkat lanjut seperti:

  • Penyediaan yang tipis
  • Snapshot sistem file
  • Berjenjang
  • Manajemen berbasis kolam
  • Pemantauan

Pada dasarnya, Stratis adalah kumpulan penyimpanan yang dibuat dari satu atau lebih disk atau partisi disk lokal. Stratis membantu administrator Sistem mengatur dan mengelola konfigurasi penyimpanan yang kompleks.

Sebelum melangkah lebih jauh, mari kita lihat beberapa istilah teknis yang mungkin Anda temui seiring berjalannya waktu:

  • kumpulan: Kumpulan terdiri dari satu atau lebih perangkat blok. Ukuran total kumpulan sama dengan jumlah total perangkat blok.
  • blockdev: Seperti yang sudah Anda duga, ini mengacu pada perangkat blok seperti partisi disk.
  • Sistem file: Sistem file adalah lapisan yang disediakan secara tipis dan tidak memiliki ukuran total yang tetap. Ukuran sebenarnya sistem file bertambah seiring dengan penambahan data. Stratis secara otomatis memperbesar ukuran sistem file saat ukuran data mendekati ukuran virtual sistem file.

Perangkat blok yang dapat Anda gunakan dengan Stratis meliputi:

  1. Volume Logis LVM
  2. LUKS
  3. SSD (Solid State Drive)
  4. Multijalur Pemeta Perangkat
  5. iSCSI
  6. HDD (Hard Disk Drive)
  7. mdraid
  8. Perangkat penyimpanan NVMe

Komponen Perangkat Lunak Stratis

Stratis menyediakan 2 utilitas perangkat lunak:

  • Stratis-cli: Ini adalah alat baris perintah yang dikirimkan bersama Stratis.
  • Daemon Stratisd: Ini adalah daemon yang membuat dan mengelola perangkat blok dan berperan dalam menyediakan API DBUS.

Cara Memasang Stratis di RHEL 8

Setelah melihat apa itu Stratis dan mendefinisikan beberapa terminologi. Sekarang mari kita instal dan konfigurasikan Stratis pada distribusi RHEL 8 (juga berfungsi pada CentOS 8).

Instal Stratis di RHEL 8

Mari kita lihat bagaimana Anda dapat menginstal Stratis pada sistem RHEL 8 Anda, masuk sebagai pengguna root dan jalankan perintah.

dnf install stratisd stratis-cli

Untuk menemukan informasi lebih lanjut tentang paket yang diinstal, jalankan perintah.

rpm -qi stratisd stratis-cli

Setelah instalasi Stratis berhasil, mulai layanan dengan menjalankan perintah.

systemctl enable --now stratisd

Untuk memeriksa status Stratis, jalankan perintah.

systemctl status stratisd

Buat Kumpulan Stratis

Untuk membuat kumpulan Stratis Anda memerlukan perangkat blok yang tidak digunakan atau dipasang. Selain itu, diasumsikan bahwa layanan Stratisd sudah aktif dan berjalan. Selain itu, perangkat blok yang akan Anda gunakan harus berukuran minimal 1 GB.

Pada sistem RHEL 8 kami, kami memiliki empat perangkat blok tambahan: /dev/xvdb, /dev/xvdc, /dev/ xvdd, /dev/xvde. Untuk menampilkan perangkat blok, jalankan perintah lsblk.

lsblk

Tak satu pun dari perangkat blok ini harus memiliki tabel partisi. Anda dapat mengonfirmasi ini menggunakan perintah.

blkid -p /dev/xvdb

Jika Anda tidak mendapatkan output, berarti perangkat blok Anda tidak memiliki tabel partisi apa pun di dalamnya. Namun, jika tabel partisi ada, Anda dapat menghapusnya menggunakan perintah:

wipefs -a /<device-path>

Buat Kumpulan Stratis dari Satu Perangkat Blok

Anda dapat membuat kumpulan Stratis dari satu perangkat blok menggunakan sintaksis.

stratis pool create <pool-name> <block-device>

Misalnya untuk membuat pool dari /dev/xvdb jalankan perintah.

stratis pool create my_pool_1 /dev/xvdb

Untuk mengonfirmasi proses kumpulan yang dibuat.

stratis pool list

Buat Kumpulan Stratis dari Beberapa Perangkat Blok

Untuk membuat kumpulan dari beberapa perangkat, gunakan sintaks di bawah ini yang mencantumkan semua perangkat dalam satu baris.

stratis pool create <pool_name> device-1 device-2 device-n

Untuk membuat kumpulan dari /dev/xvdc, /dev/xvdd dan /dev/xvde jalankan perintah.

stratis pool create my_pool_2 /dev/xvdc /dev/xvdd/ /dev/xvde

Sekali lagi, daftarkan kumpulan yang tersedia menggunakan perintah.

stratis pool list

Pada titik ini, Anda seharusnya sudah memiliki 2 kumpulan: kolam_saya_1 dan kolam_saya_2.

Seperti yang Anda lihat di atas, ruang hard disk yang digunakan oleh kumpulan my_pool_2 adalah tiga kali lipat dari kumpulan pertama yang kami buat hanya dari satu perangkat blok dengan memori 10 GB.

Buat Sistem File dari Pool

Setelah membuat sistem file, Anda dapat membuat sistem file dari salah satu kumpulan menggunakan sintaks.

stratis fs create <poolname> <filesystemname>

Misalnya, untuk membuat filesystem-1 dan filesystem-2 dari my_pool_1 dan my_pool_2 masing-masing, jalankan perintah:

stratis fs create my_pool_1 filesystem-1
stratis fs create my_pool_2 filesystem-2

Untuk melihat sistem file yang baru dibuat, jalankan perintah.

stratis fs list

Untuk mempersempit hasil sistem file menjadi satu kumpulan, jalankan perintah:

stratis fs list <poolname>

Misalnya, untuk memeriksa sistem file di my_pool_2 jalankan perintah.

stratis fs list my_pool_2

Sekarang, jika Anda menjalankan perintah lsblk, keluarannya akan serupa dengan contoh keluaran di bawah.

lsblk

Memasang Sistem File Stratis

Kami sekarang akan memasang sistem file yang ada untuk mengaksesnya. Pertama, buat titik pemasangan.

Untuk sistem file di kumpulan pertama, jalankan perintah:

mkdir /data
mount /stratis/my_pool_1/filesystem-1 /data

Untuk sistem file kedua di kumpulan kedua, jalankan perintah.

mkdir /block
mount /stratis/my_pool_2/filesystem-2 /block

Untuk memverifikasi keberadaan titik pemasangan saat ini, jalankan perintah df:

df -Th | grep  stratis

Sempurna! Kita dapat melihat dengan jelas bahwa titik mount kita ada.

Pasang Sistem File Stratis secara terus-menerus

Mount point yang baru saja kita buat tidak dapat bertahan jika di-boot ulang. Untuk membuatnya persisten, pertama-tama dapatkan UUID masing-masing sistem file:

blkid -p /stratis/my_pool_1/filesystem-1
blkid -p /stratis/my_pool_2/filesystem-2

Sekarang lanjutkan dan salin opsi UUID dan titik pemasangan ke /etc/fstab seperti yang ditunjukkan.

echo "UUID=c632dcf5-3e23-46c8-82b6-b06a4cc9d6a7 /data xfs defaults 0 0" | sudo tee -a /etc/fstab
echo "UUID=b485ce80-be18-4a06-8631-925132bbfd78 /block xfs defaults 0 0" | sudo tee -a /etc/fstab

Agar sistem dapat mendaftarkan konfigurasi baru, jalankan perintah:

systemctl daemon-reload

Untuk memverifikasi konfigurasi berfungsi seperti yang diharapkan, pasang sistem file.

mount /data
mount /block

Menghapus Sistem File Stratis

Untuk menghapus sistem file, pertama-tama Anda perlu melepas sistem file seperti yang ditunjukkan.

umount /mount-point

Dalam hal ini, kita akan melakukannya.

umount /data

Untuk menghancurkan sistem file, gunakan sintaks:

stratis filesystem destroy <poolname> <filesystem-name>

Jadi, kita akan mendapatkan:

stratis filesystem destroy my_pool_1 filesystem-1

Untuk mengonfirmasi penghapusan sistem file, berikan perintah.

stratis filesystem list my_pool_1

Dari outputnya, kita dapat melihat dengan jelas bahwa sistem file yang terkait dengan my_pool_1 telah dihapus.

Menambahkan Disk ke Stratis Pool yang Ada

Anda dapat menambahkan disk ke kumpulan yang ada menggunakan perintah:

stratis pool add-data <poolname> /<devicepath>

Misalnya, untuk menambahkan disk tambahan /dev/xvdf, ke my_pool_1, jalankan perintah:

stratis pool add-data my_pool_1 /dev/xvdf

Perhatikan bahwa ukuran my_pool_1 menjadi dua kali lipat setelah menambahkan volume ekstra.

Buat Snapshot Stratis

Snapshot adalah salinan sistem file baca dan tulis yang diprovisikan secara tipis pada titik waktu tertentu.

Untuk membuat snapshot, jalankan perintah:

stratis fs snapshot <poolname> <fsname> <snapshotname>

Dalam hal ini, perintahnya adalah:

stratis fs snapshot my_pool_2 filesystem-2 mysnapshot

Anda dapat menambahkan atribut data -$ (date +%Y-%m-%d) ke snapshot, menambahkan tag tanggal seperti yang ditunjukkan pada gambar di bawah.

Untuk memverifikasi pembuatan snapshot, jalankan perintah:

stratis filesystem list <poolname>

Dalam hal ini, perintahnya adalah:

stratis filesystem list my_pool_2

Mengembalikan ke Snapshot Sebelumnya Menggunakan Sistem File

Untuk mengembalikan sistem file Stratis ke snapshot yang dibuat sebelumnya, pertama-tama, lepas dan hancurkan sistem file asli.

umount /stratis/<poolname>/filesystem

Dalam skenario kami, ini akan terjadi.


umount /stratis/my_pool_2/filesystem-2

Kemudian buat salinan snapshot menggunakan sistem file asli:

stratis filesystem snapshot <poolname> filesystem-snapshot filesystem

Perintahnya adalah:

stratis filesystem snapshot my_pool_2 mysnapshot-2019-10-24 block

Terakhir, pasang snapshot.

mount /stratis/my-pool/my-fs mount-point

Menghapus Snapshot Stratis

Untuk menghapus snapshot, pertama-tama lepaskan snapshot tersebut.

unmount /stratis/my_pool_2/mysnapshot-2019-10-24

Selanjutnya, lanjutkan dan hancurkan snapshot:

stratis filesystem destroy my_pool_2 mysnapshot-2019-10-24

Menghapus Kumpulan Stratis

Untuk menghapus kumpulan Stratis, ikuti langkah sederhana di bawah ini.

1. Cantumkan sistem file yang ada di kumpulan.

stratis filesystem list <poolname>

2. Selanjutnya, lepas semua sistem file di kumpulan.

umount /stratis//filesystem-1
umount /stratis//filesystem-2
umount /stratis//filesystem-3

3. Hancurkan sistem file.

stratis filesystem destroy <poolname> fs-1 fs-2

4. Lalu, singkirkan kolam itu.

stratis pool destroy poolname

Dalam hal ini, sintaksnya adalah.

stratis pool destroy my_pool_2

Anda dapat memverifikasi daftar kumpulan lagi.

stratis pool list

Terakhir, hapus entri di /etc/fstab untuk sistem file.

Kita telah sampai pada akhir panduan ini. Dalam tutorial ini, kami menjelaskan bagaimana Anda dapat menginstal dan menggunakan Stratis untuk mengelola penyimpanan lokal berlapis di RHEL. Kami harap ini bermanfaat bagi Anda. Cobalah dan beri tahu kami bagaimana kelanjutannya.