Cloud Native Computing Foundation (CNCF)は先頃、Cluster APIプロジェクトが実運用レベル(production-ready)に到達し、v1beta1
APIに移行したことを発表した。クラスタAPIはKubernetesのサブプロジェクトとして、クラスタの生成、設定、更新を行う宣言型APIを提供する。
Cluster APIプロジェクトは、KubernetesスタイルのAPIとパターンを使用して、プラットフォームオペレータによるクラスタライフサイクル管理を自動化する。任意のインフラストラクチャ(AWS、Azure、vSphereなど)、あるいはブートストラッププロバイダ(デフォルトはkubeadm)をサポートすることができる。利用可能なプロバイダのリストは、現在も拡張を続けている。
インフラストラクチャのデプロイと管理を行うエンジニアは、仮想マシン、ネットワーク、ロードバランサ、VPC(仮想プライベートクラウド)、Kubernetesクラスタコンフィギュレーションを、同じような方法で定義することが可能になる。
MicrosoftのプリンシパルソフトウェアエンジニアリーダのDavid Justice氏は言う。
"この1年間、Azure Container Upstreamチームでは、自分たちのKubernetesテストをCluster APIエコシステムに移植して、Azure Kubernetesシナリオ検証ではオープンソースのCNCFツールのみを使用するようにするための作業に取り組んできました。これはコミュニティにとっても、Microsoftにとっても大きな成果です。Azure上のKubernetesを、コミュニティが所有し、コラボレーションの中でメンテナンスされるツールで検証できるようになるのです。近い将来、Azure上のKubernetesの検証テストはすべて、Cluster APIを使って実行されるようになります。"
プロジェクトの目標は以下のとおりだ。
- 宣言型APIを使用したKubernetes準拠クラスタのライフサイクル管理
- さまざまな異種環境において — オンプレミスでもクラウドでも — 正常に機能すること
- 日常作業の定義、デフォルト実装の確立、実装を代替案と交換する機能の提供
- 既存エコシステムコンポーネントの再利用と統合(node-problem-detector、cluster autoscaler、SIG-Multi-clusterなど)
- Kubernetesライフサイクルプロダクトが段階的にCluster APIを採用するための移行パスの提供
昨年1年間、Cluster APIプロジェクトコミュニティは、コードとAPI、そしてドキュメントの安定化に向けて多大な努力を払ってきた。APIバージョン間の自動変換や、clusterctrlツールを使った自動アップグレードもサポートされている。ユーザからのフィードバックは、リリース1.0が実運用レベルに達したことを示唆している。
Kubernetes Special Interest Group (SIG) Cluster Lifecycleは、Cluster APIプロジェクトをスタートさせた。VMware、Microsoft、Weaveworks、Google、Mattermost、IBM、RedHat、D2iQ、Equinix、Apple、Talos Systems、Spectro Cloud、Daimler TSS、Ericsson、Giant Swarm、AppsCode、Intel、Twilio、New Relic、Amazonといった企業にコントリビュータがいる。
興味のある読者は、Slackチャネル#cluster-apiの会話に加わって、Cluster APIプロジェクトにコンタクトを取るとよいだろう。SIG Cluster Lifecyle Google Groupがあり、カレンダやドキュメントへのアクセスを提供している。Cluster APIプロジェクトコミュニティは水曜日の太平洋時刻午前10時、Zoom上で週次のワーキンググループセッションを開催している。ミーティングの議事録と録音も公開されている。