Devop Skills

How to Install CRI-O on Ubuntu For Kubernetes?

Are you looking at how to Install CRI-O on Ubuntu For Kubernetes? Read on.

Today’s ever-changing world of container orchestration has genuinely become the standard accepted method in which Kubernetes plays the premium role.

With its valuable, enhanced capabilities, it’s among the best and most appealing to pick the suitable container runtime.

Get certified in Kubernetes on Linux Foundation using the CKA coupon code 2023 for an extra discount.

As you know, the installation of Kubernetes on Ubuntu, CRI-O delivers the most exciting and effective container runtime; this is also one of the reasons for its growth and popularity.

So, let’s get started with CRI-O.

What is CRI-O?

To make a perfect start, let’s first look at what CRI-O is and why it is the most.

CRI-O is an open-source container runtime specially created for Kubernetes. So first, we look into the Key Benefits and features of CRI-O, which are like:

Key Benefits of CRI-O

  1. Compatibility: CRI-O is specially created for Kubernetes to maintain a reliable and smooth container runtime framework.
  2. Security: CRI-O gives an enhanced security feature like SELinux and seccomp to protect your containers and clusters.
  3. Performance: As per my experience CRI-O truly provides less latency, which is one more benefit of it to translate into a greater performance for your applications.
  4. Resource Efficiency: CRI-O makes it possible to optimize your resources to their fullest potential.

Prerequisites To Install CRI-O

Before you start the installation process, always remember to follow these criteria:-

1. Ubuntu Server

So, now you have to ensure a clean Ubuntu server installation. You can use the latest LTS version for stability and long-term support. You always have to keep the Ubuntu server installation fresh. To maintain stability, long-term support uses the latest version.

2. SSH Access

To execute your commands remotely, use SSH to connect to the Ubuntu server. And if you’re not familiar with SSH, there are many other online resources to help you with the setup process easily.💻

3. Root Privileges

You must be aware of root or sudo access on your server. Because this will allow you to install and modify system-level changes.

Learn how to create a self-signed certificate by following this easy guide.

How to Install CRI-O on Ubuntu? (Steps by Step)

To install CRI-O on Ubuntu for Kubernetes, you can follow the following steps:

Step 1: Prerequisites

Ensure you have a running Ubuntu system with the appropriate privileges. You’ll need to use sudo for some commands.

Step 2: Install Dependencies:

Update your package manager and install the necessary dependencies:

sudo apt update
sudo apt install software-properties-common

Step 3: Add the CRI-O Repository:

Add the CRI-O repository to your system. Create a file in /etc/apt/sources.list.d/crio.list And add the following line:

echo "deb /" | sudo tee /etc/apt/sources.list.d/crio.list

Import the GPG key for the repository:

curl -L | sudo apt-key add -

Replace xUbuntu_20.04 with your Ubuntu version if it’s different.

Step 4: Install CRI-O:

Update your package manager again and install CRI-O:

sudo apt update
sudo apt install cri-o

Step 5: Configure CRI-O:

CRI-O has a default configuration file located at /etc/crio/crio.conf. You can modify this file according to your needs, but the default configuration should work for most use cases.

Step 6: Start and Enable CRI-O:

Start the CRI-O service and enable it to start on boot:

sudo systemctl start crio
sudo systemctl enable crio

Step 7: Validate CRI-O Installation:

You can use the crictl tool to validate the installation. First, install crictl:

tar -xvf crictl-v1.21.0-linux-amd64.tar.gz
sudo mv crictl /usr/local/bin/

Now, check the CRI-O runtime status:

crictl info

This should provide information about CRI-O, confirming that it’s installed and running.

Step 8: Configure Kubernetes to Use CRI-O:

To configure Kubernetes to use CRI-O as the container runtime, you should typically specify the CRI-O socket in the kubelet configuration. Edit the kubelet configuration file (usually located at /etc/systemd/system/kubelet.service.d/10-kubeadm.conf) and add or modify the --container-runtime-endpoint flag to point to the CRI-O socket. Here’s an example:


Step 9: Restart Kubernetes Services:

After updating the kubelet configuration, restart the kubelet Service:

sudo systemctl daemon-reload
sudo systemctl restart kubelet

Congrats! You have successfully installed CRI-O on Ubuntu; now, you can configure it as the container runtime for Kubernetes.

Dockerfile is the fundamental component required to create a Docker image; learn how to build a Docker image in an easy-step guide.


Well done! You have successfully installed a CRI-O on your Ubuntu server for Kubernetes. So, because of this powerful tool, you can now operate your containerized application easily and more securely.

Remember the priority of choosing tools like CRI-O can make all the difference in your container orchestration journey in the Kubernetes environment.

I hope you have enjoyed installing CRI-O on Ubuntu For Kubernetes.

Refer to this guide for checking Kubernetes cluster health status.

Leave a Reply

Your email address will not be published. Required fields are marked *


Subscribe Newsletter

Copyright 2023 © Devopskills All Rights Reserved.


Avail a 20% instant discount on a huge training catalog using our special

Linux Foundation Coupons: UPWRITEZ20