CRI-O adalah runtime container opensource dan ringan untuk Kubernetes. Ini adalah implementasi dari Kubernetes Container Runtime Interface (CRI) menggunakan runtime yang kompatibel dengan Open Container Initiative (OCI). Ini adalah alternatif sempurna untuk Docker saat menjalankan Kubernetes.
Dalam panduan ini, kami akan mendemonstrasikan cara menginstal CRI-O di Ubuntu 22.04 LTS langkah demi langkah. pengguna sudo dikonfigurasi pada instansKonektivitas internet yang cepat dan stabil
Dengan itu, mari kita mulai.
Langkah 1: Perbarui sistem dan Instal dependensi
Langsung, masuk ke server instans Anda dan perbarui daftar paket sebagai berikut.
$ sudo apt update
Setelah indeks paket lokal diperbarui, instal dependensi sebagai berikut.
$ sudo apt install apt-transport-https ca-certificates curl gnupg2 software-properties-common -y
Langkah 2: Tambahkan repositori CRI-O
Untuk menginstal CRI-O , kita perlu menambahkan atau mengaktifkan repositorinya di Ubuntu. Tetapi pertama-tama, Anda perlu menentukan variabel berdasarkan sistem operasi dan versi CRI-O yang ingin Anda instal.
Dengan demikian, tentukan variabel seperti yang ditunjukkan di bawah ini.
$ export OS=xUbuntu_22.04
$ export CRIO_VERSION=1.24
Setelah selesai, jalankan rangkaian perintah berikut untuk menambahkan repositori CRI-O Kubic.
$ echo “deb https://download.opensuse.org/repositories/devel:/kubic:/libcontainers: /stabil/$OS/ /”| sudo tee /etc/apt/sources.list.d/devel:kubic:libcontainers:stable.list
$ echo “deb http://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable:/cri-o:/$CRIO_VERSION/$OS/ /”|sudo tee /etc/apt/sources .list.d/devel:kubic:libcontainers:stable:cri-o:$CRIO_VERSION.list
Selanjutnya, impor kunci GPG untuk CRI-O repository
$ curl -L https://download.opensuse.org/repositories/devel: kubic:libcontainers:stable:cri-o:$CRIO_VERSION/$OS/Release.key | sudo apt-key add –
$ curl -L https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/$OS/Release.key | sudo apt-key add –
Ini menghasilkan keluaran berikut seperti yang ditunjukkan di bawah ini.
Sekali lagi perbarui indeks paket untuk menyinkronkan sistem dengan repositori CRI-O Kubic yang baru ditambahkan.
$ sudo apt update
Langkah 3: Instal CRI-O Di Ubuntu 22.04
Dengan repositori ditambahkan, instal CRI-O dan klien runtime menggunakan manajer paket APT.
$ sudo apt install cri-o cri-o-runc -y
Setelah diinstal, mulai dan aktifkan daemon CRI-O.
$ sudo systemctl start crio
$ sudo systemctl aktifkan crio
Berikutnya, verifikasi apakah layanan CRI-O sedang berjalan:
$ sudo systemctl status crio
Anda harus mendapatkan output berikut yang menunjukkan bahwa layanan CRI-O berjalan seperti yang diharapkan.
Langkah 4: Instal Plugin CNI Untuk CRI-O
Berikutnya , Anda perlu menginstal CNI (Container Network Interface) serta plugin CNI. Perlu diingat bahwa konfigurasi loopback dan bridge diaktifkan dan cukup untuk menjalankan pod menggunakan CRI-O.
Oleh karena itu, untuk menginstal plugin CNI, jalankan perintah berikut.
$ sudo apt install containernetworking-plugins -y
Setelah diinstal, edit CRI- O konfigurasi file
$ sudo nano /etc/crio/crio.conf
Uncomment network_dir & plugin_dirs section dan juga tambahkan ‘/usr/lib/cni/’ di bawah plugin_dirs section.
Simpan perubahan dan keluar dari file konfigurasi.
Selanjutnya, mulai ulang layanan CRIO.
$ sudo systemctl restart crio
Langkah 5: Instal alat CRI-O
Selain itu, Anda juga perlu menginstal paket cri-tools yang menyediakan utilitas baris perintah crictl yang digunakan untuk berinteraksi dan mengelola kontainer dan pods.
Untuk melakukannya, jalankan perintah:
$ sudo apt install -y cri-tools
Setelah diinstal, konfirmasikan versi crictl dan RunTimeVersion sebagai berikut.
$ sudo crictl –runtime-endpoint unix:///var/run/cr io/crio.sock version
Pastikan juga untuk memeriksa apakah CRI-O siap untuk menerapkan pod menggunakan perintah berikut:
$ sudo crictl info
Perintah crictl menyediakan fitur pelengkapan otomatis yang memungkinkan Anda melengkapi perintah secara otomatis dengan menekan tombol TAB. Untuk mengaktifkan penyelesaian perintah, jalankan perintah berikut.
$ sudo su –
# penyelesaian crictl > /etc/bash_completion.d/crictl
Kemudian muat ulang sesi bash saat ini.
# sumber ~/.bashrc
Untuk menggunakan fitur pelengkapan otomatis, Anda harus keluar atau memulai sesi terminal baru. Kemudian cukup ketik perintah crictl dan tekan tombol TAB untuk melihat semua opsi.
$ crictl
Langkah 6: Buat Pod menggunakan crictl utility
Sampai saat ini, CRI-O telah terinstal dan terkonfigurasi sepenuhnya dan siap untuk memutar pod. Pada bagian ini, kita akan membuat server web Apache di dalam pod dan mengonfirmasi apakah pod tersebut melayani permintaan.
Pertama, kita akan menyiapkan kotak pasir pod atau lingkungan yang terisolasi menggunakan file konfigurasi pod sebagai berikut.
$ sudo nano apache_sandbox .json
Kemudian kita akan menambahkan konfigurasi berikut ke file.
{
“metadata”: {
“nama”: “kotak pasir apache”,
“ruang nama”: “default”,
“percobaan”: 1,
“uid”: “hdishd83djaidwnduwk28bcsb”
},
“linux”: {
},
“log_directory”: “/tmp”
}
Simpan dan keluar. Selanjutnya buat pod menggunakan perintah berikut. Ini mencetak nomor alfanumerik panjang yang merupakan ID pod.
$ sudo crictl runp apache_sandbox.json
Untuk mengonfirmasi bahwa pod telah dibuat, jalankan perintah.
$ sudo crictl pods
Untuk mengambil informasi lebih lanjut tentang pod yang dibuat, jalankan perintah:
$ sudo crictl inspectp –output table 05ba2f0704f22
Ini mencetak ID, Nama, UID, Namespace, tanggal pembuatan, IP pod internal di antara detail lainnya.
Langkah 7: Buat wadah di dalam pod
Di bagian ini kita akan membuat server web Apache wadah di dalam pod. Jadi, gunakan utilitas crictl untuk menarik image server web Apache dari Docker Hub.
$ sudo crictl pull httpd
Anda dapat memverifikasi image yang ditarik seperti yang ditunjukkan.
$ sudo crictl images
Selanjutnya, kita akan menentukan file konfigurasi kontainer untuk web Apache server.
$ sudo nano container_apache.json
Salin dan tempel kode berikut.
{
“metadata”: {
“nama”: “apache”
},
“gambar”:{
“gambar”: “httpd”
},
“log_path”: “apache.0.log”,
“linux”: {
}
}
Simpan dan keluar dari file konfigurasi.
Akhirnya, untuk melampirkan kontainer ke pod kotak pasir yang dibuat sebelumnya, jalankan perintah:
$ sudo crictl create 05ba2f0704f22 container_apache.json apache_sandbox.json
Ini menghasilkan ID alfanumerik besar ke terminal.. Perhatikan of this ID.
Finally, use the ID to start the Apache web server container as follows.
$ sudo crictl start 37f4d26510965452aa918f04d629f5332a1cd398d4912298c796942e22f964a7
To check the container status, run the command:
$ sudo crictl ps
To verify that the Apache web server is running, send a Permintaan HTTP ke server web menggunakan perintah curl dan ID internal pod.
$ curl -I 10.85.0.2
Output berikut mengonfirmasi bahwa server web sedang berjalan.
Kesimpulan
Sekian dari panduan ini. Kami telah berhasil menginstal CRI-O di Ubuntu 22.04 dan melanjutkan untuk membuat pod dan wadah. Komentar dan umpan balik Anda diterima.
Baca Juga: Cara Memasang Docker di Ubuntu 22.04 / 20.04 LTS