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
マルチクラウドでContinuous Deliveryを実現するSpinnakerについて /...
Search
Mahito
October 26, 2018
Technology
680
0
Share
マルチクラウドで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
130
NTT Tech Conference #5 - Opening Keynote
mahito
0
860
NTT Tech Conference #5 - Closing Keynote
mahito
0
1.1k
組織/企業/グループを超えたエンジニアのつながりを広げるイベントをしている話 / JTF2020
mahito
4
9.9k
保育園にChaos Engineeringを提案した話 / The story of proposing Chaos Engineering to a nursery school
mahito
1
930
Chaos Engineeringという考え方 / A concept of Chaos Engineering
mahito
5
8.3k
いつもニコニコあなたの隣に這い寄るカオスエンジニアリング! / CNDT-OSDT-2019-2G1
mahito
7
9.1k
あなたの知らないマヒトの世界 / TechLunch #76
mahito
0
540
Other Decks in Technology
See All in Technology
Data Enabling Team立ち上げました
sansantech
PRO
0
210
Kubernetesの「隠れメモリ消費」によるNode共倒れと、Request適正化という処方箋
g0xu
0
170
Why we keep our community?
kawaguti
PRO
0
370
Bref でサービスを運用している話
sgash708
0
220
Kiro Meetup #7 Kiro アップデート (2025/12/15〜2026/3/20)
katzueno
2
280
スケーリングを封じられたEC2を救いたい
senseofunity129
0
140
Databricks Lakehouse Federationで 運用負荷ゼロのデータ連携
nek0128
0
110
FlutterでPiP再生を実装した話
s9a17
0
240
Tour of Agent Protocols: MCP, A2A, AG-UI, A2UI with ADK
meteatamel
0
200
Microsoft Fabricで考える非構造データのAI活用
ryomaru0825
0
610
自分をひらくと次のチャレンジの敷居が下がる
sudoakiy
5
1.7k
ブラックボックス化したMLシステムのVertex AI移行 / mlops_community_62
visional_engineering_and_design
1
260
Featured
See All Featured
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
Writing Fast Ruby
sferik
630
63k
Why Our Code Smells
bkeepers
PRO
340
58k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
2.6k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
110
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
90
The Curse of the Amulet
leimatthew05
1
11k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
280
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
92
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.9k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.2k
The Cost Of JavaScript in 2023
addyosmani
55
9.8k
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 !