開発者コミュニティに向けて、新たなプラットフォーム「kubriX」が発表された。このプラットフォームは、広範なカスタム開発なしで完全に機能する内部開発者プラットフォーム(IDP)を構築できると主張している。開発者アドボケイトであるArtem Lajko氏を含む貢献者によって開発されたもので、Lajko氏はこれに関する詳細な投稿を行っている。kubriXは、Argo CD、Kargo、Backstage、Keycloakといった既存のツールを統合し、現代的なIDPを導入したいと考えるチームに向けた「すぐに使えるソリューション」として設計されていると開発者らは説明している。
kubriXは、Lajko氏が指摘する業界共通の問題に対処しようとしている。Lajko氏によると、セルフホスト型のオープンソースIDPがデプロイ直後にすぐに機能することを求められる一方で、現行のプラットフォームは複雑であり、組織が既に行った多くのアーキテクチャの選択を反映しなければならないため、チームは、どのツールを選べばよいのかという膨大な選択肢に圧倒されていた。
多くの企業はすでに基盤となるインフラを運用しており、Argo CDなどを用いたGitOpsのセットアップ、Helmチャートを利用したサードパーティアプリケーションのデプロイ、Terraformモジュールによるクラウドプロビジョニング、Keycloakのような認証システムなどが含まれている。しかし、Lajko氏によれば、これらの実装には通常、開発者が標準化されたテンプレートを用いてサービスをプロビジョニングできる真のセルフサービスレイヤーが欠けているという。Lajko氏は、kubriXがこのギャップを埋めることを目指していると説明している。kubriXは、厳選された構成要素に基づく、方針の明確でありながら柔軟なプラットフォームを提供している。このシステムは、Argo CDをオーケストレーターとして使用し、既存の「App of Apps」パターンを採用して、各コンポーネントを定義された順序でデプロイおよび管理する仕組みを備えている。
このプラットフォームのアーキテクチャは、複数の機能層で構成されている。継続的デリバリーにおいては、Argo CDを活用したGitOps手法を推奨している。アプリケーションのテンプレート化やスキャフォールディング機能は、Spotify社のBackstageとの統合によって提供される。マルチテナンシーやスケジューリングに関しては、Kubernetesを基盤とし、Capsuleなどの追加ツールを導入することで適切な分離を実現している。さらに、セキュリティとコンプライアンスの強化として、証明書管理のためのCert-Manager、秘密情報管理のためのExternal Secrets Operator、ポリシー管理のためのKyvernoを組み込んでいる。
デプロイメントプロセスには最小限の前提条件が必要であり、稼働中のKubernetesクラスターと有効なkubeconfigファイルが求められる。kubriXはクラスターのプロビジョニングを行わず、既存のクラスターがあることを前提としている。ブートストラッププロセスでは、環境変数を定義し、セットアップスクリプトを実行することで、約30分で完全なデプロイメントが開始される。
kubriXは、チームのオンボーディングに対して包括的なアプローチを取っていると主張している。このプラットフォームは、Backstageを通じて利用可能なテンプレートを提供し、GitHub組織内でチーム向けのプルリクエストを自動生成し、App of Appsリポジトリを構築する仕組みを備えている。このプロセスには、チームがリソースをデプロイするためのソースリポジトリの定義や、チーム固有のArgo CDアプリケーションに必要な構造の構築が含まれる。また、KubernetesクラスターのApplicationSetコントローラーに対して、組織的なスコープを設定する機能も提供している。
kubriXは、アプリケーションのプロモーションワークフローにKargoを使用しており、チームがアプリケーションを複数のステージを経て本番環境までデプロイできる仕組みを提供している。アプリケーションがチームのデプロイメントステージを進む過程では、パイプライン管理の可視化が可能となっている。また、Argo CDのAppProjectsを活用することで、共有されたArgo CDインスタンス内で、許可されたリポジトリ、ターゲットクラスター、ネームスペース、Kubernetesリソースを定義し、マルチテナンシーと適切なチームベースの分離を実現している。
Lajko氏は、プラットフォームの実装に関する現実的なタイムラインを強調しており、ベンダーが約束する即時機能とは対照的であると述べている。
数年ではなく数週間で完全に稼働するIDPを手に入れましょう。実績のあるアーキテクチャとモジュール式で柔軟な構成要素によって実現されます。Artem Lajko氏
このプラットフォーム全体は、複数の組織的役割を持つ関係者のニーズを満たすことを目指しており、セルフサービス機能、カタログ化された再利用可能なサービス、統合されたドキュメント、パイプラインの統合、マルチテナンシー対応の認証、そしてAPIファーストの設計原則を提供している。ただし、すべての組織的要件を完全に満たすことを目指しているわけではなく、意見主導型のIDPを通じて、現代的なプラットフォーム開発へと進化するチームのための包括的な基盤を構築することを目的としている。このプラットフォームは、開発の負担やカスタム統合作業を最小限に抑えながらIDPを構築したいと考える組織を対象としている。
kubriXは、すでにいくつかの確立されたソリューションが存在する競争の激しいIDP市場に参入した。これらのソリューションは、内部プラットフォーム開発に対するアプローチが異なる点が特徴である。中でも、Spotify社のBackstageは最も認知度の高いオープンソースの開発者向けポータルとされており、拡張可能なプラグインシステムや包括的なマイクロサービスのカタログ化機能を提供している。業界分析によると、Backstageは大企業による採用や充実したサードパーティエコシステムの恩恵を受けているが、本番環境での利用には大幅な設定作業が必要とされている。
Portは、セルフサービスのプロビジョニングとガバナンス機能を重視したコンポーザブルな開発者ポータルを提供している。kubriXの意見主導型アーキテクチャとは異なり、Portは拡張性とカスタマイズ性に重点を置いており、組織が自分たちに合わせたソリューションを構築できる。しかし、この柔軟性は、実装にかかる時間が長くなる可能性がある。
競争力の評価によると、他の代替ソリューションはより広範な統合や、より確立されたエコシステムを提供する場合があるものの、特に規制産業でコンプライアンス管理が必要な場合には、より多くのカスタマイズが求められることが多い。
KubriXは、すべてのコンポーネントを事前統合することで即時の機能を提供しようとする点で他と異なるアプローチを取っている。ただし、この意見に基づいたアプローチは、定義上、よりモジュール型の代替案と比較して柔軟性を制限する可能性がある。それでも、AWS、Azure、Google Cloud、オンプレミス環境での展開に対応していると主張。KubriXは現在ダウンロード可能であり、商用プランでも利用可能だ。