カスタム検索
表示順:
Relevance
Relevance
Date
ウェブ
 
 
 

Kubernetes、Dockerに依存しないKubernetes用の軽量コンテナランタイム「cri-o」正式版1.0リリース

2017年10月19日

Kubernetesに最適化された軽量なコンテナランタイム「cri-o」の正式版、「cri-o 1.0」がリリースされました

cri-o

cri-oは、Kubernetesの育成プロジェクト(Kubernetes Incubator Project)として開発されています。

Red Hatに所属するcri-oエンジニアリングチームのDaniel Walsh氏は、cri-oのオフィシャルブログに投稿された記事「CRI-O 1.0 is here」で、Dockerに依存しないコンテナランタイムであるcri-oの開発動機について次のように説明しています。

We felt at the time that the upstream Docker project was changing too quickly and was making Kubernetes unstable. We felt that perhaps by simplifying the container runtime we could do better.

そのとき(訳注:cri-oの開発を検討し始めたとき)、Dockerプロジェクトはあまりに早く変化しすぎていて、Kubernetesを不安定にしていた。そこで、私たちなら多分、シンプルにしたコンテナランタイムをもっとうまくつくれるだろうと考えたのだ。

cri-oはOCIとCRIの2つの標準に準拠

cri-oは2つの標準に準拠したコンテナランタイムです。

1つはコンテナランタイムおよびコンテナイメージの標準仕様を規定しているOCI(Open Container Initiative)への準拠です。これにより、すでにOCIに準拠しているDockerコンテナ用のイメージはそのままcri-oでも実行できます。

つまり、Docker Hubなどのレジストリに保存されたDockerイメージを、cri-oにロードしてそのまま実行可能だということです。

もう1つの標準はKubernetes 1.5から開発が進んでいる「CRI」(Kubernetes Container Runtime Interface)です。これはKubernetesとコンテナランタイムとのあいだで命令や情報をやりとりするためのAPI仕様です。

CRIに準拠したコンテナランタイムであれば、Kubernetesのコンテナランタイムとして使うことができます。

OCIとCRIの標準の位置づけを図にすると以下のようになります。

cri-oが対応するOCIとCRI

現在、ほぼすべてのコンテナランタイムはOCI対応であり、今後Kubernetesの普及を考えればCRI対応も進んでいくはずです。KubernetesはこのCRI標準に対応したコンテナランタイムであればcri-oでもDockerでも任意のコンテナランタイムが利用可能になると説明されています。

要するに、Kubernetes側から見ればコンテナランタイムを自由に選べることになるのです。

cri-oとDockerの競合と共存

cri-oはKubernetesに最適化されたコンテナランタイムという点で、Kubernetesを統合すると発表したDockerと競合する側面を持つことは間違いありません。

本番環境などにおいてより軽量で安定したコンテナランタイムとして、cri-oがDockerよりも選ばれることは十分にありえます。

一方で、cri-oはコンテナランタイムとして最適化されているため、Dockerコマンドのようなコンテナを操作するための柔軟なコマンド体系や、Dockerイメージを生成する機能などを備えていません。

そのためアプリケーションの開発フェーズやコンテナイメージの作成などにおいて使われるのは間違いなくDockerでしょう。

現時点でcri-oとDockerの位置づけはこのように解釈し住み分けができると考えることができます。しかし、コンテナ周りはまだまだダイナミックな動きが続いており、いつ意外なことが起きても不思議ではないでしょう。

参考

関連記事

follow us in feedly

カテゴリ Docker / コンテナ / 仮想化
タグ  cri-o , Kubernetes


前の記事
[速報]次バージョンのDocker for Win/Macでは、ローカルにKubernetes環境も自動構築。DockerCon Europe 2017


カテゴリ



Blogger in Chief

photo of jniino Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで : Feed

人気記事ランキング

  1. 「Bash on Windows」という名称は非推奨に。正式名称「Windows Subsystem for Linux」(WSL)としてベータを卒業、正式リリースに
  2. [速報]GitHub、依存関係表示でのパッケージやアプリケーション対応、セキュリティアラートなどの新機能発表。GitHub Universe 2017
  3. [速報]DockerがKubernetesとの統合およびサポートを発表。DockerCon EU 2017
  4. GitHub CEOが語るソフトウェア開発の未来。ソフトウェア開発とは問題の解決であり、コーディング作業はゼロになっていく。GitHub Universe 2017
  5. Azureの北欧州データセンター、定期メンテナンス時の消火剤放出が原因で空調停止、温度が上昇し自動シャットダウンへ。7時間にわたり一部にサービス障害
  6. HashiCorp創業者、ミッチェル・ハシモト氏に聞く(前編)~HashiCorpを設立した経緯、エンタープライズ市場へフォーカスする理由とは?
  7. [速報]次バージョンのDocker for Win/Macでは、ローカルにKubernetes環境も自動構築。DockerCon Europe 2017
  8. 通信SIM上でJavaアプレットを実行する「SORACOM SIMアプレット」発表、SIMがプログラマブルなプラットフォームに。ソラコム
  9. HashiCorp創業者、ミッチェル・ハシモト氏に聞く(後編)~ハシモト氏と日本の関係、そしてファウンダーとしての役割とは
  10. GitHubでもっとも人気の言語はJavaScript、フォークされたのはTensorFlow。GitHubが今年の統計情報「The State of the Octoverse 2017」を発表


新着記事 10本


PR - Books


fig

fig

fig