Slide 1

Slide 1 text

僕がk8sをどう使っているか AbemaTV広告本部 福永 亘

Slide 2

Slide 2 text

福永 亘 株式会社AbemaTV 広告本部 テックリード 2011年株式会社サイバーエージェント入社 「アメブロ」や「ガールフレンド(仮),「オルタナティブ ガールズ」等の開発を担当。 2017年9月より「AbemaTV」広告本部に参画。

Slide 3

Slide 3 text

CONTENTS 1. 簡単な事業紹介 2. k8sを使うまで 3. k8sの運用 4. よく聞かれる質問 5. まとめ

Slide 4

Slide 4 text

CONTENTS 1. 簡単な事業紹介 2. k8sを使うまで 3. k8sの運用 4. よく聞かれる質問 5. まとめ

Slide 5

Slide 5 text

No content

Slide 6

Slide 6 text

MAU1100万突破

Slide 7

Slide 7 text

無料 会員登録なし 24時間編成

Slide 8

Slide 8 text

広告 高画質 ブランドセーフティー ターゲティング

Slide 9

Slide 9 text

CONTENTS 1. 簡単な事業紹介 2. k8sを使うまで 3. k8sの運用 4. よく聞かれる質問

Slide 10

Slide 10 text

はじめてのコンテナ Java・war tomcatさえあれば OS間の差異を吸収

Slide 11

Slide 11 text

ウチ姫(北米展開) Elastic Beanstalk tomcatの管理が無くなる カスタマイズが不便

Slide 12

Slide 12 text

OCTO AssetBundle配信基盤 GKEに挑戦 たぶんCA初?GKE BlueGreen等が簡単に

Slide 13

Slide 13 text

AbemaTV広告本部 GKE microservice 挑戦

Slide 14

Slide 14 text

CONTENTS 1. 簡単な事業紹介 2. k8sを使うまで 3. k8sの運用 4. よく聞かれる質問 5. まとめ

Slide 15

Slide 15 text

構成図

Slide 16

Slide 16 text

環境 DEV STG PRD LOAD JDEV

Slide 17

Slide 17 text

Build drone ciでビルド Container Registryに

Slide 18

Slide 18 text

Devへのリリース ChatOps $ kubectl set image

Slide 19

Slide 19 text

Prdへのリリース GH Release作成 deployment.yaml修正 カナリアリリース 全体リリース Slackにリリース内容を通知

Slide 20

Slide 20 text

cannary nameを変える replicasは1 labelsでserviceが判断

Slide 21

Slide 21 text

CONTENTS 1. 簡単な事業紹介 2. k8sを使うまで 3. k8sの運用 4. よく聞かれる質問 5. まとめ

Slide 22

Slide 22 text

nodeとPod数の戦略 POD POD POD POD POD POD POD POD POD POD POD POD POD POD POD POD POD POD POD POD POD POD 小さいPodを大量に配置するのが基本

Slide 23

Slide 23 text

nodeとPod数の戦略 POD POD POD POD POD POD POD POD POD POD POD POD POD POD POD POD POD POD POD POD POD POD POD POD POD POD JVM等は大きくなってしまう。

Slide 24

Slide 24 text

nodeとPod数の戦略 n1-standard-16 n1-highcpu-32 2つのnodepool使い分けている。

Slide 25

Slide 25 text

DBに関して k8s内でDB構築は可能 GKEだとvolumeが使いづらい 基本はマネージド・サービスを使う ただしredis等はPodもありかも?

Slide 26

Slide 26 text

microservice ad-server 広告 SSP 広告枠 DMP ユーザデータ Logging ログ 基本的には組織の境界と責務で分離 メディア 広告主 DS/ML 意思決定

Slide 27

Slide 27 text

microservice ad-server 広告 SSP 広告枠 DMP ユーザデータ Logging ログ MySQL Mongodb Bigtable Bigquery 基本的にはDBとマイクロサービスは1対1

Slide 28

Slide 28 text

microservice ad-server SSP DMP ユーザデータ Logging ログ MySQL Mongodb Bigtable Bigquery SSP-deliver ad-deliver スケーリング戦略でサービスを分割して同一DBを使う場合もある。

Slide 29

Slide 29 text

microservice ad-server SSP DMP ユーザデータ Logging ログ MySQL Mongodb Bigtable Bigquery SSP-deliver ad-deliver chatbot ML stock transcoder

Slide 30

Slide 30 text

CONTENTS 1. 簡単な事業紹介 2. k8sを使うまで 3. k8sの運用 4. よく聞かれる質問 5. まとめ

Slide 31

Slide 31 text

まとめ GKE+microservice最高!