Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
AWSを使ったカンファレンスの 配信アーキテクチャ - 吉祥寺.pm37
Search
Ryo Takaishi
January 31, 2025
2
590
AWSを使ったカンファレンスの 配信アーキテクチャ - 吉祥寺.pm37
Ryo Takaishi
January 31, 2025
Tweet
Share
More Decks by Ryo Takaishi
See All by Ryo Takaishi
2025 年私の Terraform に関するふりかえり / ゆるSRE勉強会 #14
takaishi
0
410
スロークエリとの戦いの軌跡2024 / ゆるSRE勉強会 #10
takaishi
1
860
どうやればインシデント対応能力を鍛えられるのか? / SRE Kaigi 2025
takaishi
13
12k
Podcastを3年半続ける技術と得た物 / ya8-2024
takaishi
5
2k
入門!ClusterAPI 〜 k8s クラスターも k8s API で管理したい 〜 / k8s_meetup_31
takaishi
3
4.8k
CloudNativeへの道 リーダーシップとフォロワーシップ / 201911-cndjp13
takaishi
2
980
ClusterAPI v1alpha1 → v1alpha2 / k8s_meetup_23
takaishi
1
1.6k
実録!CloudNativeを 目指した230日 / cloud-native-days-tokyo-2019
takaishi
2
2.6k
Consul Connect and Kubernetes Integration / cloud native meetup tokyo 7
takaishi
2
2.4k
Featured
See All Featured
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
190
Become a Pro
speakerdeck
PRO
31
5.8k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
260
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
120
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
140
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
99
[SF Ruby Conf 2025] Rails X
palkan
2
820
Testing 201, or: Great Expectations
jmmastey
46
8.1k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
1.8k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.1k
Balancing Empowerment & Direction
lara
5
930
The Invisible Side of Design
smashingmag
302
51k
Transcript
AWSを使ったカンファレンスの 配信アーキテクチャ 髙石 諒 / @r_takaishi 吉祥寺.pm37
None
自己紹介 • 髙石 諒 / @r_takaishi • ソフトウェア エンジニア /
ポッドキャスター • 現所属は株式会社フライル ◦ クラウドインフラ中心にいろいろ • 副業でスタートアップのクラウドインフラ・基盤整備 • CloudNative Daysのシステム開発
None
こういうの作ってます • tfclean (https://github.com/takaishi/tfclean) ◦ terraformの import/moved/removed ブロックを削除するツール • terraform-j2md
(https://github.com/reproio/terraform-j2md) ◦ terraform planの結果をMarkdownとして整形するツール • batron (https://github.com/takaishi/batron) ◦ AWS Batchのジョブ定義をデプロイするツール
時はコロナ禍
カンファレンスも 「密」回避が求められ た
オンライン開催
オンラインカンファレンスで 快適な視聴環境を提供する
アーキテクチャの 試行錯誤を紹介します
CloudNativeDaysが目指した体験 • 前提として、複数トラック開催 • シームレスにセッションを切り替えられる体験 • セッション終了後のアーカイブ公開
第一世代
第一世代アーキテクチャ • Vimeoを使用 ◦ 記憶が曖昧なので割愛 • ライブ配信用のリソースをVimeoに作ったりするのが大変だった気がする
第二世代
AWSが配信・動画系サービスを提供している • Amazon Interactive Video Service (Amazon IVS) ◦ 低レイテンシー配信のためのマネージドサービス
◦ RubyKaigiでも使用された • AWS Elemental MediaLive ◦ ライブストリーミングのエンコードサービス ◦ 変換して複数の宛先に送ることも可能 • AWS Elemental MediaPackage ◦ エンコードされたデータの動画配信及びVODパッケージングサービス
第二世代アーキテクチャ MediaLive IVS Channel S3 Bucket CloudFront Rails React OBS
オペレーター 参加者 RTMP(push) RTMP(Pull) トラック毎にリソースを用意 ライブ配信を視聴 アーカイブ配信を視聴 アーカイブを保存 起動・停止
第二世代の課題 • 高コスト ◦ IVSを複数トラック分、複数日使うのはかなりお金がかかる • アーカイブの作成が大変 ◦ MediaLiveチャンネルの起動・停止が職人技 ◦
タイムラグ問題
第三世代
AWSが配信・動画系サービスを提供している • Amazon Interactive Video Service (Amazon IVS) ◦ 低レイテンシー配信のためのマネージドサービス
◦ RubyKaigiでも使用された • AWS Elemental MediaLive ◦ ライブストリーミングのエンコードサービス ◦ 変換して複数の宛先に送ることも可能 • AWS Elemental MediaPackage ◦ エンコードされたデータの動画配信及びVODパッケージングサービス
第三世代アーキテクチャ MediaLive IVS Channel MediaPackageChannel Endpoint S3 Bucket CloudFront Rails
MediaPackage HarvestJob React OBS オペレーター 参加者 RTMP(push) RTMPS HLS トラック毎にリソースを用意 ライブ配信を視聴 アーカイブ配信を視聴 アーカイブを保存 アーカイブ作成 HarvestJob作成
第三世代アーキテクチャ • アーカイブ作成にMediaPackageを使用 • HarvestJob ◦ VOD用の機能 ◦ バッファされたストリーミングデータの任意の範囲を切り出してS3バケットに保存 •
Rails上で範囲指定・プレビューしてHarvestJobを作成する機能を実装
第三世代の課題 • 高コスト ◦ IVSを複数トラック分、複数日使うのはかなりお金がかかる
第四世代
第四世代アーキテクチャ • MediaPackage V2登場 ◦ 低レイテンシーに対応 [速報] low-latency HLSにも対応したMediaPackage v2がリリースされました![NEW]
| DevelopersIO https://dev.classmethod.jp/articles/aws-elemental-mediapackage-v2/
第四世代アーキテクチャ MediaLive MediaPackage v2 Channel Endpoint MediaPackageChannel Endpoint S3 Bucket
CloudFront Rails MediaPackage HarvestJob React OBS オペレーター 参加者 RTMP(push) RTMP HLS トラック毎にリソースを用意 ライブ配信を視聴 アーカイブ配信を視聴 アーカイブを保存 アーカイブ作成 HarvestJob作成
第四世代アーキテクチャ • IVSを止めて大幅にコストダウンに成功 • MediaPackageのHarvestJobを使い、セッション終了後数十分でアーカイブ 作成・公開
第四世代アーキテクチャの課題 • MediaPackageとMediaPackageV2の両方を使っている ◦ MediaPackage V2がHarvestJobに対応していなかった
まとめ
まとめ • 2020年以降のコロナ禍で、CloudNativeDaysはオンライン配信をかなり作 り込んだ ◦ シームレスなトラック切り替え、迅速なアーカイブ公開 • インパーソン開催に戻った2025年以降、このノウハウをどう活用するか ◦ オンライン開催のイベントもあるけど大規模じゃないとペイしない
• 全然分からない領域について試行錯誤するのは楽しい
コロナ禍の 知見忘れず 活用したい