AWS re:Invent 2018 にやってきました!現地レポートをお届けします!!

こんにちは、okazaki です。
ラスベガスはとてもよい天気です。 venetian-hotel 気温は日本と同じか、少し暖かいぐらいで、昼間はジャケット1枚で過ごせています。

さて、前回の記事に書いたとおり、AWS re:Invent 2018 に来ています。
本日は2日目で、明日は基調講演があります。
基調講演では、色々な新サービスが発表され、それに伴って新サービスのセッション、ワークショップが追加発表されるので今から楽しみです。

いくつかのセッションやワークショップに参加してきたので、かいつまんで現地のレポートをお届けします。

セッション:Deep Dive on Amazon EC2 Instances & Performance Optimization Best Practices

一番使っているサービスである EC2 のパフォーマンスについて、さらに深く理解しようと参加してきました。
EC2 のパフォーマンスを最適化するプラクティスとして、以下の内容が紹介されていました。

  • 新しい OS(カーネルは3.10以上)、新しい世代のインスタンスタイプを利用する。
  • ハイパースレッドを無効にする。
    • CPUに重い負荷がかかる(浮動小数点演算など)アプリケーションはスレッドの恩恵を受けず、スレッドのコンテキストスイッチにより遅くなるケースがある。このような場合はハイパースレッドを無効にするとよい。
    • マシンの再起動なしに設定することも、grub で設定することもできる。設定の詳細は Disabling Intel Hyper-Threading Technology on Amazon Linux を参照。
    • AWS CLIも機能拡張され以下のコマンドで設定できるようになっている。
aws ec2 run-instances --image-id ami-1a2bxxxxx --instance-type z1d.12xlarge --cpu-options "CoreCount=24,ThreadsPerCore=1" --key-name My_Key_Name
  • クロックソースを Xen から TSC に変更する。(Nitro インスタンスの場合は kvm-clock を使っておりパフォーマンスは良いので変更する必要なし。)
    • hypervisor ではなくハードウェアから時刻を取得できるので高速。
  • C-state(CPU のアイドル時の状態)を制限して、深いアイドル状態に入らないようにする
    • アイドル状態に入ると、アクティブなコアのクロック周波数は高くなる一方、アイドル状態に入ったコアは復帰するのに時間がかかるため、遅延がセンシティブなアプリに影響がでる可能性がある
  • P-state を設定して CPU の周波数の変更を制限する
  • Xen sprinlock を無効にする(T2 インスタンスの場合以外)

普通の Web アプリケーションの場合はハイパースレッドを無効にしたり、C-state を調整したりなどのチューニングの機会はあまりなさそうです。 P-stateについては、パフォーマンスを一定にする必要があるゲームサーバなどに使う機会がありそうかなと思いました。

他には、最新のインスタンスについては AWS Nitro System というハードウェアが使われ、Hypervisor も KVM ベースに置き換えていることなどが紹介されていました。 ハードウェア、ソフトウェアの両面からどんどん良くなっているのは、さすが AWS だなと感じました。

ワークショップ:Building Serverless Applications with Amazon DynamoDB & AWS Lambda

Lambda を使う予定があり、じっくりさわったことがなかったので良い機会だと思い参加してきました。
内容としては、Lambda や API Gateway、S3、Dynamo DB などの説明があり、説明後に実際にサーバレスで EC サイトを構築するという構成でした。
EC サイトの構築が終われば、Kinesis Data Firehose、Kinesis Data Analytics を使ってサービスの分析までするという内容で、幅広く AWS のサービスを扱った内容のワークショップでした。

参加者は自分の PC を使って Management Console でサイトを構築するのですが、ワークショップに参加している人数が多かったせいか Wifi が遅く、なかなかコースを進められませんでした。
また、なぜか構築した EC サイトが表示できないトラブルもあり、チューターの方に色々とヘルプをしてもらって完成することができました。
トラブルがあったせいでチューターの方を長く捕まえてしまいましたが、色々と質問することもでき良い経験になりました。 サーバレスのECサイト

作ったサーバレス EC サイト

企業ブースやAWS認定者ラウンジ

会場には多くの企業がブースを出展していて、とても盛況でした。
弊社も使用している Github や Datadog、New Relic などもブースを出展していました。
あまり時間がなく、まだじっくり見れていませんが、明日以降、色々と話なども聞いていきたいと思っています。

また、AWS資格取得者の特典である AWS 認定者ラウンジにも行ってきました。
ラウンジには電源があり、軽食も用意されていて、休憩をとるのにちょうどよい環境でした。
認定者特典のTシャツと帽子、水筒をもらってきました。 AWS 認定者ラウンジ 弊社は AWS のコンサルティングパートナーで、AWS の資格取得が奨励されており、資格取得者には手当がでます。
手当目当てでしたが、資格を取っておいてよかったです。

おわりに

英語については、知っているサービスの話ということもあり、なんとかついていけています。
とはいえ、あまり詳しくないサービスや少し早口な英語だと完全についていけなくなることもあり、悔しい思いもしました。
今後も英語についてはよりいっそう学習していこうと強く思いました。(ちなみに弊社には英会話オンライン学習の補助もあり、私も利用しています。)

明日は基調講演、明後日は re:Play という大きいパーティもあり、イベントも目白押しなので、引き続き、よく学び、よく遊んで楽しんでいきたいと思います。