Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
トレタを支える技術(インフラ編)
Search
wind-up-bird
August 02, 2019
Technology
0
94
トレタを支える技術(インフラ編)
wind-up-bird
August 02, 2019
Tweet
Share
More Decks by wind-up-bird
See All by wind-up-bird
いつもみてるよ、エラーもその先も
w1ndupb1rd
0
110
CDNの自動割当ドメインをすべて独自ドメインに移行したよ
w1ndupb1rd
0
22
Teachme Biz で利用するドメインを統合して安心安全に静的コンテンツを取得する
w1ndupb1rd
0
150
studist tech talk #1
w1ndupb1rd
1
200
トレタの大規模バックエンドを移行するまでの道のりと舞台裏
w1ndupb1rd
1
120
Other Decks in Technology
See All in Technology
mairuでつくるクレデンシャルレス開発環境 / Credential-less development environment using Mailru
mirakui
5
550
AI駆動開発の実践とその未来
eltociear
1
260
re:Invent 2025 ~何をする者であり、どこへいくのか~
tetutetu214
0
220
品質のための共通認識
kakehashi
PRO
4
370
大企業でもできる!ボトムアップで拡大させるプラットフォームの作り方
findy_eventslides
1
840
年間40件以上の登壇を続けて見えた「本当の発信力」/ 20251213 Masaki Okuda
shift_evolve
PRO
1
140
Microsoft Agent 365 についてゆっくりじっくり理解する!
skmkzyk
0
380
CARTAのAI CoE が挑む「事業を進化させる AI エンジニアリング」 / carta ai coe evolution business ai engineering
carta_engineering
0
2k
寫了幾年 Code,然後呢?軟體工程師必須重新認識的 DevOps
cheng_wei_chen
1
1.5k
2025年 開発生産「可能」性向上報告 サイロ解消からチームが能動性を獲得するまで/ 20251216 Naoki Takahashi
shift_evolve
PRO
2
200
Snowflakeでデータ基盤を もう一度作り直すなら / rebuilding-data-platform-with-snowflake
pei0804
6
1.6k
マイクロサービスへの5年間 ぶっちゃけ何をしてどうなったか
joker1007
16
6.6k
Featured
See All Featured
My Coaching Mixtape
mlcsv
0
6
Become a Pro
speakerdeck
PRO
31
5.7k
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Practical Orchestrator
shlominoach
190
11k
How GitHub (no longer) Works
holman
316
140k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
0
25
From π to Pie charts
rasagy
0
86
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
47
33k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
85
Transcript
トレタを支える技術(インフラ編) 〜過去・現在・未来〜 1
Introduction 柳楽瑛(@_windupbird_) 2018 年末にトレタに Join SRE チーム所属 トレタのインフラ全般を担当 前職: メール配信/
セキュリティサービス 2
Agenda 過去 インフラの変遷 現在 アーキテクチャ 開発フロー/ 開発ツール 現状の課題 未来 今後やっていきたいこと
まとめ 3
過去 : インフラの変遷 4
インフラの変遷 創業(2013 年) 〜 2015 年 EngineYard, Heroku, AWS, GCP
( 主にBQ) 2016 年 EY => AWS へ全面的に移行 2017 年 〜 2018 年 Kubernetes (GKE) の採用 2019 年 〜 Kubernetes (EKS) の採用と移行 5
インフラの変遷 2015 年 2019 年 6
現在 : 利用サービス 7
利用しているクラウドサービス AWS EC2, Aurora, S3, ELB, SQS, SNS, Route53, Lambda,
Codebuild, ApiGateway, EKS ... トレタの主要サービス GCP BigQuery, Compute Engine, EKS, CloudFunction, StackDriver, GKE ... データ/ ログ解析, 一部toC 向けサービス, Backup ... Heroku 既存サービス, Feasibility Study ... 8
現在: アーキテクチャ 9
アーキテクチャ 思想: シンプルで高可用性が設計の基本。 既存サービスA 代表例 LB (ALB, NLB) Nginx (EC2)
= キャッシュ&R プロキシ Rails (EC2) = アプリケーション Redis (EC2) = Sidekiq 非同期処理 DB (Aurora) = Writer + Reader * 2 10
全体像 構成: コアAPI を主軸にスター型のサブシステム構成 11
現在: 開発フロー/ ツール 12
開発フロー Github GitFlow による開発 CI/CD 各 Branch への merge による自動化
CircleCI 2.1 Feature: Build, Test, DryRun develop/master: staging/production deploy 13
開発ツール ( の一部) Packer + Ansible + Serverspec 各システム毎に定義 OS(ubuntu),
MW(nginx, monit, mackerelagent), *env, tdagent, Newrelic etc... Terraform 各システム毎に *.tf を定義 NW, LB, EC2 (Target Group, Listener, AutoScaling) etc... RoadWorker 作成したリソースに対して、DNS を設定。 14
現在 : 稼働率 15
稼働率 サービスの稼働は安定 16
現在: 無問題 17
なわけがなく。。。 18
課題 OS まわり EOL => アップデート 各サブシステム毎にそれそれVUP 大小含め約 10 サービス
事前検証 + staging でリハーサル + 本番 すべてシステム無停止で実施(済) 今後もアップデートし続けなければならない。 19
Packer まわり Packer の複雑化 使われていないコードが、たまによくある。 20
Packer 実行時間 1 回の実行で40 分超も。。。 明らかに詰め込み過ぎた 段階的な build の仕組み 根本的に見直す必要が出てきた
21
EC2 まわり EC2 インスタンスの起動時間 AutoScaling で起動までに7 分 突発的なアクセスだと間に合わない可能性も 特に toC
向けのサービスではクリティカル XXX on EC2 Managed サービスへの段階的な移行 EY 時代の名残もある。 これも今後移行していく(予定)。 22
DB まわり 肥大化 ユーザ数、システム拡大に伴うトラフィックの増加 [App] switch_point の導入 [Infra] スケールアップで対応 ETL
の処理時間 10 時間程度かかる 並列度あげる このままだと、いずれ頭打ちとなる可能性 DB の分割などアーキテクチャの見直し 23
未来: やっていきたいこと 24
やっていきたいこと XXX on EC2 からの脱却 マネージドサービスへの移行を加速 MicroService 化 kubernetes の導入
Auto Scaling, Auto Healing 障害の局所化 開発速度の向上 DB やそれ以外にも色々。。。 25
まとめ 26
過去 トレタのインフラの変遷 現在 シンプルで高可用性 サービスの拡大やユーザの増加に伴い、どんどん課題も 出てきた 未来 開発速度の向上 安定かつ快適なサービスの継続的な提供 27
最後に 28
https://corp.toreta.in/recruit/engineer/ 29