ACS事業部の谷合です。
私もプライベートでマルチクラスタに取り組んでおり、非常に興味を惹かれました。
SIG-Multiclusterでの取り組みと、Multiclusterのアーキテクチャをご紹介します。
以下が、アーキテクチャ図となります。
出典:Multicluster Services API Overview - SIG Multicluster
ClsuterSet
以下の特徴があるそうです。
- 単一の権限によって管理されるクラスタのグループ
- ClusterSet内での高い信頼性
- クラスタ間でnamespaceは同一であり、クラスタ間でnamespaceを共有し、論理的なnamespaceとして機能する。
API
Multicluster間でclusterIDをどのように保持するか以下のKEPによって議論されています。 github.com
Multicluster Service
クラスタ間での通信を行うにあたり、Endpointを共有する必要があります。
Multicluster Serviceを使うことで各クラスタのEndpointをClusterSet内のEndpointとして扱うことが可能となります。
github.com
Gateway + MCS
Gateway APIをご存じでしょうか?
そう、Ingressの後継リソースですね。
このbackeendRefフィールドにMulticluster ServiceのAPI情報を書けば、クラスタ間でもL7通信ができるようになるそうです。
apiVersion: gateway.networking.k8s.io/v1beta1 kind: HTTPRoute metadata: name: store spec: parentRefs: - name: external-http rules: backendRefs: - group: multicluster.k8s.io kind: serviceImport name: store port: 8080
Multiclusterは注目されてきており、複数クラスタを束ねた仮想的なクラスタ構築にも応用できる分野だと思います。
これからも是非ウォッチしていきましょう!
ちなみにAzureにもFleet ManagerというMulticlusterを扱うサービスがあります。
以下弊社でもFleet Managerの検証記事を執筆しているので、こちらも併せてご確認いただけると嬉しいです。
techblog.ap-com.co.jp
ACS事業部のご紹介
私達ACS事業部はAzure・AKSなどのクラウドネイティブ技術を活用した内製化のご支援をしております。
www.ap-com.co.jp
また、一緒に働いていただける仲間も募集中です!
今年もまだまだ組織規模拡大中なので、ご興味持っていただけましたらぜひお声がけください。
www.ap-com.co.jp