バージョンアップ情報
containerd情報
containerdとは
containerd(コンテナーディー)は、コンテナのライフサイクルを管理するシンプルで堅牢な、コンテナランタイムで、LinuxのデーモンまたはWindowsのサービスとして動作します。containerdは、2014年にDocker社によりDockerエンジンの下位層ランタイムマネージャーとして開発が始まり、2017年3月にCNCFに譲渡され、2019年2月にはKubernetes、Prometheus、Envoy、CoreDNS に続くGraduated(卒業)プロジェクトになっています。
主な特徴
containerdは、イメージの転送、ストレージからのコンテナの実行と監視、低レベルのストレージ、ネットワークアタッチメントなどに至るまで、ホストシステムのコンテナライフサイクルを管理します。
- 高性能なコンテナランタイム:軽量で高性能なコンテナランタイムを提供し、効率的なコンテナ管理が可能です。
- コンテナのライフサイクル管理:コンテナの作成、起動、停止、削除などのライフサイクルを管理します。
- 低オーバーヘッド:シンプルな設計により、オーバーヘッドが少なく、高速なパフォーマンスを実現します。
- 標準化されたAPI:OCI (Open Container Initiative) の標準をサポートし、他のツールやプラットフォームとの互換性が高いです。
- セキュリティ強化:コンテナのセキュリティを強化し、適切な権限管理を行います。
- Kubernetesとの連携:Kubernetesとの連携が容易で、コンテナオーケストレーションに対応しています。
- 多様なプラットフォーム対応:LinuxとWindowsの両方で動作し、幅広いプラットフォームに対応しています。
以下はcontainerdのアーキテクチャの概念図です。
動作環境
containerd の公式バイナリは、amd64(x86_64) および arm64(aarch64) アーキテクチャで動作します。Linux系OSである CentOS、Debian、Fedora、Ubuntu の DEB および RPM パッケージ containerd.io は、containerd プロジェクトではなく Docker によって配布されています。
公式バイナリによるインストール方法は下記を参照して下さい。
apt-get または dnf を使用してcontainerd.io パッケージをインストールする方法については、Docker のドキュメントを参照してください。
Windows の場合は、PowerShell を使用してインストールします。
インストール方法の詳細は下記を参照して下さい。
Kubernetesとの関係
当初、Kubernetes は、コンテナランタイムとして Docker Engine のみをサポートしていましたが、その後リリースされたコンテナランタイムのための共通インタフェースである、CRI(Container Runtime Interface)もサポートするようになりました。Docker Engine はCRI と互換性が無かったため Docker Engine とCRIとの橋渡しをする dockershim というソフトウェアが開発されました。
dockershim は、暫定的な物として開発されていたため、Kubernetes v1.24 からは削除され、ユーザーがコンテナランタイムを選択して使用することが出来るようになりました。選択可能なコンテナランタイムは、containerd、CRI-O、Docker Engine、Mirantis Container Runtime があります。
Dockerとの関係
containerd は、Docker Engine のサブセットであり、コンテナの実行、ストレージの処理、およびイメージに関する Docker の機能のほとんどを備えています。開発者向けの機能は多くないですが、コンテナオーケストレーションの大規模なシステムでの使用に適しています。なお、Docker Engine はcontainerdをバックグラウンドで使用しています。
containerdのライセンス
containerd のライセンスは、Apache License 2.0 となっており、ユーザーはそのソフトウェアの使用や頒布、修正、派生版の頒布をすることに制限を受けません。
参考情報
オープンソース年間サポートサービス
OpenStandiaではOSSを安心してご利用いただけるように、オープンソース年間サポートサービスをご提供しております。
サポートしているOSSは下記ページをご参照ください。
関連OSS
-
サポート対象
Kubernetes
クーバネティス。Dockerをはじめとするコンテナ化されたアプリケーションの展開、スケーリング、管理を行うオープンソースのプラットフォームです。
-
サポート対象
Docker
ドッカー。ソフトウェアコンテナを用いたアプリケーションのデプロイメントを自動化する仮想化オープンソースソフトウェアです。
-
サポート対象
CRI-O
CRI-OはKubernetes Incubator Projectとして開発された、Kubernetes実装のコンテナランタイムです。