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
アプリケーション開発に欠かせない CI/CD を横断組織として支援している話 - MIXI ...
Search
Shun
March 01, 2023
Technology
1.8k
1
Share
アプリケーション開発に欠かせない CI/CD を横断組織として支援している話 - MIXI TECH CONFERENCE 2023
MIXI TECH CONFERENCE 2023 Day1 で発表したセッションのスライドです。
https://techcon.mixi.co.jp/d1-9
Shun
March 01, 2023
More Decks by Shun
See All by Shun
IaaS/SaaS管理における SREの実践 - SRE Kaigi 2026
bbqallstars
5
3.8k
DMARC 対応の話 - MIXI CTO オフィスアワー #04
bbqallstars
1
290
徹底的な自動化とトイルの撲滅で実現する効率的なSREの実践例 - SRE NEXT 2024
bbqallstars
8
4.6k
限られた人数で MIXI のあらゆる公式サイト群を保守・運用する ノウハウとその体制 | MIXI SRE秋祭り 〜 MIXIのもうひとつのSRE 〜
bbqallstars
7
5.5k
GitHub self-hosted runner を利用した独自の CI プラットフォームの開発と運用 | CI/CD Conference 2023 by CloudNative Days 前夜祭
bbqallstars
3
850
Other Decks in Technology
See All in Technology
Hacobu Tech Deck
hacobu
PRO
0
110
明日からドヤれる!超マニアックなAWSセキュリティTips10連発 / 10 Ultra-Niche AWS Security Tips
yuj1osm
0
600
Route 53 Global Resolver で高額課金発生!
otanikohei2023
0
110
AWS認定資格は本当に意味があるのか?
nrinetcom
PRO
2
280
自分のハンドルは自分で握れ! ― 自分のケイパビリティを増やし、メンバーのケイパビリティ獲得を支援する ― / Take the wheel yourself
takaking22
1
930
自立を加速させる神器 - EMOasis #11
stanby_inc
0
150
社内エンジニア勉強会の醍醐味と苦しみ/tamadev
nishiuma
0
220
ハーネスエンジニアリングをやりすぎた話 ~そのハーネスは解体された~
gotalab555
4
1.8k
マルチエージェント × ハーネスエンジニアリング × GitLab Duo Agent Platformで実現する「AIエージェントに仕事をさせる時代へ。」 / 20260421 GitLab Duo Agent Platform
n11sh1
0
170
AzureのIaC管理からログ調査まで、随所に役立つSkillsとCustom-Instructions / Boosting IaC and Log Analysis with Skills
aeonpeople
0
240
コードや知識を組み込む / Incorporate Code and Knowledge
ks91
PRO
0
160
エージェントスキルを作って自分のインプットに役立てよう
tsubakimoto_s
0
390
Featured
See All Featured
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
410
The Cost Of JavaScript in 2023
addyosmani
55
9.8k
Amusing Abliteration
ianozsvald
1
160
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
220
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
340
GraphQLとの向き合い方2022年版
quramy
50
15k
エンジニアに許された特別な時間の終わり
watany
106
240k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.4k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.2k
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.4k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Transcript
©MIXI アプリケーション開発に⽋かせない CI/CD を横断組織として⽀援している話 開発本部 CTO室 SREグループ 多⽻⽥ 俊
©MIXI 目次 • エンジニアの横断組織:開発本部の紹介 • SRE グループの紹介 • アプリの CI/CD
⽀援の話 ◦ 事例1:ビルドマシンの貸与⽀援 ◦ 事例2:Unity Build Server の保守・運⽤ ◦ 事例3:社内 CI サービスの開発・保守・運⽤ ◦ 事例4: CI/CD 導⼊⽀援 ◦ 事例5:その他の取り組み • まとめ • 宣伝:SRE グループの紹介
©MIXI 【名前】 多羽田 俊(たばた しゅん) 【所属】株式会社 MIXI 開発本部 CTO 室
SRE グループ 【来歴】 • 前職では主に Web アプリケーションのバックエンド開発を中心に、 フロントや iOS アプリの開発も経験 • 現在は主に会社の基盤システムの設計から開発・保守・運用や、プ ロジェクトへの DevOps 支援などを行なっている • アプリの開発経験から、最近はアプリの CI/CD の導入支援などを行 なっている -好きなこと- 猫(2匹飼ってます)、音楽、 作曲、お酒 - Twitter - @bbq_all_stars 自己紹介
©MIXI エンジニアの横断組織 開発本部の紹介
©MIXI 特定のプロダクト・ サービスに所属するエンジニア 横断的に複数のサービス・ プロジェクトに関わるエンジニア 横断的に複数のサービス・ プロジェクトに関わるエンジニア エンジニア組織について
©MIXI SRE グループの紹介
©MIXI 特定のプロダクト・ サービスに所属するエンジニア 横断的に複数のサービス・ プロジェクトに関わるエンジニア SRE エンジニア組織について
©MIXI SREグループの紹介 <SREグループの⽅針・ミッション> ・注⼒事業におけるサービスの信頼性向上のための⾏動 ・サービス運⽤における効率化と⾃動化、ワークフロー改善 ・破壊と安定を繰り返し、安定運⽤のための⾏動を取り続ける ・各事業横断で、ノウハウを最も持つ組織 ⇒技術でプロダクト・サービスの価値向上(のサポート)をする
©MIXI SREグループの紹介 MIXIのSREグループは主に3つの業務を⾏っています 注力事業の支援 ・サービスを支える基盤の構築や運用 ・パフォーマンス向上 ・イベントやキャンペーンを乗り越えるための 対策の検討/実施 ・新規サービス(アプリ)の構築 ・サービスのアプリケーション開発
エンジニアのいない領域への支援 ・運用主管のなくなったサイトのメンテナンス ・eスポーツの円滑化/安定化支援 ・社内報やコーポレートサイトの構築運用支援 ・新卒向け技術教育のコンテンツ/講師など 全社的な横軸での案件サポート ・社内ツール 運用 ・ゲーム基盤システム の運用 ・新規ゲームのためのガイドブックなどの ドキュメント/ルール整備など
©MIXI SREグループの紹介 MIXIのSREグループは主に3つの業務を⾏っています 注力事業の支援 ・サービスを支える基盤の構築や運用 ・パフォーマンス向上 ・イベントやキャンペーンを乗り越えるための 対策の検討/実施 ・新規サービス(アプリ)の構築 ・サービスのアプリケーション開発
エンジニアのいない領域への支援 ・運用主管のなくなったサイトのメンテナンス ・eスポーツの円滑化/安定化支援 ・社内報やコーポレートサイトの構築運用支援 ・新卒向け技術教育のコンテンツ/講師など 全社的な横軸での案件サポート ・社内ツール 運用 ・ゲーム基盤システム の運用 ・新規ゲームのためのガイドブックなどの ドキュメント/ルール整備など
©MIXI アプリの CI/CD ⽀援の話
©MIXI CI/CD をやりたい! ハイスペック環境 でビルドしたい アプリの署名を したい アプリの配布をし たい CI
サービスはどこ を使ったら良いだろ う? 会社ですぐに使え る CI サービスを 知りたい 〇〇という CI サービ スを使いたい
©MIXI 何をビルドしますか? iOS App Android App Windows App Flutter App
Cocos2d-x Web App Unity Unreal Engine
©MIXI 何でビルドしますか? Linux Windows Mac GitHub Actions Unity Build Server
Circle CI Bitrise Code Build Cloud Build
©MIXI なんでビルドしたいんですか? リリース版のアプリ をビルドしてストア に配信したい 開発版のアプリを ビルドして配布し たい Asset Bundle
を作 成したい 外部の開発会社に 対して配布したい In-house で社内向 けアプリの配信を したい テストを実行した い
©MIXI それ SRE グループがお⼿伝いします
©MIXI 事例1:ビルドマシン貸与⽀援
©MIXI 事例1:ビルドマシン貸与支援 • 社内 IT の部署と協⼒して、ビルドマシン貸与の相談依頼を受付 • 現場と社内 IT の折衝をすることで、コストとパフォーマンスの
全体最適化を⾏う • 場合によってはビルドマシンの貸与ではなく、既存の CI サービ スに誘導することも
©MIXI 事例2:Unity Build Server の 保守・運⽤
©MIXI 事例2:Unity Build Server の保守・運用 • Unity が提供している CI/CD ソリューション
• 通常のライセンスとは違う、ビルド専⽤のフローティングライセ ンスを使⽤してビルドするもの ◦ ビルド時にライセンスを消費する ◦ Unity Organization 内でライセンスを融通し合える ◦ 値段が通常のライセンスよりもかなり安い ◦ ただし、ライセンスを管理するライセンスサーバーが必要 • ライセンスの発⾏、設定、API の提供、ライセンスサーバーの保 守・運⽤を SRE で担当 • 利⽤申請フロー等を整備して全体に周知
©MIXI 事例2:Unity Build Server の保守・運用 • ライセンスを共有する Unity Organizationを複数作成し、ライセ ンスを管理しています
• 低めのスペックの EC2 内に Docker コンテナを⽴てて運⽤しています • ライセンスサーバーの前段の IP を固 定する必要があり、NGINX を挟んで います • ACM を使⽤したかったため、ALB を挟んでいます ◦ 詳細は技術ブログで公開予定
©MIXI 事例3:社内 CI サービスの保守・運⽤
©MIXI 事例3:社内 CI サービスの保守・運用 • 任意の環境でアプリをビルドすることができる独⾃の CI サービ ス •
既存の CI サービスよりも安い環境で使いたいというニーズから SRE グループで開発 • GitHub App をリポジトリにインストールするだけでビルドを実 ⾏できる
©MIXI 事例3:社内ビルド環境の保守・運用 • Vagrant + Parallels Desktop で 仮想環境を作成し、その中で GitHub
self-hosted runner を使 ってビルドを回している • GitHub self-hosted runner を使 ⽤しているため、既存の GitHub Actions を使⽤することができる • 詳細はこちらで発表しています ◦ 動的に仮想環境を構築して CI/CD を 実⾏する| by BBQ All Stars | MIXI DEVELOPERS ◦ CI/CD Conference 2023 前夜祭 (前 夜ではない) - connpass
©MIXI 事例4: CI/CD 導⼊⽀援
©MIXI 事例4:CI/CD 導入支援 • プロジェクトでのアプリの CI/CD の導⼊の⽀援を⾏っています • プロジェクト側で継続的なビルド・配信ができるように、ビルド ワークフローの設計・導⼊をしています
• 例えば以下のような⽀援をしています ◦ Git のブランチやタグの運⽤ ◦ 配信のワークフロー設計 ▪ 各開発環境⽤のバージョンの社内配布 ▪ リリース版のストアへの配布 ◦ 証明書の発⾏・管理 ◦ Apple Pay の ID・証明書管理も ◦ ビルド⽀援ツールの開発も⾏ったりしています ▪ https://github.com/bbq-all-stars/bitrise-step-google-play-rollout
©MIXI 事例5:その他の取り組み
©MIXI 事例5:その他の取り組み 開発本部も含めて以下のような取り組みを⾏っています • GitHub Actions のクレジット管理 • Circle CI
の契約 • DeployGate の管理 • etc… • 運⽤フローの整備と周知 • 予算は開発本部持ちにすることで、コストとパフォーマンスの全 体最適化を⾏っている
©MIXI まとめ
©MIXI まとめ • MIXI には開発本部という横断組織があります • その中の SRE グループでは、技術でプロダクト・サービスの価 値向上(のサポート)をしています
• その⼀環として、アプリビルドに関する各種⽀援を⾏っています • このような⽀援を横断組織で⾏うことで、コストとパフォーマン スの全体最適化を⾏っています
©MIXI 宣伝:SRE グループの紹介
©MIXI 宣伝:SRE グループの紹介 MIXIのSREグループは主に3つの業務を⾏っています(再掲) 注力事業の支援 ・サービスを支える基盤の構築や運用 ・パフォーマンス向上 ・イベントやキャンペーンを乗り越えるための 対策の検討/実施 ・新規サービス(アプリ)の構築
・サービスのアプリケーション開発 エンジニアのいない領域への支援 ・運用主管のなくなったサイトのメンテナンス ・eスポーツの円滑化/安定化支援 ・社内報やコーポレートサイトの構築運用支援 ・新卒向け技術教育のコンテンツ/講師など 全社的な横軸での案件サポート ・社内ツール 運用 ・ゲーム基盤システム の運用 ・新規ゲームのためのガイドブックなどの ドキュメント/ルール整備など
©MIXI SREグループの技術領域は多岐に渡ります。 クラウド インフラ管理 オンプレミス ミドルウェア等 コンテナ関連 アプリケーション CI/CD Ruby,Go,Perl,Elixir,
Kotlin,Flutter Jenkins,CircleCI, GitHub Actions, Bitrise,Cloud Build nginx,MySQL,memcached,Redis,Fluentd K8s,Docker Terraform, CloudFormation AWS,GCP 物理サーバ, ネットワークスイッチ 宣伝:SRE グループの紹介
©MIXI We are hiring!! 採用情報 https://mixigroup-recruit.mixi.co.jp/ MIXI 採用 SRE \
積極採用中! /
©MIXI