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
DevFest in Shinshu 2019 - Abount DevOps in GCP
Search
koda
November 23, 2019
Technology
570
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
DevFest in Shinshu 2019 - Abount DevOps in GCP
koda
November 23, 2019
More Decks by koda
See All by koda
Lambda___Hono_で_OpenAI_の_LINE_Chatbotを作ってみた.pdf
koda
0
160
Cloudflare Workers で OpenAI の LINE Chatbotを作ってみた
koda
0
2.2k
DevFest 2020 Ja - GitLab Review Apps with GKE
koda
2
220
Knowledge作ったよ
koda
0
360
Kubernetes_Hands-on.pdf
koda
3
910
Docker hands on
koda
1
590
個人でWebサービスを開発する際のWeb技術紹介
koda
1
150
DAP+Dockerで簡単環境構築
koda
0
310
Other Decks in Technology
See All in Technology
LLM・AIエージェントシステムベストプラクティス
shibuiwilliam
6
1.5k
平文パスワードはログに“残り” ── 肝心の侵入は“痕跡すら残らない”
kuroneko13
0
100
会社紹介資料 / Sansan Company Profile
sansan33
PRO
24
430k
FORENSIA: ローカルLLMフォレンジックハーネス
sumeshi
2
430
研究開発部の紹介 / Sansan R&D Profile
sansan33
PRO
4
24k
SmartHR Engineering Team Deck
smarthr
1
3k
Android skills に学ぶ
kokiko
0
120
カートの信頼性を担保するWireMockを使ったe2eテスト
ykagano
0
590
What's new in Go 1.27?
ciarana
0
280
ガバメント AI 源内を地方自治体は活用できるのか可能性と課題、期待について
takeda_h
2
460
AI時代のアウトプット――変わったこと、変わらないこと / Devsumi 2026 Kansai #devsumi
jnchito
0
240
My broken English still works: speaking at global OSS events
naruoga
0
120
Featured
See All Featured
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
720
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
Google's AI Overviews - The New Search
badams
0
1.1k
Odyssey Design
rkendrick25
PRO
2
770
Test your architecture with Archunit
thirion
2
2.3k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
470
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
250
Designing for Performance
lara
611
70k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
280
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
Transcript
DevOps環境の紹介 GCPを使った Koda 2019-11-23
• 「Cloud」とか「DevOps」とか「Agile」やってます • 某メーカーの中でアプリなどを開発中 • プログラミングと温泉、家族を愛してます(チームビルディングもまぁまぁ好き) • Google系を中心にクラウド系の技術コミュニティに参加 KODA (@koda3t)
2
3 本日のゴール ▷ クラウド時代におけるモダンな開発・運用について、ふんわり理解し、 各自が調査&試行できる知識を習得する ▷ 紹介する内容を自分で構築できるハンズオン資料もあるので、興味を 持ったら試してみてください ◦ 要望があればハンズオンをまた開催します
あぁ、、あれね。 聞いたことあるよ(ドヤッ)
4 Agenda 1. DevOpsとは 2. DevOpsな環境 3. まとめ
5 1. DevOpsとは
開発担当者と運用担当者が連携して協力すること 6 https://ja.wikipedia.org/wiki/DevOps
Dev vs Ops 新しい機能を追加したから リリースさせろや!! そんなんで、安定稼働できるん かいな! 責任とるのはこっちやぞ!! 7
DevOps ユーザに価値のあるものを 素早く出していくために協力 しよう! そのために何が必要かを、 一緒に考えていこう!! 8
市場投入までの時間の短縮 高い顧客満足度 改良された製品の品質 改良されて、信頼性の高いリリース 改良された生産性・効率 迅速な実験によって、適切な製品を構築する能力 9 DevOpsの効果
DevOpsな組織文化 Respect: お互いを尊重することです。相手のことを思いやることでコミュニケーションが円滑に取れるように なります。 Trust: チームメンバーを信頼することです。開発者、運用者の垣根を越えて、システムに関わっているメン バーを信頼する必要があります。 Healthy attitude about
failure: 失敗に対して健全な態度をとることです。失敗はチャレンジすれば起こりえるもので、担当者を責め るのはおかしいという考えです。 Avoiding Blame: 非難を避けることです。失敗しないように取り組むのがDevOpsの目的の1つですが、それでもミス をゼロにはできません。しかし、たとえミスが起きたてもそれを非難する事はしてはいけません。 2009年のFlickr社から 10
DevOpsを実現するための技術 • Continuous Integration ◦ 自動化されたビルド・テスト • Continuous Deployment ◦
自動化されたデプロイ • Infrastructure as Code ◦ 自動化されたインフラ • Service Mesh ◦ 小さく迅速に市場投入・ロールバック • Serverless / Managed service ◦ 運用負荷の低いインフラ • Microservices ◦ 小さく迅速に開発 11
2. DevOpsな環境 12
13 Dev Ops 開発したものが運用にシームレスに 連携されていく環境 DevOpsな環境?
14 Code Code コードを編集 自動ビルド 自動デプロイ GitLab Feature Branch Push
Container Registry 自動ビルド イメージ登録 動作確認 Skaffold Kubernetes Kubernetes Engine Canary Production 一般ユーザ アーリーアダプタ 自動デプロイ モニタリング Istio Prometheus Grafana 動作確認 Spinnaker CI レビュー GitLab Master Branch GitLab Merge Tag バージョン 管理(タグ) CI Google Cloud ビルド&テスト Pub/Sub トラフィック制御 ローカルPC リリース判断
15 Code Code コードを編集 自動ビルド 自動デプロイ GitLab Feature Branch Push
Container Registry 自動ビルド イメージ登録 動作確認 Skaffold Kubernetes Kubernetes Engine Canary Production 一般ユーザ アーリーアダプタ 自動デプロイ モニタリング Istio Prometheus Grafana 動作確認 Spinnaker CI レビュー GitLab Master Branch GitLab Merge Tag バージョン 管理(タグ) CI Google Cloud ビルド&テスト Pub/Sub トラフィック制御 ローカルPC リリース判断 Dev(開発)
16 Code Code コードを編集 自動ビルド 自動デプロイ GitLab Feature Branch Push
Container Registry 自動ビルド イメージ登録 動作確認 Skaffold Kubernetes Kubernetes Engine Canary Production 一般ユーザ アーリーアダプタ 自動デプロイ モニタリング Istio Prometheus Grafana 動作確認 Spinnaker CI レビュー GitLab Master Branch GitLab Merge Tag バージョン 管理(タグ) CI Google Cloud ビルド&テスト Pub/Sub トラフィック制御 ローカルPC リリース判断 Ops(運用)
実際のDevOps環境のサンプルを見ながら、 使われている技術の紹介
18 Docker ▷ コンテナ型の仮想ツール ▷ Immutable Infrastructure を実現
19 Kubernetes(K8s) ▷ コンテナ化したアプリケーションのデプロイ、スケーリング、および 管理を行うための、コンテナオーケストレーションツール ▷ 複数のコンテナをいい感じに運用できる
20 GKE ▷ マネージドなKubernetesプラットフォーム ▷ 現状のコンテナ系のサービスでは一番クセが無く「お安い」と思う
21 Istio ▷ サービスメッシュ ▷ マイクロサービス間などの通信をいい感じに管理できる ▷ カナリアリリースなどが簡単にできる
22 Prometheus & Grafana ▷ モニタリングツール & 可視化ツール ▷ 動的な環境での監視が得意 ▷
Istioをセットアップすると自動的についてくる
23 GitFlow ▷ Gitの機能を使っていい感じに開発するスタイル ▷ Featureブランチで開発して、CIでテスト、MR(PR)でレビューして というかんじで開発が進む
GitLab ▷ OSSのGitHubのようなもの ▷ SaaS(GitHub)が使えない場合の選択肢 ▷ GitHubでできることは代替可能 24
25 ▷ k8sを使ったサービスのローカルでの開発を便利にするツール
26 CI ▷ コードの変更の度に自動化されたビルドとテストを実行 ▷ これにより品質を保ちながら頻繁に結合を行うことが出来る https://cloud.google.com/solutions/continuous-integration
27 Spinnaker(CD) ▷ 継続デリバリのプラットフォーム ▷ Blue/Greenデプロイや、カナリアデプロイにも対応
28 3. まとめ
29 今まで話した内容を、 すんなり理解できましたか?
30 いろいろありすぎて 大混乱 話だけ聞いただけでは、私には無理でした。。。
31 使ってみよう! ✔ 使ってみると、意外と大した事ない
まずはDockerからはじめよう! Immutable Infrastructure Immutable Development Environment ≒ 自分のローカルの開発環境も使い捨てで使える! →気軽に新しい事が試せる!!
28人 27人 ハンズオン開催中 資料:https://gdg-shinshu.connpass.com/event/143112/ 資料:https://gcpug-shinshu.connpass.com/event/135612/
34 「きこりのジレンマ」 になっていないか確認しよう
35 同じ1人月でも内容(成果)は違う 12時間/日 6時間/日 余った時間でさらなる効率化
9/3にGoogleが開催したKubernetes Dayから資料を紹介します https://inthecloud.withgoogle.com/kubernetes-day-1909/Google_Cloud_Kubernetes_Day2_Session01.pdf
37
DevOpsに取り組んでいるチームは 生産性が 1.53倍高い
None
• デプロイ頻度: 208倍多い • コミットからデプロイまでの時間: 108倍短い • 環境変更の成功: 7倍の成功率(失敗が 1/7)
• 障害から復旧にかかる時間: 2604倍早い
None
None
None
44 イノベーションに手が回らない
最大で年間12兆円の経済損失
46 崖から落ちないためにも DevOpsに取り組む ☞ 新しい技術を試す時間を確保する(リーダ/マネージャ) ☞ 技術だけではなく、P10の「組織文化」も!
thanks! Any questions? You can find me at @koda3t 47