Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up
for free
みてねSREチームの取り組み / What the Mitene SRE team has improved
Isao Shimizu
September 05, 2018
Technology
1
1.7k
みてねSREチームの取り組み / What the Mitene SRE team has improved
みてねのMeetup #2 for サーバーサイド/SRE
September 5, 2018
Isao Shimizu
September 05, 2018
Tweet
Share
More Decks by Isao Shimizu
See All by Isao Shimizu
isaoshimizu
4
750
isaoshimizu
7
5.9k
isaoshimizu
6
3.5k
isaoshimizu
19
16k
isaoshimizu
2
570
isaoshimizu
6
10k
isaoshimizu
2
1.3k
isaoshimizu
0
1.6k
isaoshimizu
1
2.3k
Other Decks in Technology
See All in Technology
bufferings
2
3.1k
clustervr
0
190
ocise
0
140
iqbocchi
0
530
yuuturn
1
130
pinboro
1
1.6k
sakon310
4
4.3k
shirayanagiryuji
1
410
kakka
0
3.5k
sasakendayo
2
390
pinboro
0
2.1k
line_developers
PRO
0
2k
Featured
See All Featured
kastner
54
1.9k
malarkey
192
8.5k
smashingmag
229
18k
destraynor
146
19k
rasmusluckow
318
18k
schacon
145
6.6k
tmm1
61
8.4k
cherdarchuk
71
260k
samlambert
237
9.9k
jensimmons
207
10k
wjessup
338
16k
brettharned
93
3k
Transcript
みてねSRE チームの取り組み みてねのMeetup #2 for サーバーサイド/SRE September 5, 2018 Isao
Shimizu
About me 清水 勲 @isaoshimizu 株式会社ミクシィ ヴァンテージスタジオ みてね事業部 開発グループ 2011
年8 月 中途入社、SNS mixi のアプリ運用チーム 2014 年4 月 モンスターストライクのサーバーエンジニア、SRE 2018 年2 月 みてねSRE AWS Summit, TechLION, hbstudy, Internet Week, Think Japan IBM Code Day などの登壇 Qiita, Medium, Software Design 記事執筆 記事: 大規模インフラのSRE から社内スタートアップへの挑戦。ベテランエンジニアのキャリアの作り方 2
「みてね」とは 3
4
300 万人が使う No.1 家族アルバムアプリ「みてね」 公式ページ https://mitene.us/ 特徴 子供の写真や動画を共有、整理 家族だけで安心して使えるアルバムアプリ フォトブック、DVD
の販売 2015 年4 月 サービス開始 2017 年7 月 英語版提供開始 2018 年7 月 ユーザー数 300 万人突破 5
この約半年、SRE チームがやってきたこと 6
OS 、ライブラリのアップデート 古いAmazon Linux を最新に ImageMagick OpenCV 7
ミドルウェアのアップデート Amazon ElastiCache Redis Connection 増問題 tcp-keepalive が起因していた可能性 Redis 3.2
以降の場合 tcp-keepalive がデフォルトで設定される(300 秒) 8
ログ転送の最適化 Fluentd Aggregator の撤廃 よく詰まる問題が発生していた 設定のチューニングに追われる日々 Amazon Kinesis Data Firehose
の利用 S3 へのログ保存がより簡単に 9
CDN 最適化 API アクセスをCDN 経由に 署名付きURL の効率化 ワイルドカードを使った一括取得 URL 自体をクライアントサイドでキャッシュ
海外展開を目指すアプリで実装したセキュアで高速な画像配信の話 TTL 調整 長くて良いものはより長く 10
IPv6 対応(結果: 未対応) 転送、レイテンシーの高速化を狙う 対象はAPI 、画像、動画アクセス(CloudFront 、S3 ) 端末、OS 、キャリアとの相性により接続不能な環境があった
本格的に対応した事例があったらぜひ教えてください 11
Amazon Aurora 移行 RDS(MySQL 5.6) からの移行 クエリのキャパシティが大幅に増えた ディスクサイズ制限からの開放 年間におけるピークも無事に乗り切った 12
開発環境の再整備 ステージング環境の整備 エンジニアの増員により、さらに必要になった CircleCI 最適化 Ubuntu -> Amazon Linux のDocker
イメージ利用 契約プラン見直し、並列度の調整 Schedule Job の活用 1 日1 回 bundle outdated で古いgem の検出 simplecov を使ったテストカバレッジ計測 13
Ruby 、Gem のアップデート 2.2.7 -> 2.3.7 -> 2.4.4 までアップデート さらにアップデートし続けていく
環境によっては最新版 数多くのgem もアップデート Rails アップデートは進行中(4 系 -> 5 系へ) 14
Amazon S3 最適化 Amazon S3 Transfer Acceleration の利用 主に海外からのアップロードの高速化 バージョニングのライフサイクル設定
不要なバケットの削除 15
分析基盤のリニューアル(進行中) EC2 上でのスクリプト実行やCron 実行から、Luigi を使ったワークフ ロー管理へ https://github.com/spotify/luigi マネージドサービスを中心に設計 インフラのコード化、デプロイの自動化などもあわせて 16
Terraform へ移行 Terraform https://www.terraform.io/ 手軽なCloudWatch Alarm から移行し、IAM 、Security Group miam
、piculet から移行(さらに管理対象を増やしていく) CI との連携実装済み GitHub Pull Request 作成で terraform plan 、マージで terraform apply tfnotify の活用 https://github.com/mercari/tfnotify workspace は使わずディレクトリで分ける構成 17
コンテナ環境への移行(進行中) AWS OpsWorks から移行 Amazon ECS, EKS の検証 コンテナイメージのビルドフロー構築 AWS
CodeBuild 積極活用 Docker Hub からAmazon ECR へ移行 開発環境のコンテナ化 本番環境のコンテナ化(Kubernetes 利用予定) 18
その他 Nginx gzip 対応 JSON レスポンスの圧縮 AWS SDK のアップデート New
Relic Mobile 導入 AWS メンテ対応(Redis ) 不要なEBS 、RDS 、EC2 インスタンス、スナップショットの削除 19
これからもさらなる改善を続けていきます! 20
Join our team!! https://mitene.us/recruit 21