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
ghe_ameba_arekore
Search
kakerukaeru
September 26, 2016
Technology
2
2.2k
ghe_ameba_arekore
kakerukaeru
September 26, 2016
Tweet
Share
More Decks by kakerukaeru
See All by kakerukaeru
大規模ImageOptimizer利用案件から学ぶ 安心安全のCDN移行 / Fastly yamagoya 2022
kakerukaeru
1
1.3k
事業と歩む Ameba システム刷新の道 / the-road-to-ameba-system-renovation-aws-summit-online
kakerukaeru
0
1.9k
事業と歩むAmebaシステム刷新の道 / the-road-to-ameba-system-renovation-cadc
kakerukaeru
0
660
The Shining / ~all work and no play makes jack a dull boy~
kakerukaeru
0
410
AmebaとCDNのお付き合いの歴史 / ameba cdn waiwai
kakerukaeru
0
130
fastlyでええかんじにサイトリニューアル @ Yamagoya Meetup 2018 / e-kanzi Website renewal with fastly
kakerukaeru
0
590
20160907_Akamai_Tech_Deep_Dive
kakerukaeru
0
2.2k
はじめるCassandra
kakerukaeru
1
300
ansible is nani
kakerukaeru
1
380
Other Decks in Technology
See All in Technology
異業種出身エンジニアが気づいた、転向して十数年経っても変わらない自分の武器とは
macnekoayu
0
250
まだ間に合う! StrandsとBedrock AgentCoreでAIエージェント構築に入門しよう
minorun365
PRO
10
640
コスト削減の基本の「キ」~ コスト消費3大リソースへの対策 ~
smt7174
2
300
Flutterでキャッチしないエラーはどこに行く
taiju59
0
200
ZOZOマッチのアーキテクチャと技術構成
zozotech
PRO
2
670
新規案件の立ち上げ専門チームから見たAI駆動開発の始め方
shuyakinjo
0
620
Jaws-ug名古屋_LT資料_20250829
azoo2024
3
200
Product Management Conference -AI時代に進化するPdM-
kojima111
0
270
モダンフロントエンド 開発研修
recruitengineers
PRO
9
5.9k
「守る」から「進化させる」セキュリティへ ~AWS re:Inforce 2025参加報告~ / AWS re:Inforce 2025 Participation Report
yuj1osm
1
180
「魔法少女まどか☆マギカ Magia Exedra」のグローバル展開を支える、開発チームと翻訳チームの「意識しない協創」を実現するローカライズシステム
gree_tech
PRO
0
400
自社製CMSからmicroCMSへのリプレースがプロダクトグロースを加速させた話
nextbeatdev
0
410
Featured
See All Featured
Java REST API Framework Comparison - PWX 2021
mraible
33
8.8k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
185
54k
Producing Creativity
orderedlist
PRO
347
40k
Art, The Web, and Tiny UX
lynnandtonic
302
21k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
6.1k
Facilitating Awesome Meetings
lara
55
6.5k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
110
20k
The Straight Up "How To Draw Better" Workshop
denniskardys
236
140k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.6k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
30
9.6k
The Invisible Side of Design
smashingmag
301
51k
Transcript
Amebaのinfraを支える GHEとアレコレ CyberAgent, Inc 岩永 翔
自己紹介
❏ :インフラエンジニアしてます @CyberAgent ❏ :Ameba基盤システムの面倒見るマンしてます ❏ :コンテンツ配信、認証、ナドナドの基盤 ❏ :最近、GHEのAdminチームのお手伝い始めた ❏
♨:マイブームは、Consul ❏ :どっかで雑に組み込みたい 岩永 翔 (いわなが かける)@kakerukaeru
突然ですが
今日は GHEのAdmin 的な話はしません
Agenda
❏ AmebaとGHE ❏ Amebaとinfra ❏ Amebaのinfraを支えるGHEとアレコレ ❏ まとめ Agenda
AmebaとGHE
❏ 2013/04導入 ❏ 現在 ❏ 879 users ❏ 10,150 repos
❏ 407 Organizations AmebaとGHE
Amebaとinfra
❏ 2004年ぐらいから発足 Amebaとinfra
❏ 2004年ぐらいから発足 ❏ 意外と長い Amebaとinfra
❏ 2004年ぐらいから発足 ❏ 意外と長い ❏ 現在のinfra環境 Amebaとinfra
❏ 2004年ぐらいから発足 ❏ 意外と長い ❏ 現在のinfra環境 ❏ private Cloud(OpenStack/KVM) +
AWS + GCP Amebaとinfra
❏ 2004年ぐらいから発足 ❏ 意外と長い ❏ 現在のinfra環境 ❏ private Cloud(OpenStack/KVM) +
AWS + GCP ❏ オンプレ分だけで18000台ぐらいかかえてる Amebaとinfra
❏ 2004年ぐらいから発足 ❏ 意外と長い ❏ 現在のinfra環境 ❏ private Cloud(OpenStack/KVM) +
AWS + GCP ❏ オンプレ分だけで18000台ぐらいかかえてる ❏ public cloud分は把握できてない... Amebaとinfra
❏ 2004年ぐらいから発足 ❏ 意外と長い ❏ 現在のinfra環境 ❏ private Cloud(OpenStack/KVM) +
AWS + GCP ❏ オンプレ分だけで18000台ぐらいかかえてる ❏ public cloud分は把握できてない... ❏ インフラエンジニアは20人ぐらい Amebaとinfra
❏ 2004年ぐらいから発足 ❏ 意外と長い ❏ 現在のinfra環境 ❏ private Cloud(OpenStack/KVM) +
AWS + GCP ❏ オンプレ分だけで18000台ぐらいかかえてる ❏ public cloud分は把握できてない... ❏ インフラエンジニアは20人ぐらい ❏ 新陳代謝の激しいPROJECT達 :) Amebaとinfra
❏ 2004年ぐらいから発足 ❏ 意外と長い ❏ 現在のinfra環境 ❏ private Cloud(OpenStack/KVM) +
AWS + GCP ❏ オンプレ分だけで18000台ぐらいかかえてる ❏ public cloud分は把握できてない... ❏ インフラエンジニアは20人ぐらい ❏ 新陳代謝の激しいPROJECT達 :) ❏ PROJECT数は2000ぐらいから数えるのをやめた Amebaとinfra
❏ こういう環境で起こりがちなこと Amebaとinfra
❏ こういう環境で起こりがちなこと ❏ 次々と立ち上がるサービス達 Amebaとinfra
❏ こういう環境で起こりがちなこと ❏ 次々と立ち上がるサービス達 ❏ インフラエンジニアの年金を支える若者的構図 Amebaとinfra
❏ こういう環境で起こりがちなこと ❏ 次々と立ち上がるサービス達 ❏ インフラエンジニアの年金を支える若者的構図 Amebaとinfra
❏ こういう環境で起こりがちなこと ❏ 次々と立ち上がるサービス達 ❏ インフラエンジニアの年金を支える若者的構図 ❏ 進むinfra codeの負の遺産化 Amebaとinfra
❏ こういう環境で起こりがちなこと ❏ 次々と立ち上がるサービス達 ❏ インフラエンジニアの年金を支える若者的構図 ❏ 進むinfra codeの負の遺産化 ❏
久しぶりにchef動かしたら、通らない... Amebaとinfra
❏ こういう環境で起こりがちなこと ❏ 次々と立ち上がるサービス達 ❏ インフラエンジニアの年金を支える若者的構図 ❏ 進むinfra codeの負の遺産化 ❏
久しぶりにchef動かしたら、通らない... ❏ 同じroleのサーバだけど設定の差分が... Amebaとinfra
❏ こういう環境で起こりがちなこと ❏ 次々と立ち上がるサービス達 ❏ インフラエンジニアの年金を支える若者的構図 ❏ 進むinfra codeの負の遺産化 ❏
久しぶりにchef動かしたら、通らない... ❏ 同じroleのサーバだけど設定の差分が... ❏ サーバ構築の職人化... Amebaとinfra
❏ こういう環境で起こりがちなこと ❏ 次々と立ち上がるサービス達 ❏ インフラエンジニアの年金を支える若者的構図 ❏ 進むinfra codeの負の遺産化 ❏
久しぶりにchef動かしたら、通らない... ❏ 同じroleのサーバだけど設定の差分が... ❏ サーバ構築の職人化... ❏ もうだめだ Amebaとinfra
❏ 改善したい Amebaとinfra
❏ 改善したい ❏ 単純なinfraのCode化ではダメ Amebaとinfra
❏ 改善したい ❏ 単純なinfraのCode化ではダメ ❏ 生まれた瞬間から負債化 Amebaとinfra
❏ 改善したい ❏ 単純なinfraのCode化ではダメ ❏ 生まれた瞬間から負債化 ❏ 負債化しにくい仕組みが大事 Amebaとinfra
❏ 改善したい ❏ 単純なinfraのCode化ではダメ ❏ 生まれた瞬間から負債化 ❏ 負債化しにくい仕組みが大事 ❏ 何で実現しよう?
Amebaとinfra
❏ 改善したい ❏ 単純なinfraのCode化ではダメ ❏ 生まれた瞬間から負債化 ❏ 負債化しにくい仕組みが大事 ❏ 何で実現しよう?
❏ infraの継続的インテグレーション(CI)? Amebaとinfra
❏ 改善したい ❏ 単純なinfraのCode化ではダメ ❏ 生まれた瞬間から負債化 ❏ 負債化しにくい仕組みが大事 ❏ 何で実現しよう?
❏ infraの継続的インテグレーション(CI)? ❏ あるべき姿を定義し Amebaとinfra
❏ 改善したい ❏ 単純なinfraのCode化ではダメ ❏ 生まれた瞬間から負債化 ❏ 負債化しにくい仕組みが大事 ❏ 何で実現しよう?
❏ infraの継続的インテグレーション(CI)? ❏ あるべき姿を定義し ❏ infraの継続的デリバリー(CD)? Amebaとinfra
❏ 改善したい ❏ 単純なinfraのCode化ではダメ ❏ 生まれた瞬間から負債化 ❏ 負債化しにくい仕組みが大事 ❏ 何で実現しよう?
❏ infraの継続的インテグレーション(CI)? ❏ あるべき姿を定義し ❏ infraの継続的デリバリー(CD)? ❏ フローを整え属人化の排除 Amebaとinfra
Amebaのinfraを支える GHEとアレコレ
❏ CI / CD を加速させるGitHub Integration達 Amebaのinfraを支えるGHEとアレコレの一例
❏ CI / CD を加速させるGitHub Integration達 ❏ OS imageのCI/CD Amebaのinfraを支えるGHEとアレコレの一例
❏ CI / CD を加速させるGitHub Integration達 ❏ OS imageのCI/CD ❏
GHE + CircleCI + packer + serverspec Amebaのinfraを支えるGHEとアレコレの一例
❏ CI / CD を加速させるGitHub Integration達 ❏ OS imageのCI/CD ❏
GHE + CircleCI + packer + serverspec ❏ OpenStack環境のCI/CD Amebaのinfraを支えるGHEとアレコレの一例
❏ CI / CD を加速させるGitHub Integration達 ❏ OS imageのCI/CD ❏
GHE + CircleCI + packer + serverspec ❏ OpenStack環境のCI/CD ❏ GHE + CircleCI + Terraform ⇒ OpenStack Amebaのinfraを支えるGHEとアレコレの一例
❏ CI / CD を加速させるGitHub Integration達 ❏ OS imageのCI/CD ❏
GHE + CircleCI + packer + serverspec ❏ OpenStack環境のCI/CD ❏ GHE + CircleCI + Terraform ⇒ OpenStack ❏ infra ProvisioningのCI/CD Amebaのinfraを支えるGHEとアレコレの一例
❏ CI / CD を加速させるGitHub Integration達 ❏ OS imageのCI/CD ❏
GHE + CircleCI + packer + serverspec ❏ OpenStack環境のCI/CD ❏ GHE + CircleCI + Terraform ⇒ OpenStack ❏ infra ProvisioningのCI/CD ❏ GHE + CircleCI + serverspec + chef Amebaのinfraを支えるGHEとアレコレの一例
❏ CI / CD を加速させるGitHub Integration達 ❏ OS imageのCI/CD ❏
GHE + CircleCI + packer + serverspec ❏ OpenStack環境のCI/CD ❏ GHE + CircleCI + Terraform ⇒ OpenStack ❏ infra ProvisioningのCI/CD ❏ GHE + CircleCI + serverspec + chef ❏ DNS レコードのCI/CD Amebaのinfraを支えるGHEとアレコレの一例
❏ CI / CD を加速させるGitHub Integration達 ❏ OS imageのCI/CD ❏
GHE + CircleCI + packer + serverspec ❏ OpenStack環境のCI/CD ❏ GHE + CircleCI + Terraform ⇒ OpenStack ❏ infra ProvisioningのCI/CD ❏ GHE + CircleCI + serverspec + chef ❏ DNS レコードのCI/CD ❏ GHE + Jenkins + Roadworker Amebaのinfraを支えるGHEとアレコレの一例
❏ 言葉だけじゃなんのこっちゃ Amebaのinfraを支えるGHEとアレコレの一例
❏ 言葉だけじゃなんのこっちゃ ❏ infra ProvisioningのCI/CDを例に。 Amebaのinfraを支えるGHEとアレコレの一例
infra Provisioningの継続的インテグレーション ① chef-recipeの pullreqを契機に CircleCIのbuildが 走りだし... ② OpenStack上に 検証環境を作成し
chef + serverspec でtest
infra Provisioningの継続的デリバリー ① slack経由でhubotに release branchを 切らせて... ② 各環境に CircleCI経由で
chef適用
infra Provisioningの継続的インテグレーション + α 定期的に、 serverspec用の検証用branchを切らせて 各環境へserverspecの検証を行う
❏ 言葉だけじゃなんのこっちゃ ❏ infra ProvisioningのCI/CDを例に。 ❏ もう一つ ❏ OSレイヤ以下のCI/CD Amebaのinfraを支えるGHEとアレコレの一例
infra Provisioningの継続的デリバリー ① terraformの.tf fileの pullreqを契機に、 terraform plan ② testが通ればmergeボ
タンを押す。 コレを契機に 本番へ適用
❏ 言葉だけじゃなんのこっちゃ ❏ infra ProvisioningのCI/CDを例に。 ❏ もう一つ ❏ OSレイヤ以下のCI/CD ❏
pullreqありきのインフラ開発・構築になってきた Amebaのinfraを支えるGHEとアレコレの一例
まとめ
❏ GHEを導入してinfraのCode化が加速 まとめ
❏ GHEを導入してinfraのCode化が加速 ❏ 豊富なIntegrationのおかげでCI/CD化が楽に出来た まとめ
❏ GHEを導入してinfraのCode化が加速 ❏ 豊富なIntegrationのおかげでCI/CD化が楽に出来た ❏ 結果 ❏ devとopsがより密接に。 まとめ
❏ GHEを導入してinfraのCode化が加速 ❏ 豊富なIntegrationのおかげでCI/CD化が楽に出来た ❏ 結果 ❏ devとopsがより密接に。 ❏ devのpullreqをopsがmergeでinfra環境作成
まとめ
❏ GHEを導入してinfraのCode化が加速 ❏ 豊富なIntegrationのおかげでCI/CD化が楽に出来た ❏ 結果 ❏ devとopsがより密接に。 ❏ devのpullreqをopsがmergeでinfra環境作成
❏ pullreq駆動のinfra開発に。 まとめ
❏ GHEを導入してinfraのCode化が加速 ❏ 豊富なIntegrationのおかげでCI/CD化が楽に出来た ❏ 結果 ❏ devとopsがより密接に。 ❏ devのpullreqをopsがmergeでinfra環境作成
❏ pullreq駆動のinfra開発に。 ❏ CIによるinfraクオリティ向上 まとめ
❏ GHEを導入してinfraのCode化が加速 ❏ 豊富なIntegrationのおかげでCI/CD化が楽に出来た ❏ 結果 ❏ devとopsがより密接に。 ❏ devのpullreqをopsがmergeでinfra環境作成
❏ pullreq駆動のinfra開発に。 ❏ CIによるinfraクオリティ向上 ❏ CDによりビルドの再現可能性の向上 まとめ
❏ GHEを導入してinfraのCode化が加速 ❏ 豊富なIntegrationのおかげでCI/CD化が楽に出来た ❏ 結果 ❏ devとopsがより密接に。 ❏ devのpullreqをopsがmergeでinfra環境作成
❏ pullreq駆動のinfra開発に。 ❏ CIによるinfraクオリティ向上 ❏ CDによりビルドの再現可能性の向上 ❏ : ) まとめ
thank you !