containerdとは?
こんてなでぃー
containerdとはコンテナのライフサイクル管理を担うOCI準拠のコンテナランタイムで、KubernetesなどのCRI実装として広く使われます。
containerdは、コンテナの実行・停止・イメージ管理・スナップショット管理などを担うコンテナランタイムです。もとはDockerの内部コンポーネントとして開発されましたが、2017年にCNCF(Cloud Native Computing Foundation)へ寄贈され、独立したプロジェクトとして管理されています。2019年にはCNCFのGraduatedプロジェクトに昇格しました。
containerdはKubernetesのCRI(Container Runtime Interface)を実装しており、多くのマネージドKubernetesサービス(Amazon EKS・Google GKE・Azure AKSなど)で標準のコンテナランタイムとして採用されています。Dockerを使う場合も、内部ではcontainerdが実際のコンテナ管理を行っています。
containerdの主な責務は以下のとおりです。
- OCI準拠イメージの取得・保存・管理
- コンテナの起動・停止・削除(内部でrunCを呼び出す)
- ネットワークとストレージのライフサイクル管理
- gRPCベースのAPIによる上位層との通信
エンドユーザーが直接containerdを操作する機会は少ないですが、クラウドネイティブなインフラの根幹を支えるコンポーネントとして重要性が高く、インフラエンジニアが知っておくべき基礎知識です。
使い方・例文
Kubernetesクラスターを構築する際、以前はDockerが使われていましたが、現在は多くの場合containerdが直接CRIとして設定されており、Dockerのインストール不要でコンテナを実行できます。
この用語をシェア
最終更新: