re:Invent 2018の参加予定セッション – モダンアプリやサーバレスのためのカオスエンジニアリング、Airbnbのアーキテクチャの変遷などをざっと確認してみた #reinvent

明日から開催されるre:Invent 2018に参加するためにアメリカに来ています。 AWSに関連する技術のキャッチアップに、日本からアメリカ、異国の地へとわざわざ来てるので参加予定のセッションについて、ざっとですが確認しておきます。
2018.11.26

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

アメリカからこんにちは。
プロダクトグループのshoitoです。

明日から開催されるre:Invent 2018に参加するためにアメリカに来ています。
AWSに関連する技術のキャッチアップに、日本からアメリカ、異国の地へとわざわざ来てるので参加予定のセッションについて、ざっとですが確認しておきます。

なお、こちらに記載したセッションですが、開催中にも追加があるかもしれないので、現時点での予定であって、他のセッションに参加を変更する可能性は大いにあります。

11/26(月)

初日から惹かれるキーワードのセッションが目白押しで、スケジュールを決めるのが悩ましかったのですが、コンテナ系のセッションが多め、特に楽しみなのはカオスエンジニアリングの2本です。

CON310のセッションでは、障害を注入するカオスエンジニアリングのプラクティス、ツール、メトリクスをライブデモを交えながら紹介してくれるようです。
DVC305のセッションでは、Lambdaファンクションを中心のサーバレスアーキテクチャに対してカオスエンジニアリングを適用するにはどうしたら良いのか聞けそうです。

CON310 -- Breaking Containers: Chaos Engineering for Modern Applications on AWS

You may have heard of the buzzwords "chaos engineering" and "containers." But what do they have to do with each other? In this session, we introduce chaos engineering and share a live demo of how to practice chaos engineering principles on AWS. We walk through chaos engineering practices, tools, and success metrics you can use to inject failures in order to make your systems more reliable..

[レポート]AWSのモダンアプリケーションに対するカオスエンジニアリング #reinvent #CON310

DVC305 -- Applying Principles of Chaos Engineering to Serverless

Chaos engineering focuses on improving system resilience through controlled experiments, exposing the inherent chaos and failure modes in our system before they manifest in production and impact users. However, much of the publicized tools and articles focus on killing Amazon EC2 instances, and the efforts in the serverless community have been largely limited to moving those tools into Lambda functions. How can we apply the same principles of chaos to a serverless architecture built around AWS Lambda functions? Can we adapt existing practices to expose the inherent chaos in these systems? What are the limitations and new challenges that we need to consider? Come to this session and find out.

[レポート]Beyond the Basics: Advanced Infrastructure as Code Programming on AWS #reinvent #DEV327

CON362 -- Container Power Hour with Jess, Clare, and Abby

Join Jess Frazelle, from GitHub, and Clare Liguori and Abby Fuller, from AWS, for a container power hour to kick off your re:Invent. In this session, learn how to use Git and GitHub to run your containers, and build, test, and deploy processes. GitOps and Actions and AWS Fargate—oh my! This session features a demo from Jess on using the new GitHub Actions to deploy to Fargate.

DVC305 -- Applying Principles of Chaos Engineering to Serverless

Chaos engineering focuses on improving system resilience through controlled experiments, exposing the inherent chaos and failure modes in our system before they manifest in production and impact users. However, much of the publicized tools and articles focus on killing Amazon EC2 instances, and the efforts in the serverless community have been largely limited to moving those tools into Lambda functions. How can we apply the same principles of chaos to a serverless architecture built around AWS Lambda functions? Can we adapt existing practices to expose the inherent chaos in these systems? What are the limitations and new challenges that we need to consider? Come to this session and find out.

CON360 -- From Monolith to Microservices (And All the Bumps along the Way)

Applications built on a microservices-based architecture and packaged as containers bring several benefits to your organization. In this session, Duolingo, a popular language-learning platform and an Amazon ECS customer, describes its journey from a monolith to a microservices architecture. We highlight the hurdles you may encounter, discuss how to plan your migration to microservices, and explain how you can use Amazon ECS to manage this journey.

[レポート]Applying Principles of Chaos Engineering to Serverless #reinvent #DVC305

11/27(火)

2日目はアーキテクチャ系のセッションへの参加が多い予定です。 中でも特に気になるのはAirbnbのアーキテクチャの変遷のセッションです。どんな風にシステムのアーキテクチャが変わっていき、それに合わせて(逆に?)組織もどう変わったのか気になります。

もうひとつ、ナイキ規模でDynamoDBを運用してるのか、CassandraとCouchbaseのクラスタをどうDynamoDBに移行したのか知りたいところです。
こちらは同じくナイキとElasticsearchのセッションも気になるんですが、そちらは既に席予約はいっぱいで諦めました…。

SRV401 -- Optimizing Your Serverless Applications

Are you an experienced serverless developer? Do you want a handy guide for unleashing the full power of serverless architectures for your production workloads? Are you wondering whether to choose a stream or an API as your event source, or whether to have one function or many? In this session, we discuss architectural best practices, optimizations, and handy cheat codes that you can use to build secure, high-scale, high-performance serverless applications. We use real customer scenarios to illustrate the benefits.

DEV210 -- Moving to DevOps the Amazon Way #reinvent #DEV210

DevOps is currently one of the most sought after engineering models. One reason is that it helps enterprise transformations. The Amazon transformation to DevOps was born out of the desire to be even more customer obsessed, more agile, and more innovative. Come and learn from our journey as we share the playbook that helped us successfully implement and adopt DevOps as well as the lessons we learned the hard way.

ARC407 -- A Chronicle of Airbnb Architecture Evolution

Airbnb is going through tremendous growth internationally, evolving from a home sharing company to a global travel community with many product offerings. The growth driven by the business, increase in traffic, and aggressive hiring created a new challenge for the Production Infrastructure Team. The team has grown from a small team of 10 to a production platform organization with 100 engineers that builds foundational services that support homes, experiences, luxury, and China. We shifted our priority and focus to move away from putting out fires to building a platform that can grow with the company. In this session, we chronicle Airbnb’s architectural evolution that aligns with organizational growth strategy, and review how we overcame different architectural challenges leveraging AWS technologies.

DAT320 -- Becoming a Nimble Giant: How Amazon DynamoDB Serves Nike at Scale

In this session, learn how Nike Digital migrated their large clusters of Cassandra and Couchbase to a fully managed Amazon DynamoDB. We share how Cassandra and Couchbase proved to be operationally challenging for engineering teams and failed to meet the needs to scale up for high-traffic product launches. We discuss how DynamoDB’s flexible data model allows Nike to focus on innovating for our consumer experiences without managing database clusters. We also share the best practices we learned on how to effectively use DynamoDB’s TTL, Auto Scaling, on-demand backups, point-in-time recovery, and adaptive capacity for applications that require scale, performance, and reliability to meet Nike’s business requirements.

11/28(水)

3日目と4日目にはキーノートがあります。 (2日目にもGlobal Partner Summit Keynoteはあります)

キーノートでの新機能、新サービスの発表への期待もありますが、BBCのCloudWatchでのモニタリングについてのセッションが気になってます。
システムモニタリング、アプリケーションパフォーマンスモニタリングなど、関わりの深い領域なため、何か良い気付きが得られることに期待しています。
Netflixのステートフルサービスについては、サービスをスケールさせるには出来るだけステートレスにすべきだと思っているので、Netflixのあのマイクロサービス群とステートフルサービスがどう関係してるのか知りたいところです。

DEV302 -- Monitor All Your Things: Amazon CloudWatch in Action with BBC

Come learn what's new with Amazon CloudWatch, and watch as we leverage new capabilities to better monitor our systems and resources. We also walk you through the journey that BBC took in monitoring its custom off-cloud infrastructure alongside its AWS cloud resources.

DAT406 -- Netflix: Iterating on Stateful Services in the Cloud

While stateless services are suitable for many architectures, stateful services are also useful and sometimes overlooked. In this session, we hear from Netflix about the unique challenges of upgrading stateful services in the cloud, architectural advice to make iterating on stateful services easy, and concrete tools and infrastructure you can use on AWS to make upgrading easy.

SRV373-- Building Massively Parallel Event-Driven Architectures

Data and events are the lifeblood of any modern application. By using stateless, loosely coupled microservices communicating through events, developers can build massively scalable systems that can process trillions of requests in seconds. In this talk, we cover design patterns for using Amazon SQS, Amazon SNS, AWS Step Functions, AWS Lambda, and Amazon S3 to build data processing and real-time notification systems with unbounded scale and serverless cost characteristics. We also explore how these approaches apply to practical use cases, such as training machine learning models, media processing, and data cleansing.

11/29(木)

参加日程の最終日ですが、初日にもあったようなモダンアプリケーションという単語に惹かれて、モダンアプリケーションのためのオブザーバビリティ(観測可能性とでも訳す?)のセッションが気になってます。
ここでのモダンアプリケーションの定義はマイクロサービスベースのアプリケーションのことを指しているのですが、複数のモジュールから複雑に構成されたシステムに対するモニタリング、トレース、ロギングなどの手法やツールを知れそうです。

以前、ブログ記事で書いた分散トレーシングが取り上げられるんだと予想しています。

マイクロサービスのトレーサビリティを確保するための分散トレーシングとJaeger

CON306 -- Observability for Modern Applications

In modern, microservices-based applications, it’s critical to have end-to-end observability of each microservice and the communications between them in order to quickly identify and debug issues. In this session, we cover the techniques and tools to achieve consistent, full-application observability, including monitoring, tracing, logging, and service mesh.

ARC205 -- Scaling Up to Your First 10 Million Users

Cloud computing provides a number of advantages, such as the ability to scale your web application or website on demand. If you have a new web application and want to use cloud computing, you might be asking yourself, "Where do I start?" Join us in this session for best practices on scaling your resources from one to millions of users. We show you how to best combine different AWS services, how to make smarter decisions for architecting your application, and how to scale your infrastructure in the cloud.

DEV370 -- Role of Central Teams in DevOps Organizations

You've migrated your business to the cloud. You've embraced DevOps. All your engineering teams operate the systems they write. You don't need central teams any longer ... or do you? In this talk, we discuss how Netflix balances the need for product teams to stay loosely coupled yet how it maximizes the leverage for productivity and velocity that healthy central teams provide.

さいごに

私個人が参加しようとしているセッションについて、ざっとまとめてみました。
re:Inventでは、セッション以外にもワークショップやハンズオンなど様々なアクティビティが用意されていますし、AWS認定者ラウンジや各社の展示ブースなど、寛いだり刺激を受けたりできる場所が沢山ありそうです。

セッションの合間を縫ってどれだけ行けるのか?気力と体力は持つのか?まだここにない出会いと遭遇できるのか? 期待と不安とありますが、明日からのre:Invent 2018を楽しみつつ、可能な範囲でレポートしていきます。 (ラスベガスへの経由地、サンフランシスコへ向かう機内からスマートフォンで下書きを書いていました)