0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

なんでNutanixのK8sかをちゃんと考えてみる

0
Posted at

なんでNKPなのかをちゃんと考える

前回はインフラ寄りの視点で、Kubernetesってそもそもなんで必要なのか、というところを整理した。

今回はもう少し踏み込んで、すでにK8sを触っている人に向けて、

クラウドのEKS、GKE、AKS、あるいはOpenShiftではなく、なぜNutanix Kubernetes Platformなのかをちゃんと考えてみようと思う。


Kubernetes単体では正直足りない

Kubernetesはあくまでコンテナを管理する仕組みでしかないので、実際の現場では、これだけでは全く回らない。

  • CI/CD
  • Service Mesh
  • Ingress
  • ストレージ / バックアップ
  • セキュリティ
  • 可観測性
  • ネットワーク
  • ポリシー管理
  • コスト管理

こういったものを全部組み合わせて、ようやーくクラウドネイティブな基盤になる。

つまり、Kubernetesを使うということは、周辺OSSをどう組み合わせるかという問題とセットになる。


Nutanix Kubernetes Platformは何をしているのか

Nutanix Kubernetes Platform (以下、NKP) はここを丸ごと解決しにきている。

周辺OSSを個別に選定するのではなく、

  • 事前に検証済み
  • 互換性が担保されている
  • ライフサイクル管理まで含まれている

こういった状態で提供される。

さらに、カタログからそのままデプロイできる形になっているので、構築というより、払い出しに近い感覚になる。


一番効いてくるのはDay0〜Day2

Kubernetesの辛さはだいたいここに集約される。

フェーズ やること つらいポイント
Day0 設計 何を組み合わせるか決める
Day1 構築 動く状態まで持っていく
Day2 運用 アップデート、脆弱性対応、互換性維持

Day0 / Day1

通常は、

  • CSIやCNIの選定
  • OSSの組み合わせ検証
  • ハードウェアとの相性確認

このあたりでかなり時間を使う。

NKPだと、検証済みスタックがそのまま使える。

誰が作っても同じ構成になるので、設計で悩む時間がかなり減る。


Day2

運用に入るとさらに厄介になる。

  • バージョン互換性
  • 脆弱性対応
  • アップグレード
  • 周辺OSS同士の依存関係

これを全部自分たちで見続ける必要がある。

NKPはここも含めて、周辺OSSのライフサイクル管理や互換性維持までカバーする。

運用の負担がかなり下がる。


クラウドとの違い

EKSやGKEは確かに便利。
だがしかし!すべてのお客様にとって最適とは限らない。

たとえば、

  • バージョンを自分たちの都合だけで完全にコントロールしづらい
  • 従量課金でコストが読みづらい
  • データを外に出す前提になりやすい
  • AIや機密データの扱いで制約が出る

NKPの場合は、

  • バージョン管理を自分たちで統制しやすい
  • コストをインフラベースで見やすい
  • ダークサイト運用も可能
  • データをオンプレミス側に置いたまま扱える

つまり統制と自由度のバランスが取りやすい


OpenShiftとの違い

じゃあオンプレでK8sならOpenshiftはどうなんじゃいということで。
ここは結構本質的な違いだと思っていまして。。。OpenShiftはKubernetes専用の基盤として独立する。

つまりは、別の箱モノが必要になります。

結果として、

  • VM基盤とK8s基盤が分かれる
  • 運用チームも分かれる
  • コストも二重になりやすい

ということが起きやすい。

一方でNKPは、既存のNutanix基盤の上にKubernetesを乗せる考え方なので、

  • VMとK8sが同じ基盤
  • 同じ管理画面
  • 同じ運用モデル
  • 既存のNutanix運用の延長で扱える

ここがかなり大きい。

Kubernetes用に新しい島を作るというより、今あるNutanixの島を拡張していくイメージに近い。


コンテナの弱点をどう扱うか

コンテナは基本的にステートレス。

つまり、コンテナそのものの中にデータを持ち続ける前提ではない。

  • コンテナは作って壊すもの
  • 中のデータは消える前提
  • 永続化するデータは外部の永続ボリュームに置く

ここをちゃんと理解しておかないと、本番運用でかなり怖い。

一般的なKubernetesだと、バックアップやデータ保護のために別製品を入れることが多い。

NKPの場合は、Nutanixのインフラ側でデータ保護を担える。

  • スナップショット
  • レプリケーション
  • 永続ボリューム管理

このあたりを、コンテナに負荷をかけずに実行できる。

コンテナの世界でも、VM運用に近い安心感を持てるのが強い。


マルチ環境の扱い

現実的には、Kubernetes環境は一つだけでは終わらない。

  • オンプレ
  • 複数クラウド
  • 複数クラスタ
  • 部門ごとの個別環境

こういう形で増えていく。

これを個別に管理すると、すぐに破綻する。

NKPでは、複数のKubernetesクラスタをまとめて管理する考え方がある。

  • 全クラスタを一画面で俯瞰
  • ポリシーを一括適用
  • 環境差を吸収
  • 標準化されたKubernetesの払い出し

いわゆる野良Kubernetesを防ぎやすくなる。

自由に使わせながら、ちゃんと統制も効かせる。

この両立ができるのが大事。


NKPの価値を整理すると

NKPの価値をシンプルにまとめると、こんな感じ.....

観点 一般的なKubernetes運用 NKP
構築 OSS選定と検証が必要 検証済みスタックを利用
運用 互換性やバージョン管理が大変 ライフサイクル管理を統合
データ保護 別製品が必要になりがち Nutanix基盤側で対応
管理 環境ごとに分断されやすい 複数クラスタを一元管理
既存基盤との関係 VM基盤と分かれやすい VMとK8sを同じ基盤で扱える

最後に

クラウドやOpenShiftでもKubernetesは使える。
けど、、、、Kubernetesを使えることと、ちゃんと運用できることは別の話!

楽に運用できるか。統制を効かせられるか。
既存のインフラ運用の延長で扱えるか。
といった現場の視点で見ると、NKPの立ち位置はちょっと違う!

NKPは、Kubernetesを特別なものとして別管理するのではなく、Nutanixの One Platform の中に取り込んでいく。

VMもKubernetesも、同じ基盤で、同じ考え方で、ちゃんと運用する。
これがNKPの一番わかりやすい魅力だと改めて思いましたとさっ

さてと、自宅のサーバー(CE)にNKP、入れてみようかなっ!
やるやる詐欺にならないようにここでちょっと宣言!

お楽しみに。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?