
はじめまして、大槻です。
IaC(Infrastructure As Code) やxDevOps(クラウド・コンテナ技術のリソースをアプリケーションチームとインフラチーム両方の視点で設計から運用までに付加価値を与える)関連の業務を担当しています。

3年ぶりに米国ラスベガスで開催されているAWS re:Inventに初参戦しています。
速報レポートとして、初日のセッションの中から、新しく発表された「Amazon EKS Anywhere」についてご紹介します。
(参照:https://aws.amazon.com/jp/eks/eks-anywhere/)
Kubernetes virtually anywhere, for everyone
11月28日 17:30~18:30
Sheetal Hrishikesh Joshi, Senior Developer Advocate, AWS
Barry Cooks, VP of Kubernetes, AWS
Sharmila Ramar, Head of Cloud and Devops Engineering, MassMutual

Amazon EKS Anywhereは、Amazon Elastic Kubernetes Service(Amazon EKS)に追加されたデプロイオプションの1つです。
Amazon EKSは、AWSでKuberentesを実行するためのマネージド Kubernetes サービスで、クラスタ構成のうち、コントロールプレーンと呼ばれるPodやクラスタの制御管理を司るマスター部分を、マネージド提供してくれます。Amazon EKS Anywhere は、既にあるオンプレミスのインフラストラクチャ環境上にKubernetes クラスタを配備し、AWSマネージメントコンソールからEKSインスタンスの1つとして管理できるようになる仕組み、と考えると理解しやすいかもしれません。
セッションでは、AWS Kubernetesバイスプレジデント Barry Cooks氏は、提供する機能や構築条件の他、コストやパフォーマンスを有効活用するためのツール、 Amazon EKSロードマップを紹介し、次のように語りました。
「 新しいサービスを『提供する』『知ってもらう』で終わりにはしない。
市場にある技術のニーズをとりあげ、
より多くのリソース(サービス)を提供し、
世界に必要な選択肢を増やすことに重点を置いている。
AWSユーザーが新しい次のステップに進むための 『選択肢を増やす』 ことを重要課題としている。」
(大槻的超意訳)
新しいリソースの発表ということに加え、Barry Cooks氏のコメントがもっとも印象的で、初参戦のエンジニア魂が衝撃を与えられた瞬間でした。
Amazon EKS Anywhereの3つのポイント クラウド統合‣エコシステム‣機構とオープンソース
Amazon EKS Anywhereは、「クラウド統合」、「エコシステム」、「機構とオープンソース」の3つのポイントを押さえておくとよいでしょう。
ポイント1:クラウド統合 Seamless cloud integration

Amazon EKSでは、AWSまでの通信経路や運用基盤環境として以下のサービスが利用できます。
・AWS Outposts
・AWS Wavelength
・AWS Local Zones
・AWS Regions
オンプレミス環境にKubernetesを配置する場合、AWSのリソースを利用するには外部連携が必要になります。しかし、Amazon EKS Anywhereを利用することで、オンプレミスのインフラストラクチャ環境上にKubernetesクラスタを配置した場合でも、AWSリソースと直接連携が可能になりAWSクラウド内のAmazon EKSと同様の管理下におかれるため、AWSリソースを利用するための外部連携の仕組みは不要です。
Amazon EKS Anywhereは、オンプレミス環境でもAmazon EKSと同様にKubernetesの利用が可能になる選択肢を提供します。

サーバレスを採用したプロジェクトでは、「コンテナで稼働するコントローラロジックを軽量に実行したい」、「性能要件を満たすためにAWSの中のDynamoを利用したい」、「xDevOpsのためにできるだけ管理・運用をマネージド選定してしまいたい」などと検討することがあります。そんな時、どこにも繋ぎ目のないクラウド統合が選択肢となることで自分の設計守備範囲が大きく広がっていくのは、とても素敵だと思います!!
ポイント2:エコシステム Native and Stream

既存のオンプレミスインフラストラクチャ環境の上にKubernetesが導入されている場合、現行の環境のままAmazon EKS Anywhere を展開できます。新たにオンプレミス環境を構築する必要がないエコシステムであることが2つ目のポイントです。

例えば、以下の様なVirtual Machine(VM)基盤環境が既に展開されているとしましょう。
・VMware
・BareMetal
・Apache Cloud Stack
・Nutanix
VMインスタンスの1つとしてKubernetes が実行可能ならば、EKS Anywhere infrastructure が導入できるのです。さらに、VMインスタンスのOSは、Bottlerocket※だけでなく、Ubuntu8、RHEL のディストリビューションが選択できるので、システム設計の選択肢が広がります。
プロジェクトの上流工程に参画する場合、基盤選定時に新たな基盤の機材となる専用マシンの導入や運用・教育などの学習コストなどで頭を悩ますことがあります。既存環境の基盤が再利用できることでその悩みから解放されるのは嬉しいことです。もちろん、これまでKubernetesを導入していなかった場合でも、KubernetesかAmazon EKS Anywhereを選択し、VMインスタンスとして導入する選択肢を与えられることになります。既存環境が再利用できるエコシステムという発想が素晴らしいですね。
※Bottlerocket
コンテナを実行するために AWSによって特別に構築された Linux ベースのオープンソースオペレーティングシステム。
https://aws.amazon.com/jp/bottlerocket/
ポイント3:機構とオープンソース Committed to open source

Amazon EKS AnywhereもAmazon EKSもKubernetes が内部に採用されていますが、Kubernetes自体がetcd、 OpenTelemetry、cortexなどのOSSの集合体を統合してできています。今回のセッションでは、以下の様な、それぞれのOSSに対するコミュニティへの貢献や寄稿などの取り組みが紹介されました。
・新機能の追加やバグフィックスの際の、ソースコードや、より詳しい有用なドキュメントの寄稿
・品質向上のためのテストケースやベストプラクティスの提案
・バグフィックスの対応やセキュリティパッチの提供
OSSを利用すると、ドキュメントの内容に不足を感じたり、PoCや評価中にバグを見つけたりします。しかし、OSSは皆で作りあげていくものです。OSSの改善に協力する姿勢も大事ですし、たくさんのエンジニアが参加することでよりよいモノができあがっていくのも醍醐味でしょう。OSSに歩み寄るコミュニケーションを選択したAWS社の考え方に共感しました。

まとめ
私が参画するxDevOpsのプロジェクトは3つのスキルを持つエンジニアで構成されています。
・インフラ ・・・ 最適なインフラストラクチャを主軸にシステムを最大限に引き出す
・アプリケーション ・・・ ソフトウェアをより実現可能な形にプログラム開発を主軸に具現化する
・アジャイル ・・・ チームビルドによって迅速に様々な角度からアプローチする
それぞれの観点を有効活用することで、ビジネスインテグレーションに繋がります。xDevOpsエンジニアとして、AWS re:Inventで感じたことを3つ、まとめとしてお話しします。
1 ついに道具を揃えたAWS
今回11回目となるAWS re:Inventでは、日々新しく生まれる技術やニーズに対応するためのリソースが発表されていると感じています。
「基礎的に皆が欲しがっている道具(リソース)は、用意できた。だから、道具を組み合わせてニーズに対応する新しいサービスを提供していきますよ」
というAWS社からのメッセージと受け止め、発表されるリソースやブレイクアウトセッションに興奮している毎日です。
2 OSSを大切にしている
パビリオンやセッションなどで、マーケットプレースやコミュニティの展開についてアピールされています。
AWS やリソースなどのサービスをHubとすることで、AWS社は製品やOSSの発展に向けた仕組み作りをしていると感じました。
OSSとコミュニティを大切にすることを起点に発展していけば、素晴らしいリソースが発明され、選択肢が増えていくと感じました。
Blackbelt「黒帯」→「柔道」→「理念」の言葉を借りれば「自他共栄」ですね。
3 皆を大切にしている
リソースが提供され道具は揃うのですが、反面 「エンジニアたちは、数とスピード感からすべてのリソースを把握しきれない、追従できていない」という話を耳にします。
AWS re:Inventでは、AWS社は私たちエンジニアに寄り添っていると感じました。
・新たなAmazonリソースを発信することで、選択の機会を提供している。
・いつでも追従できるよう情報・コミュニケーションの場を提供している。

AWS re:Invent は続いています。「一緒に本当の未来に続く道を見つけてみませんか」といえる様々な情報を集めてこようと思います。
富士ソフトのAWS関連サービスについて、詳しくはこちら
アマゾンウェブサービス(AWS)