Upgrade to Pro — share decks privately, control downloads, hide ads and more …

🐙 KubernetesのマルチテナントパターンとArgoCDの実践テナント設計

🐙 KubernetesのマルチテナントパターンとArgoCDの実践テナント設計

Kubernetes Novice Tokyo #29』の登壇資料です

・Kubernetesのマルチテナントパターンの種類
・ArgoCDのAppProjectテナントとNamespacedスコープモード
・ArgoCDのテナントが防いでくれる誤った操作の具体例

を紹介しました

ArgoCDのマニフェストの実装例を解説できませんでしたので、ぜひ元記事 (KubernetesのマルチテナントパターンとArgoCDの実践テナント設計) もご参照ください👍🏻

長谷川広樹 (俺です)

December 21, 2023
Tweet

More Decks by 長谷川広樹 (俺です)

Other Decks in Programming

Transcript

  1. マイクロサービスアーキのインフラ領域が仕事 ・マイクロサービスアーキを支えるインフラ技術 ・ドメイン駆動設計 俺です 社内で色々ふざけ過ぎてるので、そろそろ怒られるかもー ・サービスメッシュ (Istio ←推し❤) ・IaC (Kubernetes,

    Helm, Terraform) ・CICD (GitLab CI, ArgoCD) ・監視 (Prometheus, Fluentd, Kiali, OpenTelemetry入門中) ・クラウドインフラ (AWS, ちょいGoogle Cloud) マイクロサービスアーキ関連の技術が好き 虫捕りついでに 虫食ってた話 する?
  2. Kubernetesでは適切なテナントパターンを採用しよう Clusters as-a-Service Control Planes as-a-Service Namespaces as-a-Service カスタムリソース テナント

    テナント 単位 実際のCluster 仮想Cluster Namespace ツール固有の論理空間 説明 テナントごとに 独立した Cluster テナントごとに 独立した コントロールプレーン (仮想Cluster) テナントごとに 独立した Namespace テナントごとに 独立した ツール固有の論理空間 ツール  ⚫ AWS EKS  ⚫ GCP GKE  ⚫ Azure AKE  ⚫ Kubeadm    ・Kcp    ・tensile-kube    ・vcluster    ・VirtualCluster -  ⚫ ArgoCD (AppProject)  ⚫ Capsule (Tenant)  ⚫ Kiosk (Account)  ⚫ KubeZoo (Tenant)
  3. KubernetesのテナントパターンをArgoCDで “実践” する 実Cluster テナント 仮想Cluster テナント Namespace テナント AppProject

    テナント CLモード AppProject テナント NSモード 対応する テナントパターン Clusters as-a-Service Control Planes as-a-Service Namespaces as-a-Service カスタムリソーステナント ArgoCDが テナント間で 占有 / 共有 占有 占有 占有 共有 占有 おすすめ ★ ★★ 今回 紹介する実践 ✅ ✅
  4. AppProjectテナント & Namespacedスコープモード で最強のテナントを作る Namespacedスコープモード AppProjectテナント ⚫ Namespace = プロダクト

    ⚫ AppProject = サブチーム 誤ったプロダクトや 誤ったサブチーム管理下に マニフェストを デプロイさせない󰘐 &