ちょっと話題の記事

コンテナ好き4名がコンテナの魅力を喋り倒すJAWS-UGコンテナ支部に行ってきた #jawsug_ct

コンテナ大好きな登壇者4人が喋り倒すのをずーっと聞ける幸せな時間でした。
2019.08.30

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

「この人らみんな楽しそうに喋るなぁ」

AWS界隈のコンテナ祭りであるJAWS-UGコンテナ支部に参加しながら、ハマコーはそんな気持ちを噛み締めていました。

JAWS-UG コンテナ支部 #15 - connpass

各スピーカー個性がものすごくつよく、それぞれの環境、それぞの立場において試行錯誤を繰り返しながらコンテナを利用しているのが垣間見れて、すごく楽しいイベントでした。その楽しさがいくらかでも伝われば幸いでございます。

(祭) ∧ ∧
 Y  ( ゚Д゚)
 Φ[_ソ__y_l〉     AWS コンテナマツリダワッショイ
    |_|_|
    し'´J

お品書き

内容 登壇者
AWS コンテナサービスアップデート トリ / Amazon Web Services Japan
Amazon ECSの開発環境を動的に管理するツールを作ってみました プログラミングヤクザ / サイバーエージェント
Fargate運用物語 ~ 本当にコンテナで幸せになりますか? ~ 曽根 壮大 / オミカレ
How Fast can your Fargate Scale? Pahud Hsieh / Amazon Web Services

「懐かしのツイートと振り返るAWSコンテナサービスアップデート」

最近、twitter芸人の様相を呈しているポジティブなTori(@toricls)さんの、AWSコンテナ関連サービスのアップデート。

最初から最後まで一貫して、Toriさんのツイートをもとにアップデートを語っていくという斬新なスタイルで、2018年8月以降のアップデートについて語ってくれました。

自分、AWSのコンテナ関連サービスについては、ほぼほぼ全て目を通してブログを書いているつもりなんですが、改めてこうやって網羅的に棚卸しをしてもらったおかげで知ってるつもりで完全に抜けていたものが結構あったので、再復習できてよかったです。

ハマコーなりに重要だとおもうアップデート

トリさんセッション中、自分の琴線にふれたアップデートと、Developers.IOのリンクを貼っていきます。気になる方は、今一度復習してみると良いかもね!Developers.IOの記事が無いやつは、自分がさぼってるだけです。はい。

Fargate大幅値下げ!!

ECSのコンテナ依存関係管理の強化

App Mesh!!

ECSおよびFargateへの外部デプロイメントコントローラーのサポート

Splunkログドライバー対応

EKSにおけるContainer Insightsのサポート

ECSにおけるENI制限の緩和

ECSによるローカルテスト機能

ECRに対するイミュータブルなイメージタグサポート

ECSへの複数ターゲットグループ登録可能化

そして突然のオチ

オチが最高でした。この資料、きっとオチを先に考えて作ったはず(確信)。ぜひ、トリさん資料を御覧ください。

「Amazon ECSの開発環境を動的に管理するツールを作ってみました」

プログラミングヤクザ(@prog893)さんによる、ECS環境がぼっこぼこ増えるOSS(eden)の紹介。

チーム開発(✕20人)において、複数の開発タスクをスムーズに進めていくための開発環境構築の話です。

どんなアプリケーション開発においても、チーム開発における開発環境をどのように用意するかは永遠の課題。それはコンテナアプリケーションでも必要なんですが、ECSにおいてその開発環境をいかにスムーズに独立した環境で迅速に構築するかという点に主眼をおいたセッションでした。

現場の開発の痛みと解決策への流れが非常に明確で、聞いていて納得感がすごかったです。

edenと名付けられたこのツール、既にOSSとして公開されています!

baikonur-oss/aws-eden-cli: ECS Dynamic Environment Manager (eden) CLI

edenの構成図。リファレンスとなるECS環境を一つ定義しておいて、PRがでるたびにその環境をまるごとdescribeしてパラメータを書き換えて、環境をコピーして作成する流れ。

環境作成は3秒、削除は2秒で完了するという爆速っぷり。TerraformやCloudFormationを使わずにAPIを直接叩いているがゆえの速さ。こりゃたまらん。

爆速で環境作成〜削除するためにALBは個別に追加〜削除するわけではなく、リスナーの定義変更でカバーしていたりとか、そこにアクセスするためのRoute 53のCNAMEレコードを良い感じに作ってくれたりとかこだわりが随所に見えてごっつ面白いです!

チーム開発において、PRを以下に精度高い環境で他人が確認〜検証するかは永遠の課題だと思います。ECSにおけるその課題への解決策として、eden、試してみてはいかがでしょうか?リポジトリにスターつけないと、クローズされちゃうらしいです!

「Fargate運用物語 〜本当にコンテナで幸せになりますか?〜」

でっかいそーだい@初代ALF(@soudai1025)さんによる、Fargateの理想と現実が詰まりまくったぶっちゃけトーク満載のセッション。

ここがAWSのホームだということを完全に無視した、そして現場で汗をかいて設計〜開発〜運用してきた人だからこそできる、非常にリアルで現実的な内容でした。

「あなたに今、本当にコンテナ必要ですか?」という問いかけから始まる、コンテナの必要性と、実際にやってみるときに苦労したこと、今振り返ったときの反省点など、つぶさに余すところなく話してくれました。

個人的には、「なぜコンテナ使うの?」という問いに対して「そこにコンテナがあるから」という答えも、とっかかりにはありかなぁと思ったりする派ですが、オミカレというサービスをエンジニアとして支え、さらにそのビジネスの行く先を担う立場であるところからくる迫力がビンビン伝わってきました。

そのあたりの考え方が非常によく現れているツイートがこちら。

結局はビジネスの目的達成のための技術という、当たり前だけどエンジニアが忘れがちなところを真正面から捉えたコンテナ話、面白かったです。

がんばっていただきたい!!

「How Fast can your Fargate Scale?」

(資料はまだ公開されていないようです。めっちゃ面白かったので楽しみ)

Fargateをいかに爆速でスケールさせるかに命を注ぐpahudnet(@pahudnet)さんの発表。AWSのサーバーレススペシャリストSAの方で、英語かつめっちゃ早口だったので喋りはほとんどわからなかったのですが、スライドで察したというセッションでした。

Fargateがスケールのアラームを受けてタスクとして起動するまで、一番最初にCloudWatchでAlarmを受けるまでどうしても1〜3分かかってしまう。ここは、CloudWatch Alarmを使っている限りはこれ以上短縮できない。アンコントローラブル。

ここをいかに爆速化させるか、そのために自前でnginx_statusを3秒毎に監視。スケールが必要であれば、ECSサービスのタスク数のみを更新する。

3秒毎のポーリングはStepFunctionsで実装し、スケーリングが必要であれば、ECSサービスを更新しにいく。

このあたりの実装は、全てCDKでやっているとのこと。

全て、すごいテンションが高くて、さらに技術的な着眼点がいろいろあって面白かったです。確かにCloudWatch Alarmを使っている限りでは、最初の検知がどうしても遅くなりがちなところ、自前で見に行く実装。そして、それをStep Functionsでフロー制御しているのも驚きでした。

確かにアイディアとしては面白く、コストが許すなら使える現場も多いんじゃないでしょうか。

打ち上げにも来ていただき、ベロンベロンな自分とちょっと話していただきありがとうございました。Developers.IOいつも見ていただいているということで、記念撮影。

奇跡的に電車で家に帰れました。よかった。

コンテナまみれで、めっちゃ楽しいJAWS-UG コンテナ支部

当日のハッシュタグはこちら。

#jawsug_ct - Twitter検索 / Twitter

全てのセッション、スピーカーの方の素のキャラクターが出まくっていてごっつ楽しかったです。自分は基本AWSという枠組みの中でしかコンテナ知らないんですが、その界隈の中でもいろんな人がいろんな立場でコンテナ活用しながら、いろんなアプリケーションを動かしていることが見えるのが印象深い。

懇親会もあってめっちゃ喋りました。最後の方全然覚えてなかったけど、上の写真があるから楽しかったんでしょう。よかよか。

JAWS-UGコンテナ支部。AWSにおけるいろんなコンテナワークロードの話が聞けるので、気になる方はぜひ次回以降も参加すれば良いと思います。

JAWS-UG コンテナ支部 - connpass

AWSJのスタッフの方はじめ運営メンバーには頭が上がりません。機会があったら、自分も登壇させていただければと思います。

それでは、今日はこのへんで。濱田(@hamako9999)でした。

他の参加者の方のイベントブログ