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
GKEを使った開発における継続的デリバリー@オレシカナイト
Search
Wataru Fukunaga
July 13, 2018
Programming
730
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
GKEを使った開発における継続的デリバリー@オレシカナイト
Wataru Fukunaga
July 13, 2018
More Decks by Wataru Fukunaga
See All by Wataru Fukunaga
ABEMA Ads 技術の変革と展望/devcon2021_20_ABEMA Ads
wataru420
0
740
Empowermentされた開発組織@オレシカvol16
wataru420
1
1.2k
k8sでJob管理@オレシカナイトVol.10
wataru420
4
1.3k
オレシカナイト概要
wataru420
0
1.4k
僕がkubernetesをどう使っているか
wataru420
1
200
Well-Architected Frameworkで強いシステムを作りたい@はこだて未来大学
wataru420
0
580
加速する事業の中でシステムリスクと向き合う話@オレシカナイト
wataru420
4
1.2k
Other Decks in Programming
See All in Programming
音楽のための関数型プログラミング言語mimiumにおける多段階計算の活用
tomoyanonymous
1
330
作るコストが小さくなった時代 幸せに働くために改めて考えたいこと 〜エンジニアとして価値を出し続けるために注視している二分野〜
yuppeeng
0
100
共通化で考えるべきは、実装より公開する型だった
codeegg
0
250
ローカルLLMでどこまでコードが書けるか -拡張版 / How much code can be written on a local LLM Extended
kishida
12
4.8k
Embedded SREと共に達成した会員管理システムのAWS移行 - SRE NEXT 2026 ランチスポンサーセッション
niftycorp
PRO
1
2.6k
5分で問診!Composer セキュリティ健康診断
codmoninc
0
280
【やさしく解説 設計編・中級 #6】良いアーキテクチャとは ~ 一本の登り道の、行き先 ~
panda728
PRO
0
170
琵琶湖の水は止められてもNet--HTTPのリトライは止められない / You might be able to stop the water flow of Lake Biwa but you can't stop Net::HTTP retries
luccafort
PRO
0
390
吝嗇家のためのAI活用 / AI development for miser - ChatGPT + Issue Driven Development
tooppoo
0
190
Generative UI & AI-Assistants for Your Angular Solutions
manfredsteyer
PRO
0
110
SREは、MCPとSRE Agentをこう使え!
kazumax55
0
150
フィードバックで育てるAI開発
kotaminato
1
120
Featured
See All Featured
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.9k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.7k
From π to Pie charts
rasagy
0
240
Technical Leadership for Architectural Decision Making
baasie
3
440
The Cost Of JavaScript in 2023
addyosmani
55
10k
Everyday Curiosity
cassininazir
0
260
Designing for humans not robots
tammielis
254
26k
Practical Orchestrator
shlominoach
191
11k
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
55k
New Earth Scene 8
popppiees
3
2.4k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
280
Transcript
+VMZ (,&Λͬͨ։ൃʹ͓͚Δ ܧଓతσϦόϦʔ AbemaTV, Inc. All Rights Reserved
福永 亘 株式会社AbemaTV 広告本部 リードエンジニア 2011年年株式会社サイバーエージェント⼊入社。 「アメブロ」や「ガールフレンド(仮)」、「オルタナティブ ガールズ」などの開発を担当。 2017年年9⽉月より「AbemaTV」広告本部に参画。 最近温泉には⾏行行ってません。
$0/5&/54 01. 事業紹介
02. システム概要 03. 継続的デリバリー 04. 課題と展望
ࣄۀհ $)"15&3
AbemaTV 無料料で楽しめるインターネットテレビ局 最新ニュースやオリジナル番組をはじめ、 アニメやドラマ、⾳音楽、スポーツなど 多彩な番組が楽しめる約25チャンネルを すべて無料料で提供。 PC、スマホ、タブレット、テレビで お楽しみいただけます。
MAU1,100万突破
無 料料 会員登録なし 24時間編成
チャンネル数は約25チャンネル
ς Ϩ Ϗ ே ใ ಓ ہ ͕ ੍
࡞ ͢ Δ Φ Ϧ δ φ ϧ χ ϡ ʔ ε Λ ์ ૹ
24時間365⽇日いつでもニュースを放送
Φ Ϧ δ φ ϧ ͷ ੜ ์ ૹ ൪
࣌ ؒ ີ ண ͳ Ͳ ͷ ಛ ผ ൪ Λ ์ ૹ
世の中の話題を作る多彩な番組
ビジネスモデル 広 告 課 ⾦金金 放 送 外 収 益
独⾃自のビジネスモデル
広告 ⾼高画質 ブランドセーフティ ターゲティング
γεςϜ֓ཁ $)"15&3
テレビ品質
2,500 以上 アクセスデバイス
Ad Insertion ・クラスタ毎に異なる広告を配信 ・マルチデバイス、マルチプラットフォーム
システム全体 Media GKE 広告 GKE CM Live
Program
GKE: prd-vaga-tracking GKE: prd-vega Pub/Sub Ad MongoDB GCE L4 Load
Balancer L4 Load Balancer L7 Load Balancer L4 Load Balancer DMP BigQuery Jupiter BigQuery L7 Load Balancer user client abema-media-proxy GKE: prd-abema east1 Patriot BigQuery asia-‐northeast1 asia-‐east1 global-‐resource abema-admin abema-media Zero Deployments Jupiter Deployments SSP Deployments DMP Deployments Token Deployments Nginx/Tracking Deployments Recovery GCS SSP CloudSQL Zero CloudSQL Zero BigTable DMP Dataflow DMP GCS AD Deployments DMP CloudSQL DMP BigTable Tracking BigTable Ganymedes CloudSQL Ad-track GCS Callisto CloudSQL Ad-track Dataflow abema-gateway (cluster-api) Admin Deployments L7 Load Balancer operator ޮՌଌఆϩά VAST ClusterҰཡ ClusterID 広告システム
GKE: prd-vaga-tracking GKE: prd-vega Pub/Sub Ad MongoDB GCE L4 Load
Balancer L4 Load Balancer L7 Load Balancer L4 Load Balancer DMP BigQuery Jupiter BigQuery L7 Load Balancer user client abema-media-proxy GKE: prd-abema east1 Patriot BigQuery asia-‐northeast1 asia-‐east1 global-‐resource abema-admin abema-media Zero Deployments Jupiter Deployments SSP Deployments DMP Deployments Token Deployments Nginx/Tracking Deployments Recovery GCS SSP CloudSQL Zero CloudSQL Zero BigTable DMP Dataflow DMP GCS AD Deployments DMP CloudSQL DMP BigTable Tracking BigTable Ganymedes CloudSQL Ad-track GCS Callisto CloudSQL Ad-track Dataflow abema-gateway (cluster-api) Admin Deployments L7 Load Balancer operator ޮՌଌఆϩά VAST ClusterҰཡ ClusterID 広告システム 2つのリージョン 2つのGKEクラスタ 様々なDBとミドルウェア 6つのLB
ܧଓతσϦόϦʔ $)"15&3
継続的デリバリーとは Commit Build Unit test Dev・Stg Deploy Test
Prd deploy
継続的デリバリーとは Commit Build Unit test Dev・Stg Deploy Test
Prd deploy ConFnuous IntegraFon
継続的デリバリーとは Commit Build Unit test Dev・Stg Deploy Test
Prd deploy ConFnuous IntegraFon ConFnuous Deployment
継続的デリバリーとは Commit Build Unit test Dev・Stg Deploy Test
Prd deploy ConFnuous IntegraFon ConFnuous Delivery ConFnuous Deployment CD
Continuous Integration Commit Build Unit test Dev・Stg Deploy
Test Prd deploy ConFnuous IntegraFon Githubを使った開発 ⾔言語はGolang、Scala、少しだけRがあります。
Continuous Integration Commit Build Unit test Dev・Stg Deploy
Test Prd deploy ConFnuous IntegraFon GithubのPushをフックしてビルド CIツールとしてはDroneを利利⽤用
Continuous Integration Commit Build Unit test Dev・Stg Deploy
Test Prd deploy ConFnuous IntegraFon Unit testもDroneでビルドするタイミングで実⾏行行
Continuous Delivery Commit Build Unit test Dev・Stg Deploy
Test Prd deploy ConFnuous Delivery 各開発環境へのデプロイはChatOpsで⾏行行います Slackのbotを⾃自作しています。
Dev環境へのデプロイ サービス選択しイメージを選択する
Continuous Delivery Commit Build Unit test Dev・Stg Deploy
Test Prd deploy ConFnuous Delivery CD 本番発環境へのデプロイもChatOpsで⾏行行います
本番環境へリリースを作成 リリースタグを切切りプルリクを送る
None
本番環境へリリースを開始 Podの状態確認 カナリアリリース リリース⽤用チャンネルへの通知等
None
ビルドの⾃自動化 テストの⾃自動化 デプロイの⾃自動化
՝ͱల $)"15&3
E2Eテスト Commit Build Unit test Dev・Stg Deploy Test
Prd deploy ConFnuous Delivery いわゆる結合テストの部分が完全に⼿手動 できる限り⾃自動化したい
Kubernetesの管理理 マニフェストの修正から反映までを⾃自動化したい
Droneって不不安 Commit Build Unit test Dev・Stg Deploy Test
Prd deploy ConFnuous IntegraFon 安くていいマネージドに変えたい Google Cloud Container Builder?
まとめ オペレーションの⾃自動化は ⻑⾧長期的には開発の安定化に 重要なので、 今後も可能な限り ⾃自動化していきたい。
ご清聴ありがとうございました! 共感していただいた⽅方! ⼀一緒に働きましょう!