LXD

Tutorial LXD

Tutorial LXD

Asas LXD: Apa itu? Dan bagaimana menggunakannya?

Pengendalian kontena LXD tidak mendapat perhatian utama yang dilakukan oleh Docker, tetapi sebenarnya lebih dekat dengan idea teras mengenai virtualisasi sistem operasi. Tetapi sebelum kita sampai di sana, mari kita bincangkan mengenai virtualisasi tahap perkakasan kontemporari.

Virtualisasi perkakasan

Cara tradisional dengan cara VMware, VirtualBox, KVM dan teknologi serupa berfungsi adalah ini - Anda mempunyai komputer kelas pelayan, katakan pemproses Xeon kelas atas dengan RAM 512 GB, yang dikenali sebagai logam telanjang. Anda memasang sistem operasi pada ini, yang kemudian akan menjalankan VMware, Virtualbox atau KVM.

Ini pelbagai penyelia hiper, dan sistem operasi yang menjalankannya adalah sistem operasi hos.

Sekarang, apa yang ditawarkan oleh hypervisor adalah - Ia meniru CPU, antara muka rangkaian, cakera penyimpanan, memori, I / O dan sumber lain sehingga sistem operasi baru dapat dipasang di atas set perkakasan maya. Sistem operasi baru ini adalah sistem operasi tetamu dan ia berjalan pada perkakasan maya, seperti jika dipasang pada mesin fizikal, tetapi ada tangkapan.

Sekiranya anda berfikir, "Tetapi meniru pelbagai peranti perkakasan menggunakan perkakasan yang sebenarnya terdengar tidak cekap dan lambat."Anda betul. Virtualisasi tahap perkakasan lambat dan tidak cekap.

Lebih-lebih lagi, sistem operasi itu sendiri adalah frekuensi kawalan. Sekiranya anda memperuntukkan tetamu RAM 1GB dan 2 teras CPU, ia akan menggunakan semua sumber dengan senang hati walaupun aplikasi yang berjalan di dalamnya hanya menggunakan sebahagian kecilnya. Sumber ini tidak akan dapat digunakan oleh hypervisor di tempat lain.

Ini sangat mengehadkan bilangan VM yang boleh dijalankan di atas hypervisor. Sekiranya anda adalah penyedia hosting awan, ini bermakna garis bawah anda akan terpukul teruk.


Cara kontena untuk melakukan sesuatu

Idea perkakasan maya dilemparkan keluar dari tingkap ketika kita mula bercakap mengenai bekas dan khususnya LXD. Daripada mencontohi sumber perkakasan individu, apa yang cuba kita lakukan adalah memvisualisasikan sistem operasi.

Apabila bekas LX diputar, OS menawarkan dirinya (iaitu kernel, perpustakaan semua sumber yang ada padanya) ke aplikasi yang berjalan di dalam bekas. Pengguna dan aplikasi di dalam bekas ini tidak akan mengetahui aplikasi dan pakej yang berjalan di luarnya, dan sebaliknya.

Sejauh peruntukan sumber, anda boleh membuat nota untuk tidak membenarkan wadah tertentu menggunakan lebih banyak daripada, katakanlah, 2GB RAM dan 2 CPU. Dengan cara ini, apabila aplikasi yang berjalan di dalam wadah tidak melakukan sesuatu yang intensif, sumber daya dapat diperuntukkan di tempat lain di persekitaran host.

Walau bagaimanapun, apabila aplikasi berjalan di bawah beban berat, mereka mendapat prestasi logam kosong!

Kekurangan yang jelas adalah bahawa anda tidak boleh menjalankan sistem operasi sewenang-wenangnya sebagai tetamu. Kerana sistem operasi yang berbeza mempunyai seni bina yang berbeza sama sekali. Nasib baik untuk pengguna GNU / Linux, kernel Linux menawarkan keserasian ABI yang ketat sehingga anda dapat meniru pengedaran yang berbeza di atas kernel yang sama. Oleh itu, anda boleh menjalankan binari CentOS dan aplikasi Ubuntu pada logam yang sama hanya dalam bekas yang berbeza.


Init LXD

LX containerization adalah teknologi yang diuji dengan baik dan mantap untuk sistem operasi berasaskan Linux. Ia mempunyai dua komponen utama, satu adalah LXC yang menguruskan konfigurasi kontena, fail gambar, dan lain-lain dan kemudian ada LXD yang merupakan daemon yang berjalan di host anda memastikan bahawa semua dasar yang ditetapkan untuk containerization dipatuhi.

Ia dipasang secara lalai pada Ubuntu Server 16.04 LTS, jika anda menggunakan distro desktop, jalankan:

$ apt memasang lxd lxd-client

Setelah selesai, anda diminta untuk memulakan pelbagai parameter. Perintah berikut akan menuntun anda:

$ lxd init

Anda boleh memilih pilihan lalai dari sini.  Perkara yang paling terlibat ialah mengatur antara muka rangkaian. Apabila diminta untuk penyediaan rangkaian LXD, pilih pilihan lalai ya.

1 Jawab ya, sekali lagi, apabila diminta untuk menetapkan rangkaian

Tetingkap seterusnya akan meminta nama antara muka rangkaian (seperti yang dilihat pada host), tinggalkan pada nilai lalai lxdbr0.

Pengaturan subnet IPv4 akan muncul selepas ini. Ini akan membolehkan kontena LX berbeza untuk bercakap antara satu sama lain seolah-olah mereka adalah komputer yang berbeza di rangkaian tempatan. Pilih ya untuk ini.

Selanjutnya akan ada beberapa 10.202.X.Alamat X ditunjukkan masing-masing dengan peranan yang berbeza pada subnet ini. Anda boleh menekan enter tanpa perlu mengubah pilihan. Apabila diminta untuk konfigurasi NAT, pilih iya.

Ini membolehkan kontena anda mendapatkan sambungan ke internet, menggunakan IP awam host, sama seperti komputer riba dan peranti lain yang dilakukan melalui penghala rumah (dengan pemajuan port).

Pilihan terakhir mengenai subnet IPv6 adalah pilihan sepenuhnya dan saya mengesyorkan anda menghilangkannya buat masa ini. Katakanlah tidak, apabila diminta untuk pilihan IPv6.


Memusingkan bekas

Untuk menjalankan contoh baru, katakanlah, Ubuntu 16.04, jalankan arahan berikut:

Pelancaran $ lxc ubuntu: 16.04 name_of_your_container

Oleh kerana ini adalah kali pertama anda menjalankan pelayan Ubuntu, akan mengambil masa untuk mengambil gambar bekas dari repositori jauh. Setelah selesai, anda dapat melihat perincian mengenai bekas yang dilancarkan, dengan menjalankan perintah:

senarai $ lxc

Dalam contoh ini nama bekas adalah samb1.

Sekiranya anda ingin masuk ke dalam bekas, jalankan arahan;

$ lxc exec name_of_your_container bash

Ini akan menjatuhkan anda ke shell bash yang berada di dalam bekas itu. Ia akan berbau dan terasa seperti pemasangan Ubuntu 16 yang baru.04 dan anda boleh memasang pakej dengan bebas di dalamnya dan melakukan pelbagai eksperimen yang anda tidak akan mempertaruhkan pemasangan utama anda.

Sekarang kerana anda mempunyai fail gambar yang disimpan secara tempatan di sistem hos anda, anda dapat memutar bekas Ubuntu dengan cepat dan menggunakannya sebagai sistem pakai buang.

Untuk menghentikan dan memadam bekas LX, jalankan;

$ lxc stop Container_name $ lxc delete container_name 

Gunakan arahan pelancaran lxc, seperti yang anda lakukan pada kali pertama untuk membuat bekas baru.


Mana boleh pergi dari sini

Sekarang setelah anda mengetahui apa seni bina LXD, anda mungkin ingin mula meneroka topik seperti rangkaian dan penyimpanan untuk bekas dan cara mengkonfigurasinya agar sesuai dengan beban kerja anda.

Anda mungkin juga ingin mengetahui perbezaan utama antara Docker dan LXD dan apa yang sebenarnya sesuai dengan keperluan anda. Sekiranya anda ingin menggunakan ZFS sebagai backend storan anda (sebagaimana mestinya!) anda mungkin ingin melihat tutorial ini mengenai asas ZFS.

Aplikasi Pemetaan Gamepad Terbaik untuk Linux
Sekiranya anda suka bermain permainan di Linux dengan gamepad dan bukannya sistem input papan kekunci dan tetikus biasa, ada beberapa aplikasi berguna...
Alat Berguna untuk Pemain Linux
Sekiranya anda suka bermain permainan di Linux, kemungkinan anda telah menggunakan aplikasi dan utiliti seperti Wine, Lutris dan OBS Studio untuk meni...
HD Remastered Games untuk Linux yang Tidak Pernah Melancarkan Linux Sebelumnya
Banyak pembangun dan penerbit permainan hadir dengan penghapus HD permainan lama untuk memperpanjang usia francais, harap peminat meminta keserasian d...