cri-o とは?

cri-o

cri-o最新情報

NRIのOpenStandiaが提供するcri-o最新情報

cri-oの保守サポートサービスの内容はこちら cri-oの導入については、こちらのフォームからお問い合わせ下さい OSS全般の事例紹介はこちら

cri-oバージョンアップ情報

すべてを見る

更新日:2020-09-25

cri-oの概要

cri-oはKubernetes Incubator Projectとして開発を開始し、Kubernetes実装のコンテナランタイムとしてDockerに代わる軽量コンテナランタイムとして開発されています。現在はコミュニティ主導のオープンソースプロジェクトとして様々なコントリビューターの協力の元、開発が進められています。
cri-oはKubernetesのコンポーネントの一つである、kubeletとコンテナランタイムが通信するための高レベルランタイムのAPI仕様であるCRI(Container Runtime Interface)と、コンテナを直接操作する低レイヤラインタイムの標準仕様であるOCI(Open Container Initiative)という2つに準拠しています。CRI実装で、OCIランタイムとつながるという意味でcri-oと名付けています。
2017年10月にv1.0が正式版としてリリースされました。

現在の最新バージョンはcri-o 1.18.3です。(2020年8月現在)

TOPに戻る

cri-oの特徴

Dockerに依存しないコンテナランタイム OCIに準拠しているため、イメージの操作などをDocker利用せずに、cri-oで実行することが可能です。
OCI準拠 カーネルの機能等を利用しながら、コンテナの隔離環境の作成、操作を行う低レイヤランタイムに標準仕様に準拠しています。これによりDocker Hubなどのレジストに保存されたDockerイメージをcri-oにロードして、実行することが可能です。
CRI準拠 Kubernetesのコンポーネントであるkubeletからunix socket経由のgRPCで通信を行うI/Fの仕様に準拠しています。これによりKubernetesのコンテナランタイムとして使用することが可能です。
安定性 cri-oはKubernetesのメジャーリリースおよびマイナーリリースと連動して開発、テスト、リリースされること、およびCRI、OCIに準拠することで、Kubernetesで動作するランタイムとして安定性を高めています。
軽量化 Dockerコマンドのような豊富なコマンド体系は持たせず、Kubernetesのコンテナランタイムとして最適化されているため、Dockerよりも軽量化されています。

TOPに戻る

cri-oのコンポーネント

cri-oはGitHubにある以下のコンポーネントで構成されています。

OCI互換ランタイム cri-oはすべてのOCI互換ランタイムをサポートし、runCとClear Containersでテストされています。
コンテナ/ストレージ コンテナストレージライブラリはポッド内のファイルシステムレイヤ、コンテナ、イメージを管理します。
Overlayfs、devicemapper、AUFSおよびbtrfsが実装され、Overlayfsがデフォルトのドライバとして使用されます。
コンテナ/イメージ コンテナイメージライブラリはレジストリからイメージをプルするために使用されています。現在、Dockerスキーマ2/バージョン1とスキーマ2/バージョン2をサポートしています。
コンテナネットワークインターフェース Container Network Interface(CNI)はポッドのネットワークを設定するために使用されています。Flannel、Weave、OpenShift-SDNなどのさまざまなCNIプラグインがCRI-Oでテストされています。
モニタリング(common) commonはcri-o内のユーティリティでコンテナの監視、コンテナプロセスからのログ処理、接続クライアントの提供、メモリ不足(OOM)状況の検出に使用されます。
セキュリティ コンテナセキュリティ分離ポリシーは、SELinux、Capabilities、seccomp、およびOCI仕様で指定されているその他のセキュリティ分離ポリシーを含む一連のツールによって提供されます。

TOPに戻る

cri-oのアーキテクチャ

cri-oのアーキテクチャは以下の図の通りです。
CRIに準拠しているためkubeletと直接通信し、またOCIも準拠していることから低レイヤのコンテナランタイムとしてrunCと連携します。 cri-oのアーキテクチャ

出典:http://cri-o.io/

TOPに戻る

cri-oの動作環境

cri-oはKubernetes指向で開発されているコンテナランタイムです。Kubernetesに最適化されているため、Kubernetesでのみ動作します。

TOPに戻る

cri-oと同様の機能を提供する製品

コンテナランタイムとしてcontainerd、rktなどがcri-oと類似する機能を提供しています。

TOPに戻る

cri-oのライセンス

cri-oのライセンスは、 「Apacheライセンスバージョン2」(Apache License version2)というライセンスに基づいて公開され、営利、非営利を問わず、 誰でも自由かつ無償で利用・改変・再配布できるようになっています。

TOPに戻る

cri-oのサポート

現在、OpenStandiaではcri-oのサポート提供は行っておりません。

TOPに戻る

cri-oのダウンロード

cri-o公式サイト

TOPに戻る

OpenStandiaに関する
資料請求・お問い合わせはこちら

  • 資料請求
  • お問い合わせ

※定期的にメンテナンスを実施しておりますが、一部情報が古い場合がございます。ご了承ください。

  • OpenStandiaサポート対象オープンソース|50種類以上のOSSのサポートをご提供します。
  • 人気midPoint
  • 人気Keycloak
  • 注目MongoDB
  • ForgeRock AM(OpenAM)
  • ForgeRock IDM(OpenIDM)
  • MongoDB
  • Postfix
  • Apache HTTP Server
  • ZABBIX
  • PostgreSQL
  • Apache Struts
  • Apache Kafka
  • Apache Hadoop
  • Apache Spark
  • Spring Framework
  • Apache Tomcat
  • Solr
  • iBATIS
  • DRBD
  • MySQL
  • JBoss
  • Ruby on Rails
  • Jaspersoft
  • OpenLDAP
  • Apache log4j
  • Apache Subversion
  • ForgeRock DS(OpenDJ)
  • Pacemaker
  • Samba
  • Red Hat Enterprise Linux
  • Nginx
  • BIND
  • Dovecot
  • Pentaho
  • sendmail
  • Courier-IMAP
  • ForgeRock DS(OpenDJ)
  • Heartbeat
  • Hibernate
  • Hinemos
  • MyBatis
  • MySQL Cluster
  • Apache Axis2
  • Squid
  • OpenSSO