AWS re:invent 2019に参加してきました 〜現地参戦して本当に得られたもの〜

## はじめに

[（株）いい生活 サーバープラットフォームチーム](https://jobs.qiita.com/employers/e-seikatsu/development_teams/24) の多田 (@es-y-tada)です。

2019年 12/2-12/6 に開催された AWS re:invent に、実際にラスベカスまで赴いて参加させていただきました。

僕自身は、今年の4月ごろから本格的に AWS の業務利用を始め、現在に至るまで EKS を基盤としたアプリケーション開発を続け、弊社のクラウド化戦線の波際で格闘してきました。

そんな中で、今年こそは弊社からも re:invent 参加させようという流れがあって、ありがたいことに白羽の矢を立てていただき、参加する運びとなりました（弊社からはCTO の松崎と僕の2名が参加でした）。

このエントリでは、この熱い5日間で僕が得たものをお伝えしたいと思います。

## AWS re:invent とは何か

AWS が開催する、世界最大級の learning conference 。

https://re:invent.awsevents.com/info/faq/

> AWS re:Invent is a learning conference hosted by Amazon Web Services for the global cloud computing community. The event will feature keynote announcements, training and certification opportunities, access to more than 2,500 technical sessions, a partner expo, after-hours events, and so much more.


## 個人的にわくわくした発表

### [EKS on Fargate](https://aws.amazon.com/jp/blogs/news/amazon-eks-on-aws-fargate-now-generally-available/)

[EKS](https://aws.amazon.com/jp/eks/) でのサービス開発者なら誰もが心躍ったと思います。ついに来たかという印象。

従来の EKS on EC2 ではどうしても物理ノード（EC2 インスタンスなので仮想マシンですが）の維持・管理が悩ましい存在です。
EC2 自体の管理（セキュリティパッチの適用や EKS バージョンの更新など）は re:invent の少し前に [ManagedNodeGroup](https://docs.aws.amazon.com/eks/latest/userguide/managed-node-groups.html) が発表されマネージドに任せる選択肢が生まれていましたが、
スケーリングの観点で言えば、 [AutoScalingGroup](https://docs.aws.amazon.com/ja_jp/autoscaling/ec2/userguide/what-is-amazon-ec2-auto-scaling.html) と [ClusterAutoscaler](https://github.com/kubernetes/autoscaler/tree/master/cluster-autoscaler) との合わせ技にするのが定石で、
物理的なノード配置を気にしなくてはならない以上、可用性やコスト最適化を担保しながらスケーリングを自動化する銀の弾丸はないという状態でした。

EKS を [Fargate](https://aws.amazon.com/jp/fargate/) 上で実行することで、これらの悩みから開放されるかもしれない。
KeyNote での開発者たちの熱狂ぶりもひとしおでした。

もちろん EKS on EC2 でできていたことが Fargate にすることでできなくなる制約もあるため、一概に EKS on Fargate が銀の弾丸だ、と言える状況ではないため見極めも必要ですが、
AWS 上で Kubernetes を運用している開発者にとって有力な選択肢となったのは間違いないと思います。

僕自身半年ほど前から EKS 上でのサービス開発・運用に関わっていますが、 EKS on Fargate を導入するとしたらどこに使おう、どんな嬉しさとつらみがあるだろう、と期待に心が踊りました。

また、同時に紹介されていた（発表はこれも re:invent より前になりますが） [Firecracker](https://firecracker-microvm.github.io) によって Fargate が構成されているという点も興味深かったです。
Fargate とは何者かを理解するキーとなる重要な情報でした。

### [SageMaker Studio](https://aws.amazon.com/jp/blogs/aws/amazon-sagemaker-studio-the-first-fully-integrated-development-environment-for-machine-learning/)

「やっときたか！」という驚きが一番大きかったのが EKS on Fargate だとすると、「ここまでやるか！」という感服の驚きが一番だったのが SageMaker Studio と総括される ML(Machine Learning) 関連サービス群でした。

SageMaker Studio 以前の SageMaker も、 Notebook や SDK を利用した AI 開発環境・訓練ジョブ管理・推論エンドポイント管理まで統合して行えるよくできたサービスでしたが、
これに加えて AutoML や モデルのデバッグ、チューニングまでサポートされるようになりました。

KeyNote ではこれらのコンポーネントが順番に紹介され、「そうきたか」「まだ来るか」「そこまでやるか」という感じで、ただただ圧倒されながら聞いていました。

実は SageMaker Studio のキーになるのは [SSO](https://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/access-sso-users.html) 対応ではないかと個人的には思っていて、
プロダクトやチーム、場合によっては組織の垣根を超えて、共有データセットを活用して ML 開発をしていくための強い助けとなる、重要なコラボレーションツールになるのではないかと感じています。

データアクセスをより容易にするための [Amazon S3 Access Points](https://aws.amazon.com/jp/blogs/news/easily-manage-shared-data-sets-with-amazon-s3-access-points/) や [Federated Query](https://aws.amazon.com/jp/about-aws/whats-new/2019/12/amazon-redshift-federated-query-preview/) といった強力なサポートも印象的でした。

## ところで、わざわざ現地参戦する意味ってあるの？

AWS re:invent というカンファレンスに参加して、得られた情報は本当にたくさんありました。
先程紹介した以外にも [RDS Proxy](https://aws.amazon.com/jp/rds/proxy/) や [MCS](https://aws.amazon.com/jp/blogs/news/new-amazon-managed-apache-cassandra-service-mcs/) 、
[Amazon SageMaker Operators for Kubernetes](https://aws.amazon.com/jp/blogs/news/introducing-amazon-sagemaker-operators-for-kubernetes/) などなど、印象深いアップデートは数多くあったと思います。

しかしながらこれらのアップデート自体は、 **わざわざラスベガスまで足を伸ばさなくとも得られる情報** です。
極限まで速報性を求めるのなら話は別ですが、 KeyNote はライブストリーミングという選択肢がありますし、セッションにしても速報ブログはいくらでも上がっていますし、そもそも AWS 公式ブログが新規アップデート発表の翌日には上がり、講演スライドやムービーもそれほどの時間もかからずにアップロードされる状況な訳です。
アップデートの情報が得られた、というのはわざわざ現地まで行って得られた成果としてはすこし弱いような気がします。
カンファレンスに実際に参加したからこそ得られたこととは何だったのでしょうか。

## AWS の提示するストーリーを理解し、観衆と共感する

私自身は、 KeyNote をリアルタイムで、生で聴くことができたことが最も価値のある体験のひとつだったと思っています。
その理由のひとつは、 AWS のアップデートにまつわるストーリーを順番に理解できたことです。

[NitroSystem](https://aws.amazon.com/jp/ec2/nitro/) の開発とともに発展したコンピューティングリソースの進化。

ECS on Fargate の提供開始から長い時間を経て、満を持して登場した EKS on Fargate。

SageMaker の登場からわずか2年でフルサポートと言えるのではないかというほどに進化した SageMaker Studio。

これらの発表は（これらだけに限りませんが）単なる技術発表を越えて、ドキュメンタリーと言っていい出来だったと思います。
聴いているだけでも面白いのですが、ストーリーを理解することで「これが今の最前線」であることをより強調して認識し、エンジニアとしての好奇心を強く掻き立てられました。
また、会場に集まった世界中のエンジニアと一緒に沸き立ったことで、より強く強い熱として心に刻まれたように思います。
アップデートに興奮しているのは自分だけではなく、きちんとキーポイントであることを認識できている、あるいはこのアップデートの価値を理解しなくてはならない、という自認ができたことも良かったです。

自己満足であるとも思われるかも知れませんが、エンジニアにとって「自分がやってやろう、時代に追いついてやろう、追い越してやろう」という情熱が、技術力と同じくらい重要なことだと僕は思います。


KeyNote の幕間で演奏された [Don't Stop Me Now](https://ja.wikipedia.org/wiki/ドント・ストップ・ミー・ナウ) は、今でも印象深く心に焼き付いています。
「エンジニアの好奇心をくすぐる」という意味でこれ以上の体験はなかなかないだろう、というのが僕の感想です。

https://www.youtube.com/watch?v=HgzGwKwLmgM


## 興味の赴くままにセッションを選び、全ての時間を費やす

re:invent は 5日間という長期間、ラスベガスという遠く離れた地で開催されます。

相当の費用をかけているわけですし、エンジニアだから PC がありネットワークと繋がっていれば一通りのことはできるといっても、普段のようには業務はできないわけです。

必然として、「せっかくここまで来たのた、少しでも多くのものを持ち帰ろう」という気概になりました。
ラスベカスは娯楽の聖地でもあるわけですが、そんなものよりもひとつでもセッションを多く聞かせてくれ、という気持ちで期間中は過ごしました。
これには KeyNote で受けた熱も効いていたように思います。

また、あるセッションから興味を持って、関連する別のセッションをすぐさま聞きに行く、という動きができたのも良かったところです。
普段の生活をしていてはこのような動きをすること、時間を確保することは難しかったと思います。

特に KeyNote で発表されたばかりの新サービスも、翌日には新規セッションが追加される状況だったので、熱量を保ったまま深い情報を仕入れることができたのは価値が高かったと感じています。
僕は EKS on Fargate と SageMaker Studio のセッションはすぐに登録して、聴講しに行きました。

（だからこそ逆に、 [Deep Composer](https://aws.amazon.com/jp/blogs/news/aws-deepcomposer-compose-music-with-generative-machine-learning-models/) のワークショップに参加できなかったのは残念でした。超満員で諦めました）

そして、これは僕の場合の個人的な事情ですが、参加した KeyNote とセッションは全て、会社の Slack 上でリアルタイムに実況していました。
実はこれがかなり効果的で、インプットだけに偏らず、アップデートやサービス・ツールの価値はなにかを端的に伝える訓練にもなり、良いアウトプットの場になったと思います。

## 現地の技術者と本音トークをする

re:invent に集まっているのは、 AWS を利用している開発者たちだけではありません。
AWS のサービス開発者たちも当然会場にいるわけで、彼らと直接トークできる、またとない機会が re:invent にはあります。

セッションの多くはサービス開発者自身が登壇しているため、セッション終わりに設けられた Q&A の時間には彼らに直接意見を届けることが出来ます（特に新サービスのセッションでは熱かったです。質問者行列が出来ていたりしました）。



また、弊社の場合はありがたいことに、 EBC (Executive Briefing Center)  で AWS の開発エンジニア の方とミーティングする機会をいただき、貴重な時間を過ごすことができました。

そして現地では、ゲリラ的な MeetUp イベントも多数開催されています。
僕自身 [Containers Happy Hour](https://aws-container.connpass.com/event/151836/) に参加させていただきました。
この場には コンテナを愛するエンジニアたちはもとより、日本の SA(Solution Architect) の方に加え、AWS のコンテナ関連サービスのエンジニアやプロダクトマネージャーの方々も同席されており、非常に濃密な時間を過ごすことが出来ました。
こちらの MeetUp の様子はこちらの記事もご覧ください。

* [同じ趣向を持った人間が世界中から集まる超濃密な時間「コンテナハッピーアワー」 #reinvent](https://dev.classmethod.jp/cloud/aws/container-happy-hour/)

AWS のエンジニアたちと直接議論できる超貴重な機会を満喫できたとともに、情熱をもって論理立ててこちらの課題感を伝えれば、彼らも本気で向き合ってくれるという信頼感を得られる素敵な機会でもありました。

このような場に参加できるというのも、現地まで行く価値の重要な要素の一つだと思います。

## さいごに

かなりポエミーなエントリになりました。

AWS の 2019年最後の新サービスの紹介にとどまらず、 現地まで行って参加した意義とは何かを自分なりに考えた結果として、re:invent が知識と情熱を一度に味わえるすばらしいイベントだった、と改めて感じています。

来年以降も参加したいと思える、満足できる内容でした。

次回は

* 新発表のセッションに参加することを織り込んで計画を練る
* 自分は意外と AWS のサービスを理解できていることがわかったので expert 向けセッションを中心により深い理解ができる場にする

ことを Try として、より一段とカンファレンス参加を価値あるものにしたいと思います。

## 謝辞

多大な費用をかけて僕がラスベガスに行くことを許可してくださった弊社・株式会社いい生活、そして旅・現地での過ごし方・より深い理解のサポートをしてくださった弊社 CTO の松崎さんに改めて感謝したいと思います。
ありがとうございました！