Skip to content

Instantly share code, notes, and snippets.

@svngoku
Last active March 13, 2023 14:13
Show Gist options
  • Save svngoku/8b02c5298c4030d2c568a19e47dc61ab to your computer and use it in GitHub Desktop.
Save svngoku/8b02c5298c4030d2c568a19e47dc61ab to your computer and use it in GitHub Desktop.
cri-o : un bon remplaçant à Docker ?

alt text

CRI-O est une implémentation de la CRI (interface conteneur) de Kubernetes pour permettre l'utilisation de runtimes compatibles avec OCI (Open Container Initiative). C'est une alternative légère à l'utilisation de Docker comme runtime pour kubernetes. Cela permet à Kubernetes d'utiliser n'importe quel runtime compatible OCI comme runtime de conteneur pour l'exécution de pods. Aujourd'hui, il prend en charge runc et Kata Containers en tant que runtimes de conteneur, mais tout runtime conforme à OCI peut être branché en principe.

CRI-O prend en charge les images de conteneur OCI et peut être extrait de tout registre de conteneurs. C'est une alternative légère à l'utilisation de Docker, Moby ou rkt comme runtime pour Kubernetes.

CRI-O fonctionne avec toute image respectant l'OCI. Il fonctionne avec tout registry de conteneur , aussi il fonctionne avec tout OCI Container Runtime : run , gvisor, crun .

Il fonctionne uniquement avec kubernetes.

Il rejoint CNCF (Cloud Native Computing Foundation).

L'architecture CRIO n'est pas de type Client - Serveur.

Composants et outils

  • K3S : est une distribution Kubernetes très legère .

  • podman : est un moteur de conteneur sans deamon permettant de développer, de gérer et d'exécuter des conteneurs OCI sur votre système Linux / Unix. ( il peut remplacer Docker)

    • Meme commandes que Docker:
        alias Docker = podman
    • Plus besoin de Deamon .
    • Effectue des builds en appelant buildah.
    • Aide les utilisateurs à la transition k8s.
  • buildah

    • Build des images OCI
    • Plus besoin d'un deamo, Docker pour les build des images
    • Possible de construire des images avec ou sans DockerFile
  • skopeo:

    • Permet d'inspecter les images container , et aussi inspecter les images au niveau du registry.
    • Copier les images d'un endroit vers un autre .
    • Copier les images entre deux containers .

Notions de base

pod : Un pod est un groupe d'un ou plusieurs conteneurs qui fonctionnent ensemble. Les pods résident sur les nœuds ; plusieurs pods peuvent partager le même nœud. Les conteneurs de chaque pod partagent des ressources de stockage et de réseau communes à partir de ce nœud hôte, ainsi que des spécifications qui déterminent le fonctionnement des conteneurs.

OCI: ( Open Container Initiative ).

CRI: ( Container Runtime Interface).

httpd : Apache HTTPD est un deamon de serveur HTTP produit par Apache Foundation. C'est un logiciel qui écoute les requêtes réseau (qui sont exprimées à l'aide du protocole de transfert hypertexte) et y répond.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment