未解決
Community Manager
•
3.1K メッセージ
0
724
【Coffee Break】Amazon EKS Anywhere って何?Dell Technologies製品との関係は?
この投稿は「ちょっとしたストレージ関連技術のTIPSを思いついたら書いてみる」というコンセプトで、デル・テクノロジーズ社内のTeamsグループ/チームでゆる~く運営されている「Coffee Break」からの情報抜粋です。今回は社内クラウド&Dell APEXスペシャリストからの投稿を抜粋しました。
最近Dell Technologiesのコンテナプラットフォームの対応にAmazon EKSのロゴが出てたりしてますが、それって何よ?ということで、オンプレのソリューションとして出てきた、Amazon EKS Anywhereを取り上げたいと思います。
EKS Anywhereって何?
Amazon EKS(以下EKS)は既に皆さんもご承知のように、AWS上で提供されるフルマネージド型のKaaSですが、EKS Anywhere(以下EKS-A)をその延長で捉えてしまうと誤解してしまう部分があるので、改めてEKS-Aって何?から説明していきたいと思います。私も初めて聞いた時に「おっ、Outposts不要でフルマネージドのEKSがオンプレでお安く実現できるのか?」と期待したのですが、実体は大きく異なるものでした。
EKS-Aですが、実はこれAWSのサービスではありません。なので、
・ AWSコンソールから展開できません!
・ AWSによってフルマネージされるわけでもありません!
じゃ、一体何なのよ???EKS-AはAmazonがメンテナンスしているフリーのK8sディストリビューション(EKS Distroと呼ぶ)をAWSの外で容易に使えるようにしたフリーの「プロダクト」と思ってください。これを表にまとめてみました。
フルマネージドで提供されるEKSのオファリングとしては、EKS/Fargate、EKS/EC2、EKS/Outpostsの3つとなり、オンプレでフルマネージドのEKSが欲しいユーザーはこれまで通りAWS Outpostsが選択肢となります。
これに対してEKS-Aは全くAWSがマネージに関与する部分がなく、実体は無償のEKS DistroとEKS-A CLIというツールだけ。どちらかと言うと、DIYでEKS Distroを使うのに近いイメージです。DIYとの大きな違いとしては、
- Amazon謹製でEKSの運用と一貫性あるCLIが使える
- vSphere環境に一発で展開(最近、Ubuntuのベアメタルもサポートされました)
- AWSの有償サポートを受けられる
などが挙げられ、「オンプレで」「EKSと似た運用がいい」「OSS系ツールを駆使せずにサクッと立てて運用したい」「あとサポートも!」というところにハマるのではと思います。
EKS-Aの仕組み
これも図にまとめました。
オンプレサイドで必要なのは、vSphere7の環境と管理用マシンです。管理用マシンはDockerが動くUbuntuまたはMacOS環境です。また、EKSおよびEKS-Aサブコマンド用のCLIも併せてインストールしておきます。展開の流れはザっとこんな感じです。
- EKS-A CLIからEKS-Aクラスタ展開用のマニフェスト(YAMLファイル)を生成
- データストアやリソースプールなど、自身のvSphere環境のパラメータをマニフェストに反映
- 修正したマニフェストを実行
- 管理用マシンでBootstrap(Dockerで動く小さなK8s)が起動し、マニフェストを使用してvSphereにEKS-Aクラスタを展開(K8s上でPodを展開する理屈と同じです)
- 用が済んだBootstrapを破棄
実際の展開後のvCenterからのイメージはこんな感じです。指定したリソースプールにEKS-Aクラスタ(Master、Worker、etcd)が展開されています。
あとEKS-Aがいいなと思ったのは、vSphere CSIが既に設定済みであること。vSANデータストア環境であれば、追加設定なしにPersistent Volumeが作成できます。また、通常のVMFSデータストアでもvCenter上で適当な仮想マシンストレージポリシーを作成して、これをEKS-Aのストレージクラスとして追加してあげれば、Persistent Volumeを作成可能です。
こちらがそのvCenterからのイメージです。VMFSデータストアのFCDフォルダにVMDKが作成されていますが、これはFCD (First Class Disk) と呼ぶ仮想マシンに紐づかない特殊属性のVMDKで、これがEKS-AからPersistent Volumeとして利用されます。PowerCLIを使うとEKS-AのPersintent Volume ClaimとVMDKパスのリレーションも確認できますが、このあたりの煩雑な永続データのバックアップをPowerProtectは、Application Awarenessということでチャチャっとやってくれるわけですね。
また、vSphere上に展開されたEKS-AクラスタにEKS Connectorを導入すると、EKSコンソール上にインベントリ管理などを集約可能です。
EKS-Aにおけるデルのオファリング
EKS-Aそのものはベンダー色が薄く、デルとの組み合わせ必須というわけでもありませんが、何よりも市場で認知度が高いK8sディストリビューションであること、vSphere環境との親和性が高く、Amazonが提供するツールでDIYなしに容易に運用できることなどから、vSphereを活用する我々の幅広い製品ポートフォリオとの組み合わせで両者のメリットを補完できるオファリングは意外に多いんです。既に幾つかのリファレンスアーキテクチャも出ています。
EKS Anywhere on VxRail
この組み合わせは非常にいいなと思います。2ノードVxRailとの組み合わせで拠点向けシステムをすばやく構築、EKS-Aでコンテナアプリケーションを配信みたいなユースケースでしょうか。
あと、VxRailダイナミックノードとPowerStore Tとの組み合わせも検証済みです。こちらもPowerStore上のVMFSデータストアを活用することであまり手を加えずに信頼性あるストレージ上で永続データ管理もという要件に対応できるソリューションになりそうです。それではPowerStoreがもったいない、PowerStoreの機能をもっと活用したければ、vSphere CSIではなく、PowerStore CSIとCSM (Container Storage Module)の組み合わせもありです。
EKS Anywhere on PowerStore X
https://infohub.delltechnologies.com/p/exploring-amazon-eks-anywhere-on-powerstore-x-part-i/
エッジロケーションで生成される大量データを効率的に処理なら、EKS-AとPowerStore Xも面白い組み合わせです。正直、Tanzuよりも敷居が低そう(笑)
EKS Anywhere on PowerFlex
https://infohub.delltechnologies.com/p/powerflex-and-amazon-destination-eks-anywhere/
OutpostsはAWSとの親和性はあるけど、設置も何かと制約あるし、価格もということなら、PowerFlexとの組み合わせはどうでしょう?スケーラビリティと性能面、堅牢性でもOutpostsを圧倒的に凌駕するEKS基盤が提案できるのでは?
他、ベアメタルもサポートされたことから、PowerEdge XR Ruggedサーバーなどもエッジばら撒きに最適なのではと思います。
AWSをご利用しているお客様に対して、このような提案もあるということを頭の片隅に留めておいてもらえればと思います。