Kubernetesプロジェクトが、単一Kubernetesクラスタの分割利用のための仕組みである「ネームスペース」を階層化することにより、さらにきめ細かな利用制御を実現する「階層型ネームスペース」を、ブログポストで紹介した。
この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。
Kubernetesプロジェクトは2020年8月14日(米国時間)、「階層型ネームスペース(Hierarchical Namespaces)」への取り組みをブログで紹介した。これはKubernetesプロジェクトのマルチテナンシーワーキンググループ(wg-multitenancy)が開発を進めているもので、「Hierarchical Namespaces Controller(HNC)」のv0.5.1がGitHubで公開されている。
単一のクラスタを複数のチームや組織が分割利用できるように、Kubernetesでは「ネームスペース」という仕組みがある。これを使うことでオーナーシップを分離でき、さらにその作成や利用に明示的な認可を適用できる。
だが、現状のネームスペースには限界がある、とエイドリアン・ルドウィン氏はブログポストで説明した。例えば単一のチームにおいて、複数のマイクロサービス群を運用している場合、それぞれに異なる認証情報やリソース割り当てを適用することができない。単一のチームが複数のネームスペースを運用することは可能だが、オーナーが同一であるにもかかわらず、これらのネームスペース間でセキュリティポリシーの一部を共通化することができない。また、新規ネームスペースの作成は、高権限所有者に限定されている。チームの誰かが新たなネームスペースを使いたいと思っても、クラスタ管理者にチケットを上げるしかない。これは小規模組織では問題がなくとも、組織が大型化すれば大きな負担となる。
こうした問題の解決を目指し、マルチテナンシーワーキンググループはHNCの開発を進めているという。
「最もシンプルな言い方をすれば、階層型ネームスペースは通常のKubernetesネームスペースではあるものの、単一のオプションとしての親ネームスペースを認識する小さなカスタムリソースを備えている。これにより、単一ネームスペース内のみならず、複数ネームスペースにまたがるオーナーシップというコンセプトを確立できる」(ルドウィン氏)
Copyright © ITmedia, Inc. All Rights Reserved.