Pasang dan Gunakan LXD di Rocky/AlmaLinux 8|9
LXD adalah pengelola kontainer sistem generasi berikutnya yang dibangun di sekitar REST yang sangat kuat dan menawarkan pengalaman pengguna yang mirip dengan mesin virtual tetapi menggunakan kontainer Linux. LXD menggunakan citra Linux yang sudah dibuat sebelumnya yang tersedia untuk banyak distribusi Linux.
Dalam panduan ini, saya akan menunjukkan langkah-langkah sederhana untuk menginstal dan menggunakan LXD di server/Desktop Rocky/AlmaLinux. Instalasi ini akan menggunakan Snap, yang telah dibahas pada panduan Menginstal Snapd dan aplikasi Snap di Rocky/AlmaLinux.
Fitur LXD
Dari situs resmi LXD, fitur-fitur terbesar dari LXD yang disebutkan adalah:
- Aman secara desain (kontainer tanpa hak istimewa, pembatasan sumber daya, dan banyak lagi)
- Dapat diskalakan (dari container di ribuan node komputasi Anda)
- Intuitif (API yang sederhana dan jelas serta pengalaman baris perintah yang ringkas)
- Berbasis gambar (dengan berbagai distribusi Linux yang diterbitkan setiap hari)
- Dukungan untuk transfer container dan image antar-host (termasuk migrasi langsung dengan CRIU)
- Kontrol sumber daya lanjutan (CPU, memori, I/O jaringan, I/O blok, penggunaan disk, dan sumber daya kernel)
- Penerusan perangkat (USB, GPU, perangkat karakter dan blok Unix, NIC, disk, dan jalur)
- Manajemen jaringan (pembuatan dan konfigurasi jembatan, terowongan lintas host, …)
- Manajemen penyimpanan (dukungan untuk beberapa backend penyimpanan, pool penyimpanan, dan volume penyimpanan)
Menjalankan Kontainer LXD di Rocky/AlmaLinux
Sekarang mari kita mulai instalasi LXD di Rocky/AlmaLinux dengan mengikuti langkah-langkah di bawah ini
Langkah 1: Pasang snapd
Anda perlu menginstal snapd yang akan menyediakan alat baris perintah snap yang digunakan untuk menginstal paket LXD. Instal snapd dengan mengikuti panduannya:
- Menginstal Snapd dan aplikasi Snap di Rocky/AlmaLinux
Setelah Anda menginstal snapd, lanjut ke langkah 2
Langkah 2: Konfigurasikan Parameter Kernel
Beberapa opsi Kernel diperlukan oleh LXD untuk diaktifkan pada sistem. Konfigurasikan dengan menjalankan perintah berikut di terminal Anda. Jalankan perintah ini sebagai pengguna root.
grubby --args="user_namespace.enable=1" --update-kernel="$(grubby --default-kernel)"
grubby --args="namespace.unpriv_enable=1" --update-kernel="$(grubby --default-kernel)"
echo "user.max_user_namespaces=3883" > /etc/sysctl.d/99-userns.confAnda perlu me-reboot sistem setelah melakukan perubahan.
sudo rebootLangkah 3: Pasang snap lxd di Rocky/AlmaLinux
Akhirnya, pasang LXD snap dari toko snap
$ sudo snap install lxd
lxd (5.21/stable) 5.21.1-d46c406 from Canonical✓ installedInstalasi seharusnya memakan waktu singkat jika Anda memiliki koneksi internet yang baik. Anda dapat memastikan pemasangan paket menggunakan:
$ sudo snap list
Name Version Rev Tracking Publisher Notes
core20 20240416 2318 latest/stable canonical✓ base
core22 20240408 1380 latest/stable canonical✓ base
lxd 5.21.1-d46c406 28460 5.21/stable canonical✓ -
powershell 7.4.3 269 latest/stable microsoft-powershell✓ classic
snapd 2.63 21759 latest/stable canonical✓ snapd
$ sudo snap services
Service Startup Current Notes
lxd.activate enabled inactive -
lxd.daemon enabled inactive socket-activated
lxd.user-daemon enabled inactive socket-activatedLangkah 4: Meluncurkan kontainer LXD uji
Memastikan
echo 'export PATH="$PATH:/snap/bin/"'|tee -a ~/.bashrc
source ~/.bashrcMari tambahkan akun pengguna kita ke gruplxd agar dapat mengelola kontainer LXD tanpa kesalahan izin.
sudo usermod -aG lxd $USER
newgrp lxdMuat modul kernel.
sudo modprobe overlay
sudo modprobe br_netfilterPastikan modul dikonfigurasi untuk dimuat saat boot:
echo -e "noverlay\nbr_netfilter" | sudo tee /etc/modules-load.d/lxd.confMulai ulang layanan LXD.
sudo systemctl restart snap.lxd.daemon
Konfigurasikan lingkungan LXD menggunakan
$ lxd init
Would you like to use LXD clustering? (yes/no) [default=no]: no
Do you want to configure a new storage pool? (yes/no) [default=yes]: no
Name of the new storage pool [default=default]:
Name of the storage backend to use (btrfs, ceph, dir, lvm) [default=btrfs]: dir
Would you like to connect to a MAAS server? (yes/no) [default=no]:
Would you like to create a new local network bridge? (yes/no) [default=yes]:
What should the new bridge be called? [default=lxdbr0]:
What IPv4 address should be used? (CIDR subnet notation, “auto” or “none”) [default=auto]:
What IPv6 address should be used? (CIDR subnet notation, “auto” or “none”) [default=auto]:
Would you like LXD to be available over the network? (yes/no) [default=no]:
Would you like stale cached images to be updated automatically? (yes/no) [default=yes]
Would you like a YAML "lxd init" preseed to be printed? (yes/no) [default=no]:Daftar kontainer seharusnya mengembalikan daftar kosong
$ lxc list
+------+-------+------+------+------+-----------+
| NAME | STATE | IPV4 | IPV6 | TYPE | SNAPSHOTS |
+------+-------+------+------+------+-----------+Untuk menampilkan daftar gambar VM yang tersedia jalankan:
lxc image list images:Contoh nama gambar yang tersedia:
- fedora/40
- time
- rockylinux/9
- rockylinux/8
- oracle/9
- almalinux/8
- almalinux/9
# Rocky linux 8|9
lxc image list images:centos/9-Stream
debian/12Buat kontainer Rocky Linux 8 untuk pengujian dengan menjalankan:
# lxc launch images:rockylinux/8 rocky-8-container
Creating rocky-8-container
Starting rocky-8-containerLuncurkan kontainer Ubuntu dengan menjalankan:
# lxc launch images:ubuntu/22.04 ubuntu-container
Creating ubuntu-container
Starting ubuntu-containerDaftar wadah Anda:
# lxc list
+-------------------+---------+-----------------------+-----------------------------------------------+-----------+-----------+
| NAME | STATE | IPV4 | IPV6 | TYPE | SNAPSHOTS |
+-------------------+---------+-----------------------+-----------------------------------------------+-----------+-----------+
| rocky-8-container | RUNNING | 10.249.233.129 (eth0) | fd42:380b:91a6:efc0:216:3eff:fece:1ee3 (eth0) | CONTAINER | 0 |
+-------------------+---------+-----------------------+-----------------------------------------------+-----------+-----------+
| ubuntu22 | RUNNING | 10.249.233.40 (eth0) | fd42:380b:91a6:efc0:216:3eff:feb1:7d6f (eth0) | CONTAINER | 0 |
+-------------------+---------+-----------------------+-----------------------------------------------+-----------+-----------+
| ubuntu-container | RUNNING | 10.249.233.189 (eth0) | fd42:380b:91a6:efc0:216:3eff:fe6f:7d3e (eth0) | CONTAINER | 0 |
+-------------------+---------+-----------------------+-----------------------------------------------+-----------+-----------+Hentikan, mulai, muat ulang, hapus, periksa informasi sebuah kontainer
lxc start container
lxc stop container
lxc restart containerDapatkan info tentang sebuah container menggunakan opsi perintah info
lxc info containerContoh output:
Untuk lebih banyak pilihan baris perintah, jalankan
lxc --help
lxc command --help e.g lxc start --helpBuku Linux yang Direkomendasikan untuk Dibaca:
- Buku Linux Terbaik untuk Pemula & Ahli
- Buku Pemrograman Kernel Linux Terbaik
- Buku Scripting Bash Linux Terbaik
Anda telah berhasil menginstal LXD di Rock/AlmaLinux melalui snap dan membuat kontainer lxc. Terima kasih telah menggunakan panduan kami. Jika Anda mengalami masalah, jangan ragu untuk meninggalkan komentar.
