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
Amazon EKSで構築する社内PaaS - AWS Summit Startup Cent...
Search
VTRyo
June 12, 2019
Technology
2
12k
Amazon EKSで構築する社内PaaS - AWS Summit Startup Central / create-paas-eks
AWS Summit Tokyo 2019 Startup Central 2019/6/12
VTRyo
June 12, 2019
Tweet
Share
More Decks by VTRyo
See All by VTRyo
一人から始めたSREチーム3年の歩み - 求められるスキルの変化とチームのあり方 - / The three-year journey of the SRE team, which started all by myself
vtryo
9
9.9k
2ヶ月かかるDBアップグレード検証を最大2週間に短縮した自作Go製CLIツール「Platinum」を紹介する / Introducing Go CLI tool "Platinum" for shortened DB upgrade validation
vtryo
3
1.4k
MySQLテーブル毎のデータサイズ集計をDatadog × Prometheus Exporter × Kubernetesを使って自動化する / Automate data size aggregation for each MySQL table using Datadog, Prometheus Exporter and Kubernetes
vtryo
0
360
自分だけの、誰も想像できないキャリアの育て方 ~懇親会で実践できる!偶然から始めるキャリアプラン~ / Career planning starting by luckly
vtryo
2
1.3k
なぜSREをはじめるのは難しいのか / Why is it hard to start SRE?
vtryo
1
580
Datadogでシステムとアプリケーション情報を民主化をはじめよう / System and Application information democratize with datadog
vtryo
2
3.4k
サービスと開発者に最も近いProduct SREsとして 取り組んでいるコト / Work as Product SREs closest to services and developers
vtryo
0
3k
一人から始めるプロダクトSRE / How to start SRE in a product team, all by yourself
vtryo
5
13k
へんなSlackスタンプMeetup
vtryo
0
410
Other Decks in Technology
See All in Technology
大事なのは、AIの精度だけじゃない!〜1円のズレも許されない経理領域とAI〜
jun_nemoto
11
5.2k
テストを実施する前に考えるべきテストの話 / Thinking About Testing Before You Test
nihonbuson
PRO
14
2k
他チームへ越境したら、生データ提供ソリューションのクエリ費用95%削減へ繋がった話 / Cross-Team Impact: 95% Off Raw Data Query Costs
yamamotoyuta
0
240
ソフトウェアは捨てやすく作ろう/Let's make software easy to discard
sanogemaru
10
5.8k
ITエンジニアを取り巻く環境とキャリアパス / A career path for Japanese IT engineers
takatama
4
1.5k
カンファレンスのつくりかた / The Conference Code: What Makes It All Work
tomzoh
8
930
Babylon.jsでゲームを作ってみよう
limes2018
0
100
Data Hubグループ 紹介資料
sansan33
PRO
0
1.7k
LT:組込み屋さんのオシロが壊れた!
windy_pon
0
460
うちの会社の評判は?SNSの投稿分析にAIを使ってみた
doumae
0
250
SmartHRの複数のチームにおけるMCPサーバーの活用事例と課題
yukisnow1823
2
1.2k
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
740
Featured
See All Featured
The Straight Up "How To Draw Better" Workshop
denniskardys
233
140k
Visualization
eitanlees
146
16k
Building Better People: How to give real-time feedback that sticks.
wjessup
368
19k
4 Signs Your Business is Dying
shpigford
183
22k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.5k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Music & Morning Musume
bryan
47
6.6k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
The World Runs on Bad Software
bkeepers
PRO
68
11k
Code Reviewing Like a Champion
maltzj
523
40k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
Balancing Empowerment & Direction
lara
1
87
Transcript
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. Amazon
EKSで構築する社内PaaS ج൫νʔϜ Ryo AWS Summit Tokyo 2019 ɹɹ Startup Central BtoB SaaS Day 2019/6/12
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. #AWSJP_Startup
イベントハッシュタグ
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. Ryo
/ @3s_hv ➤ 株式会社マツリカ 基盤チーム / Engineer PR ➤ 最近の流⾏ → キャッシュレス ➤ 技術書典 → 累計1千部 “物語でわかる◦◦” ➤ 転職系勉強会の主催etc https://blog.vtryo.me illustration by 湊川あい
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. スライドは後で公開します
@3s_hv Twitterにて
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. 株式会社マツリカ
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. 世界を祭り化する
私達が⽬指す"祭り化"とは 「⼈々が夢中になり、充実感や達成感に満ち満ちた」状態だ。
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. 営業をもっと⾃由に、もっと創造的に。
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. 営業をもっと⾃由に、もっと創造的に。
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. 営業をもっと⾃由に、もっと創造的に。
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. 営業をもっと⾃由に、もっと創造的に。
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. 営業をもっと⾃由に、もっと創造的に。
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. Agenda
➤ Sensesを⽀える技術 ➤ わたしたち基盤チームが実現したい世界観 ➤ なぜAmazon EKSを採⽤したのか ➤ 社内PaaSの構成 ➤ Tips ➤ 今後の展望
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. Sensesを⽀える技術
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. Sensesを⽀える技術
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. Sensesを⽀える技術
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. わたしたち基盤チームには
実現したい世界観がある
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. ビジネスの意思決定者が
Sensesの機能リリースを実施する
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. ➤営業⽀援ツールのため、⾃社メンバーが実際に営業
活動をしながらドッグフーディングしている ➤顧客へ届けるレベル感かどうかは、彼らが⼀番知っ ている ビジネスの意思決定者が Sensesの機能リリースを実施してもらいたい理由
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. ビジネスの意思決定者が
Sensesの機能リリースを実施する
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. どうやって実現するのか
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. ➤低リスクでリリースできる環境
➤開発成果物を継続的にデリバリする環境 ➤開発者がより⾼速に開発できる環境 ビジネスの意思決定者が Sensesの機能リリース可能になるための最初の⼀歩
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. ➤低リスクでリリースできる環境
➤開発成果物を継続的にデリバリする環境 ➤開発者がより⾼速に開発できる環境 改善の余地あり ビジネスの意思決定者が Sensesの機能リリース可能になるための最初の⼀歩
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. MutableからImutableへ
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. ➤
“AWS Opsworks スタック” に依存している ➤ Mutable Infrastructure ➤ 事業拡⼤→⼈材増加→開発環境の不⾜(使⽤者希望が競合する) ➤ (それでも⾜りないエンジニア) ボトルネック
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. 簡易構成図
➤ Opsworksによる構築、Deploy ➤ そもそも5年前の創業期から 変更されていない ➤ Stackによって失敗したりする ➤ 詳細なログを出してくれない… ➤ 構成変更に時間がかかる(停⽌も⻑い) ➤ Chef ➤ 毎回Setupコマンド待ち ➤ ローカル開発環境はDockerなんだけど…
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. 簡易構成図
➤ Opsworksによる構築、Deploy ➤ そもそも5年前の創業期から 変更されていない ➤ Stackによって失敗したりする ➤ 詳細なログを出してくれない… ➤ 構成変更に時間がかかる(停⽌も⻑い) ➤ Chef ➤ 毎回Setupコマンド待ち ➤ ローカル開発環境はDockerなんだけど… つらい AWSさんごめんなさい
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. 簡易構成図
➤ Opsworksによる構築、Deploy ➤ そもそも5年前の創業期から 変更されていない ➤ Stackによって失敗したりする ➤ 詳細なログを出してくれない… ➤ 構成変更に時間がかかる(停⽌も⻑い) ➤ Chef ➤ 毎回Setupコマンド待ち ➤ ローカル開発環境はDockerなんだけど… どんなシステムも アップデートしなければ古くなるもの
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. 簡易構成図
➤ Opsworksによる構築、Deploy ➤ そもそも5年前の創業期から 変更されていない ➤ Stackによって失敗したりする ➤ 詳細なログを出してくれない… ➤ 構成変更に時間がかかる(停⽌も⻑い) ➤ Chef ➤ 毎回Setupコマンド待ち ➤ ローカル開発環境はDockerなんだけど… 今がそのとき
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. Imutableへ
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. わたしたちはAmazon
EKSを採⽤した
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. Amazon
EKSは理想実現への1st Step
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. Amazon
EKSは現在のボトルネックを解消できる
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. Opsworksから脱却し
開発環境を増強する
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. ➤
開発環境を かんたんに・すぐに・⾃分で 構築できる ➤ エンジニアだけでなく、Notエンジニアメンバー(QAチーム)も ➤ よりカジュアルに・柔軟に 開発環境を増やせる Amazon EKSで創るこれからのSenses基盤
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. ➤
開発環境を かんたんに・すぐに・⾃分で 構築できる ➤ エンジニアだけでなく、Notエンジニアメンバー(QAチーム)も ➤ よりカジュアルに・柔軟に 開発環境を増やせる Amazon EKSで創るこれからのSenses基盤 継続的リリース 継続的デリバリ ⾼速開発 柔軟な開発環境
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. 開発環境は社内PaaSで提供する
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. ➤
開発環境の使⽤者がやること ➤ Githubにブランチを作成してPushする ➤ CircleCIで起動したい環境番号を選択する 開発環境は社内PaaSで提供する
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. ➤
開発環境の使⽤者がやること ➤Githubにブランチを作成してPushする ➤CircleCIで起動したい環境番号を選択する 開発環境は社内PaaSで提供する
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. ➤
開発環境の使⽤者がやること ➤ Githubにブランチを作成してPushする ➤ CircleCIで起動したい環境を選択する 開発環境は社内PaaSで提供する 以上
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. ➤
開発環境の使⽤者がやること ➤ Githubにブランチを作成してPushする ➤ CircleCIで起動したい環境を選択する 開発環境は社内PaaSで提供する ソースコードをPushするだけで 検証⽤の開発環境が起動する
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. 開発環境は社内PaaSで提供する
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. 何が起こっているのか?
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. Amazon
EKSの構成図
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. 簡易構成図
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. ➤
AWS上には構成図通りのリソースが構築されている ➤ 開発者がソースコードをPushすると… ➤ CircleCIがDocker Buildを開始 ➤ ECRにPush ➤ 定義されたkubernetesテンプレートが 環境を構築する 何が起こっているのか?
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. ➤
AWS上には構成図通りのリソースが構築されている ➤ 開発者がソースコードをPushすると… ➤ CircleCIがDocker Buildを開始 ➤ ECRにPush ➤ 定義されたkubernetesテンプレートが 環境を構築する 何が起こっているのか? 想像よりも簡単ではないですか?
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. ⼀⽅でつらいこともやはりある
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. ➤
ローカルで使⽤していたDockerfileはそのまま使えなかった ➤ FQDNʹґଘͨ͠ϦιʔεʢreCAPTCHAͳͲʣϋʔυίʔτ͞Ε͍ͯΔ ➤ DBͰRDSΛ༻͍ͯ͠ΔͨΊɺ·ͩ͜͜Mutableͷ·· ➤ CircleCIでECRやEKSを扱うためのJob設定 ➤ 作成したブランチでDocker Tagを付与し、そのタグ名でPullするひと⼿間 社内PaaS構築までのつらみ
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. しかし、もたらすものは⼤きい
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. ➤
迅速に開発環境を提供できる ➤ コスト最適化 ➤ 開発環境は増えたが、 ⺟体となるEC2インスタンスの数は既存よりも減った ➤ 開発環境の操作をCircleCIによる制御に限定することで開発に集中できる 社内PaaSがもたらすもの
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. ➤Amazon
EKSの本番環境適⽤ ➤開発者の増員 今後の展開
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. ➤Amazon
EKSの本番環境適⽤ ➤開発者の増員 今後の展開
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. We
are hiring!! ➤ 株式会社マツリカはあなたが最も⽣産性 を発揮できる場所・時間を尊重します ➤ フルリモートワーカー在籍 (北海道、栃⽊、岐⾩、⼤阪、兵庫、 ⾹川、沖縄、ベトナム) ➤ フレックスコアタイムなし
© 株式会社マツリカ ∕ mazrica, inc. - All Rights Reserved. Amazon
EKSで構築する社内PaaS ج൫νʔϜ Ryo AWS Summit Tokyo 2019 ɹɹ Startup Central BtoB SaaS Day 2019/6/12