Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
マルチクラウドでContinuous Deliveryを実現するSpinnakerについて /...
Search
Mahito
October 26, 2018
Technology
700
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
マルチクラウドでContinuous Deliveryを実現するSpinnakerについて / Introduction of Spinnaker
マルチクラウドで継続的デリバリー(Continuous Delivery)を実現するSpinnakerについての紹介
Mahito
October 26, 2018
More Decks by Mahito
See All by Mahito
保育園にカオスエンジニアリングを提案した話 / Chaos Night #1
mahito
8
14k
河と魚と私 / Fishing on the River
mahito
0
160
NTT Tech Conference #5 - Opening Keynote
mahito
0
890
NTT Tech Conference #5 - Closing Keynote
mahito
0
1.1k
組織/企業/グループを超えたエンジニアのつながりを広げるイベントをしている話 / JTF2020
mahito
4
10k
保育園にChaos Engineeringを提案した話 / The story of proposing Chaos Engineering to a nursery school
mahito
1
1k
Chaos Engineeringという考え方 / A concept of Chaos Engineering
mahito
5
8.5k
いつもニコニコあなたの隣に這い寄るカオスエンジニアリング! / CNDT-OSDT-2019-2G1
mahito
7
9.3k
あなたの知らないマヒトの世界 / TechLunch #76
mahito
0
560
Other Decks in Technology
See All in Technology
Claude Code本は、どのように執筆チームで書かれたか
oikon48
1
340
自律型 AI をセキュアに実装!Gemini と MIG で作る動的コード実行環境
recruitengineers
PRO
1
230
プロダクト価値を、 チームが使える判断軸に変える
vivion
0
140
今こそ知りたいAmplifyGen2
mkdev10
2
160
カンファレンスに参加した後の浮遊感とセルフケア
pauli
0
320
OSC2026on_the-world-is-waiting-for-your-voice.pdf
naruoga
0
360
AI時代だからこそ推したい!Gitコマンド再入門
munakata
0
160
ファミコンでPHPを動かす / PHP on the Famicom side b
tomzoh
0
140
生成AIで高い生産性を求められて、 悩み、乗り越えた話
mot_techtalk
2
140
自分で立ててみるLLMサービス
y_sera15
0
150
並行性の問題を防げ!実践トランザクション入門
occhi
0
280
Deep Data Security 機能解説
oracle4engineer
PRO
2
740
Featured
See All Featured
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
The Cost Of JavaScript in 2023
addyosmani
55
10k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.4k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
590
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
31k
Raft: Consensus for Rubyists
vanstee
142
7.7k
We Are The Robots
honzajavorek
0
390
Scaling GitHub
holman
464
140k
Crafting Experiences
bethany
1
380
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
300
Transcript
マルチクラウドでContinuous Deliveryを実 現するSpinnakerについて 海浜幕張テック ミートアップ #2
About me Mahito Ogura < Twitter: @Mahito > 海浜幕張在住(都内通信系会社勤務) 業務:IoT関連
(2018/7〜) • クラウドや分散システムの調査検証 • 分散トレーシングなどの分散システムの調査検証 • OpenStackやコンテナに関する調査検証 • インフラ構築(Chef, Ansible) • アプリケーション開発 • 採用のお手伝いとか各種イベント業, etc...
本日のお話 マルチクラウドで継続的デリバリー( Continuous Delivery )を実現する Spinnaker について知ってもらい興味を持ってもらう あわよくば後日 Spinnaker を試してもらって情報交換なんかができれば・・・
Spinnaker
Spinnakerとは • マルチクラウドで Continuous Delivery ( CD )を実現するプラットフォーム • クラスタの管理や
Image の作成、デプロイ管理などの Pipeline を提供 • Netflix 社が開発し、 OSS として公開されているが現在は Google や Pivotal, Microsoft, Mirantis なども開発に参加している
パイプラインはアプリケーションのコードをプロダクションにリリースするために必要なすべ ての手順を実行するプロセス PiplineとCI/CD Test/Build Deploy Test Approve CI CD
Sample Spinnaker Pipeline
Spinnaker Cloud Target 詳細はリポジトリを御覧ください https://github.com/spinnaker/clouddriver/ • AWS (EC2) • Docker
• GCP (AppEngine, GCE, GKE) • Kubernetes • Microsft Azure • OpenStack • etc...
Blue / Green Deployment Spinnaker は Blue / Green Deployment
を実現 Green (new) に問題があった場合は Blue ( old )に Rollback が可能 ※ただし Kubernetes v2 Provider は Blue/Green に非対応 https://www.spinnaker.io/concepts/
Canary Analysis - Kayenta [1] Netflix と Google が共同で OSS
化した Automated Canary Analysis (ACA) の基盤 [2][3] Spinnaker の一機能( Kayenta )として ACA の動作を行う 基準( Baseline )と新バージョン( Canary )のメトリクスを比較し、 差分を確認することで、新バージョンに問題がないかを分析 メトリックスの取得に使えるのは現在 Stackdriver, Prometheus, Datadog, Signalfx 参考 • [1] : https://github.com/spinnaker/kayenta • [2] : Automated Canary Analysis at Netflix with Kayenta • [3] : Introducing Kayenta: An open automated canary analysis tool from Google and Netflix
参考:NetflixのCanary Release Process 3 つのクラスタで運用しそれぞれに同じトラフィックから量を変えて流す 1. Production :本番環境 (many servers)
2. Baseline : Canary と比較するための現行バージョン (1 + m servers) 3. Canary :新バージョン (1 + m servers) Traffic Router Metrics Canary Analysis Production(v1.0) Baseline(v1.0) Canary(v2.0)
Chaos Engineering [1] 分散システム内にわざと障害を起こすことで、 対象のシステムが本番環境において耐障害性を持っていることを証明する手法 Spinnaker ではランダムにインスタンスやコンテナを削除することで Chaos Engineering を実現するツールのひとつである
Chaos monkey が利用可能 [1] : http://principlesofchaos.org/ [2] : https://github.com/Netflix/chaosmonkey
Spinnakerの構築 [1] Halyard を用いて設定、デプロイを行う 1. Halyard のインストール 2. Cloud Provider
の選択 3. インストール環境の選択 4. 設定とデプロイ 5. オプション設定 6. プロダクション環境への適用 ※だいたいドキュメントどおりにできるが時折動かないので注意! [1]: https://www.spinnaker.io/setup/install/
Spinnaker Architecture • Deck - UI • Gate - API
Gateway • Orca - Orchestrate engine • Cloddriver - Cloud controller • Fiat - Authorization • Front50 - Metadata management • Rosco - Image builder • Kayenta - Canary Analysis • Echo - Event bus • Igor - Pipelines trigger
Spinnaker Pros / Cons Pros • マルチクラウド対応( AWS/GCP, k8s に関してはほぼ動くと思っていい)
• クラスタ管理機能 (Blue/Green Deployment, Auto Scale) • 品質確保・向上のしくみ (Canary Release, Chaos Monkey) • 新機能の追加が早い(大体 2 ヶ月ごとにバージョンアップ) Cons • 公式ドキュメント以外の情報はコミュニティに頼るのが現状 • CD に特化しているため CI には Jenkis など他の CI ツールが必要 • Spinnaker 自体が Microservices であり複雑 • UI が中心で CLI はまだ開発中 ... ?
Thank you !