技術

基本的な K8s アーキテクチャテンプレート

Ingress、Service、Deployment、Pod、ストレージと設定

基本的な K8s アーキテクチャテンプレートのプレビュー

テンプレートの中身

ノード数
8
パック
基本Kubernetes
カテゴリ
技術

Free プランで使えます:ダイアグラムあたり 15 ノード+メモ・テキスト・ステッカー・マインドマップのトピック 150。

このテンプレートは、本番環境の API のための最小限の Kubernetes アーキテクチャです。Ingress がトラフィックを Service に送り、Service が Deployment を公開し、Deployment が2つの Pod を動かします。Pod はデータを PersistentVolumeClaim に保存し、設定を ConfigMap から読み込みます。

どの要素もアイコン付きの汎用ボックスではなく、Kubernetes パックに含まれる本物の Kubernetes ノードです。エッジにはそれぞれの役割として「ルーティング」「公開」「実行」「保存先」「設定元」というラベルが付いています。自分のクラスター図の出発点として使い、Namespace、Secret、オートスケーラーなどを加え、図が表すマニフェストのそばに置いておきましょう。

使いどころ

  • サービスを Kubernetes に移す前、または移した後にドキュメント化するとき。
  • Ingress から Pod までのリクエストの流れを新しいメンバーに説明するとき。
  • 移行の前に、ストレージと設定の依存関係を確認するとき。
  • 設計ドキュメントや運用手順書に、わかりやすいアーキテクチャ図を載せたいとき。

使い方

  1. Service、Deployment、ConfigMap の名前を自分のワークロードに合わせて変えます。

  2. サービスが実際に使っているレプリカ、Namespace、Secret などのリソースを Kubernetes パックから追加します。

  3. エッジのラベルを正確に保ち、図がリクエストとデータの流れとして読めるようにします。

  4. リンクをチームと共有するか、ドキュメント用に SVG や PNG で書き出し、アーキテクチャが変わるたびにバージョンを保存します。

よくある質問

Kubernetes のマニフェストを取り込めますか?

はい。マニフェストや kubectl get -o yaml の出力を無料の「Kubernetes YAML を図に変換」ツールに貼り付けるか、エディタの「YAML をインポート」を使います。Namespace はフレームになり、Ingress、Service、ワークロード、ConfigMap、ボリュームは YAML のつながりどおりに結ばれた Kubernetes ノードとして描かれ、そのまま編集できます。Docker Compose ファイルも同じように取り込めます。

どの Kubernetes リソースが使えますか?

Kubernetes パックには 33 種類のリソースがあります。Namespace、Node、Pod、Deployment、StatefulSet、DaemonSet、ReplicaSet、Job、CronJob、Service、Ingress、IngressClass、Gateway API の Gateway と Route、NetworkPolicy、ConfigMap、Secret、PersistentVolume と PersistentVolumeClaim、StorageClass、ServiceAccount、Role、ClusterRole とそれぞれの Binding、HorizontalPodAutoscaler と VerticalPodAutoscaler、PodDisruptionBudget、ResourceQuota、LimitRange、Webhook、CustomResourceDefinition、カスタムリソースです。

Kubernetes をクラウドや C4 の図と組み合わせられますか?

はい。クラウド、C4、ネットワークなどのパックが同じキャンバスで使えるので、クラスターをクラウドのリージョンの中に描いたり、それが実装する C4 のコンテナの隣に置いたりできます。

関連テンプレート

関連するユースケース

Kubernetesアーキテクチャ図

1分でキャンバスを開く

Google または GitHub でサインイン。1シートは無料で、チームが加わったらアップグレード。