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
GitlabとIstioでつくるコンテナネイティブCICD
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Shunsuke Miyoshi
December 03, 2018
Technology
1.4k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
GitlabとIstioでつくるコンテナネイティブCICD
Japan Container Days 201812 Meetup(
https://eventregist.com/e/containerdays1812meetup)での発表資料です
Shunsuke Miyoshi
December 03, 2018
More Decks by Shunsuke Miyoshi
See All by Shunsuke Miyoshi
RFCの歩き方
smiyoshi
1
350
クラウドネイティブ時代のセキュリティの考え方とIstioによる実装 / cloud native security and istio
smiyoshi
13
3.9k
Istio RBAC入門
smiyoshi
0
390
A STORY OF USELESS CRYPTOGRAPHY
smiyoshi
0
180
Advanced Security on Kubernetes with Istio
smiyoshi
0
480
Other Decks in Technology
See All in Technology
AgentCoreで実践するハーネスエンジニアリング
yakumo
1
190
Amazon Bedrock Agents ClassicからAmazon Bedrock AgentCoreへ移行した際、ガードレール設定が2箇所に割れた話
matsunobu
0
170
全社共通データ基盤をつくる。ソニーのDatabricks活用とデータガバナンス設計の裏側
sony
0
290
Claude起点の仕様駆動開発
tanakaseiya
0
290
Execution in the Kingdom of Agents: Reflections on Abstraction and Complexity
bcantrill
0
680
2026-10-01_MagicPod_QAハーネスエンジニアリングとQA組織の未来像
ynisqa1988
1
370
雪かき部 #7 もう怖くない!SELECT文!
foursue
0
270
Account Factory for Terraformによる 標準化されたアカウント発行の自動化
pensuke628
0
120
並行性の問題を防げ!実践トランザクション入門
occhi
0
140
3人で1000GPU超を統合運用する?マルチクラウド&オンプレを跨ぐ、構築と運用のリアル!
kazukun0716
2
810
AI臭い文章とは何なのか
nasuvitz
38
77k
『GOエコノミー 』(相乗りサービス) におけるスペック駆動開発
mot_techtalk
1
180
Featured
See All Featured
Technical Leadership for Architectural Decision Making
baasie
3
590
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
56
3.5k
Google's AI Overviews - The New Search
badams
0
1.6k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
63
46k
Bash Introduction
62gerente
615
220k
The Language of Interfaces
destraynor
162
27k
Building a Scalable Design System with Sketch
lauravandoore
464
34k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
3
4.3k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
290
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.6k
Accessibility Awareness
sabderemane
1
230
Documentation Writing (for coders)
carmenintech
77
5.6k
Transcript
2018年12月3日 三好 俊介 (
[email protected]
) 富士通株式会社 GitLabとIstioで作る コンテナネイティブCICD Copyright 2018 FUJITSU
LIMITED 0
Who am I ? Kubernetesやってる人 コミュニティ開発だったり普及活動だったり・・・ Certified Kubernetes Administrator •
たぶん日本最速?(2017年9月 β版時に取得) 休日もコード書いてます(・ω・)b GitHub(https://github.com/sh-miyoshi) 1 Copyright 2018 FUJITSU LIMITED
発表の対象者 & お伝えしたいこと 開発と運用チームがわかれている 2 Copyright 2018 FUJITSU LIMITED 開発チーム
運用チーム 友好的な コミュニケーション どういったCI/CD(継続的インテグレーション/継続的デリバリー) のpipelineを書けばいいか
GitLabとは? GitLab GitLab Inc.が開発しているGitリポジトリマネージャー → GitHubみたいなもの 無償コミュニティ版(GitLab-CE)と エンタープライズ版(GitLab-EE)がある → オンプレ上に無料で立てられる
CI(継続的インテグレーション)のための機能が標準装備 3 Copyright 2018 FUJITSU LIMITED
Istioとは? Istio サービスメッシュ技術の一つ → マイクロサービスをやる上で大変なことを インフラレイヤーで解決するためのもの Istioでできること サービス間のトラフィック制御 • 通信量制御、カナリアリリース、ロードバランシングなど
セキュアなマイクロサービスの構築 • サービス間通信の暗号化 綿密な測定とレポート 4 Copyright 2018 FUJITSU LIMITED アプリケーションコードの 変更なしに実現
Why Istio? CD(継続的デリバリー)ならSpinnaker(※)でも・・・ Istioはネットワークを制御できる CDだけをやりたいなら別ツールのほうが楽 運用を考えるなら個人的にはIstioがおすすめ 5 Copyright 2018 FUJITSU
LIMITED ※Netflix社製OSS版のCDツール • どのサービスとどのサービスが つながっているんだっけ? • どれくらいアクセスされているんだっけ? • レイテンシは?
(1)コード 開発 (2)コード品質 確保 (3)コード 統合 (5)成果物 テスト (6)デプロイ 開発チームのタスクの流れ
運用チームのタスクの流れ 開発ブランチ作成 コーディング (場合により) ローカルレビュー Unit Test Code Analysis Reviewer のアサイン Pull Req 発行. 開発ブランチを masterにマージ マージされるごとに 自動バージョニング テスト環境に デプロイ テスト結果を 確認 リリース可否 判断 本番にデプロイ (Canary release) 状態確認 現用系 切り替え(BG) 失敗 リポジトリにpush (場合により) 自己レビュー (手動) 手動Review (コードとReview 用環境でチェック) 失敗 Review用 環境の準備 自動ビルド Docker registry に保存 registryから 手動(?)で取得 監視用のSidecar とかを追加 どこかで失敗したら開発チームへフィードバック (4)本番用 Appビルド ※アンダーラインが引いてある項目は自動で実行 CICDのpipelineの例(今日の本題) Copyright 2018 FUJITSU LIMITED 9 Gitlabの出番 Istioの出番
デモ 今日は一部だけデモします! やること 運用者向けCICD 全体が知りたい方はGitHubを見てください https://github.com/sh-miyoshi/jkd201812meetup 7 Copyright 2018 FUJITSU
LIMITED
8 Copyright 2017 FUJITSU LIMITED
(参考) Auto DevOps機能 Auto DevOps機能 Gitlabの機能の一つ Kubernetesと連携したいい感じのCICDパイプラインを ボタン一つで自動で生成 もちろん手動で修正も可能 注意点
プロキシ環境だとはまり点満載 (pipelineを自作するときの参考になります) 9 Copyright 2018 FUJITSU LIMITED
Istioのイメージ図 10 Copyright 2018 FUJITSU LIMITED サービス A サービス B
サービス C サービス D サービス E Istio Control Plane Envoy(Istio Data Plane) エッジプロキシ 各サービス間の通信を肩代わり Envoy間通信の監視と制御