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.1k
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.2k
事業と歩む Ameba システム刷新の道 / the-road-to-ameba-system-renovation-aws-summit-online
kakerukaeru
0
1.7k
事業と歩むAmebaシステム刷新の道 / the-road-to-ameba-system-renovation-cadc
kakerukaeru
0
520
The Shining / ~all work and no play makes jack a dull boy~
kakerukaeru
0
330
AmebaとCDNのお付き合いの歴史 / ameba cdn waiwai
kakerukaeru
0
100
fastlyでええかんじにサイトリニューアル @ Yamagoya Meetup 2018 / e-kanzi Website renewal with fastly
kakerukaeru
0
490
20160907_Akamai_Tech_Deep_Dive
kakerukaeru
0
2.1k
はじめるCassandra
kakerukaeru
1
290
ansible is nani
kakerukaeru
1
350
Other Decks in Technology
See All in Technology
大規模データ基盤チームのオンプレTiDB運用への挑戦 / dpu-tidb
cyberagentdevelopers
PRO
1
110
生成AIと知識グラフの相互利用に基づく文書解析
koujikozaki
1
150
小規模に始めるデータメッシュとデータガバナンスの実践
kimujun
4
630
君は隠しイベントを見つけれるか?
mujyun
0
360
RAGのためのビジネス文書解析技術
eida
3
350
AWS CDKでデータリストアの運用、どのように設計する?~Aurora・EFSの実践事例を紹介~/aws-cdk-data-restore-aurora-efs
mhrtech
4
710
オーティファイ会社紹介資料 / Autify Company Deck
autifyhq
9
120k
신뢰할 수 있는 AI 검색 엔진을 만들기 위한 Liner의 여정
huffon
0
440
【技術書典17】OpenFOAM(自宅で極める流体解析)2次元円柱まわりの流れ
kamakiri1225
0
240
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
5
49k
DatabricksにおけるLLMOpsのベストプラクティス
taka_aki
3
1.1k
Commitment vs Harrisonism - Keynote for Scrum Niseko 2024
miholovesq
6
1.3k
Featured
See All Featured
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
4
320
Product Roadmaps are Hard
iamctodd
PRO
48
10k
Scaling GitHub
holman
458
140k
How GitHub (no longer) Works
holman
311
140k
We Have a Design System, Now What?
morganepeng
50
7.2k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
42
9.2k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
6.9k
Fontdeck: Realign not Redesign
paulrobertlloyd
81
5.2k
Making the Leap to Tech Lead
cromwellryan
133
8.9k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
27
1.9k
Reflections from 52 weeks, 52 projects
jeffersonlam
346
20k
Bash Introduction
62gerente
608
210k
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 !