SlideShare a Scribd company logo
@rxpaki
Ryosuke Matsumura
Azure Kubernetes ServiceとCI/CD pipeline
2018/09/29
JAZUG札幌支部 きたあず 第20回勉強会
Intro
• Ryosuke Matsumura
• Fukuoka, Japan
• i3Systems, Inc.
• Microsoft MVP for Microsoft Azure
Intro
Azure Kubernetes ServiceとCI/CD pipeline
今日お話する内容は本日
時点の内容になります
今後のアップデート等で
仕様が変更される可能性
があります
Agenda
• Kubernetes
• Updates
• CI/CD
• Monitoring
• Sample App
• DEMO
• Summary
Kubernetes
Kubernetes
• Googleが社内で開発していた「Borg」を元にOSS化
• オートスケール、自動回復など面倒なコンテナ環境の運用を自動化し
てくれる
• Managed Kubernetes Services
• AKS(Azure) / EKS(AWS) / GKE(GCP)
• AKS(Azure Kubernetes Service)
• GA(June 13, 2018)
• Masterは無料、Node部分の課金のみ
• SLA 99.5%目標
• Masterは無料なので返金等の対応はなし、NodeはVMのSLAに準拠
Updates
Updates
• ACR Helm Chart Repositories
• https://aka.ms/acr/helm-repos
• Docker Content Trust support
• https://aka.ms/acr/content-trust
• ACR OCI image support
• ACR tasks(ACR Build)
• https://aka.ms/acr/tasks
• Kubernetes on Azure Stack in preview
• https://azure.microsoft.com/en-us/updates/kubernetes-on-
azure-stack-public-preview/
CI
CI
• CIの必要性
• Continuous Integration(継続的インテグレーション)
• アプリケーションの品質維持・向上や作業コストの削減
などを目的として、テスト/ビルド/静的解析などを継続
的に実行できるようにすること
• 継続的にアプリケーションを改善するためのプロセスの
一部であり、その手助けをするためのツール/サービス
• 今から開始するプロジェクトであれば、最初から導入し
ておくべき
• 途中からの導入は大変
CI tools
• Jenkins / Jenkins X
• CircleCI / Travis CI / TeamCity …
• Azure DevOps
CI tool
TeamCity
• JetBrains製
• Freeプランあり
• 各種機能がビルトインされている
• 追加プラグインも豊富
• シンプル操作
• Jenkinsほど職人感がない
• 細かい部分のカスタマイズも可能
• ドキュメントが豊富(英語)
TeamCity
• https://www.jetbrains.com/teamcity/
• 公式のDockerイメージが用意されているので、比較的楽に
導入ができる
• https://hub.docker.com/r/jetbrains/teamcity-server/
• https://hub.docker.com/r/jetbrains/teamcity-agent/
CD
CD
• CDの必要性
• Continuous Delivery(継続的デリバリー)
• アプリケーションを迅速かつ確実に提供すること
• CIだけではなくデプロイプロセスまで含んだもの
• 継続的にアプリケーションを改善するためのプロセスの
一部であり、その手助けをするためのツール/サービス
• 今から開始するプロジェクトであれば、最初から導入し
ておくべき
• 途中からの導入は大変
CD tool
Spinnaker
• CIツールでもデプロイまでサポートしているものが多い
• CDに特化したもの
• Spinnaker
• Netflix製(Googleなども開発に参加)
• CIからkubectlでデプロイも可能だが・・・
• RollbackやBlue/Green Deploy、Canary Deploy
• テストや承認プロセスなど
• CIツールだけではメンテナンスも非常に大変
Spinnaker
• https://www.spinnaker.io
• Halyardというツールを使ってセットアップ、導入をする
• `hal config xxx` といった感じで設定していく
• `hal deploy apply`でデプロイ
• ドキュメントが公式くらいしかないので、ハマると解決まで頑
張らないといけない
• Slackチャンネルがあるので、利用すると良い
• 最近、Spin CLIというのが出てきた
• https://www.spinnaker.io/guides/spin/cli/
Monitoring
Monitoring
• Kubernetes運用において非常に重要な部分
• コンテナが落ちると別のコンテナが起動するが、落ちた
コンテナにあったログファイルなどは消失してしまう
• サイジングやオートスケールなど、稼働状況の把握が必
須
• Prometheus / Grafana
• ノード監視、Pod監視
• ElasticSearch / Kibana
• ログ集約、可視化
Sample App
Sample App
• Rails製の簡単なTodoアプリ
• githubで公開してます
• https://github.com/ryomatcu/rails-todo
Git push
Push
trigger
Unit test
Docker build
Docker push
Push
trigger
Deploy
Monitoring
DEMO
Summary
Summary
• 最適なアーキテクチャを選択する
• これからKubernetesを使うならマネージドなAKSが良い
• Kubernetesバージョンの運用に注意
• 消失すると困るデータやログは別で管理する
• CI/CDは大事
• 開発スピードの向上
• デプロイスピードの向上
• 作業ミスの低減(手作業が減る!)
Thank you :)

More Related Content

PPTX
コンテナベースサーバーレスプラットフォーム「Knative」はServerlessなのか?
PDF
Introduction of Azure Docker Integration
PDF
6 月 18 日 Next - Kubernetes のコンテナ技術ですべてをシンプルに
PPTX
Jupyterカーネルを魔改造した話
PDF
kubernetes on Azure 最新情報
PDF
『 イドラ ファンタシースターサーガ 』を支える GCP | Google Cloud INSIDE Games & Apps
PDF
How Wantedly (in)directly uses AWS
PPTX
Web App for Containers + Cosmos DBで コンテナ対応したMEANアプリを作ろう!
コンテナベースサーバーレスプラットフォーム「Knative」はServerlessなのか?
Introduction of Azure Docker Integration
6 月 18 日 Next - Kubernetes のコンテナ技術ですべてをシンプルに
Jupyterカーネルを魔改造した話
kubernetes on Azure 最新情報
『 イドラ ファンタシースターサーガ 』を支える GCP | Google Cloud INSIDE Games & Apps
How Wantedly (in)directly uses AWS
Web App for Containers + Cosmos DBで コンテナ対応したMEANアプリを作ろう!

What's hot (20)

PDF
[Cloud on air] #02 GCP のアプリランタイムについて学ぼう
PDF
MLCT#12 使われる機能目指して 測ったり試したり
PDF
Architecting on Alibaba Cloud - 超基礎編 -
PPTX
30min serverless-x tuber
PDF
AWS re:Invent 2021 コスト削減に役立つアップデートまとめ
PPTX
Azure PaaSを活用したモダン E コマースソリューションの構築方法
PDF
[Cloud OnAir] Google Cloud Next '20: OnAir 特別編 〜世界で人気のあったセッション特集〜 2020年9月24日 放送
PDF
[Cloud OnAir] Talks by DevRel Vol.5 アプリケーションのモダナイゼーション 2020年9月3日 放送
PDF
Azureで実装する話題のコンテナサービス
PPTX
Knative Lambda Runtimeを試してみた
PDF
Google for Mobile: Google スケールで構築する! ゲームインフラと分析環境 - 橋口 剛
PDF
PDF
Slack、Lineでチャットボットを動かす / Connect a QnA Bot to slack and line
PDF
Cloud automator的なものを実装してみる
PDF
Developer summit 2015 gcp
PDF
俺的 Ignite 2021 Spring Update まとめ ミニ
PDF
Google for モバイル アプリ - コンテナ技術と Google Compute Engine で実現するクラウド時代のアプリ実行環境
PDF
[Cloud OnAir] Talks by DevRel Vol.2 セキュリティ 2020年8月6日 放送
PPTX
CloudSQL v2は デキる子なのか?
PDF
Kubernetes & Google Container Engine; DockerコンテナをGKEでクラスタリングしてみた
[Cloud on air] #02 GCP のアプリランタイムについて学ぼう
MLCT#12 使われる機能目指して 測ったり試したり
Architecting on Alibaba Cloud - 超基礎編 -
30min serverless-x tuber
AWS re:Invent 2021 コスト削減に役立つアップデートまとめ
Azure PaaSを活用したモダン E コマースソリューションの構築方法
[Cloud OnAir] Google Cloud Next '20: OnAir 特別編 〜世界で人気のあったセッション特集〜 2020年9月24日 放送
[Cloud OnAir] Talks by DevRel Vol.5 アプリケーションのモダナイゼーション 2020年9月3日 放送
Azureで実装する話題のコンテナサービス
Knative Lambda Runtimeを試してみた
Google for Mobile: Google スケールで構築する! ゲームインフラと分析環境 - 橋口 剛
Slack、Lineでチャットボットを動かす / Connect a QnA Bot to slack and line
Cloud automator的なものを実装してみる
Developer summit 2015 gcp
俺的 Ignite 2021 Spring Update まとめ ミニ
Google for モバイル アプリ - コンテナ技術と Google Compute Engine で実現するクラウド時代のアプリ実行環境
[Cloud OnAir] Talks by DevRel Vol.2 セキュリティ 2020年8月6日 放送
CloudSQL v2は デキる子なのか?
Kubernetes & Google Container Engine; DockerコンテナをGKEでクラスタリングしてみた
Ad

Similar to Azure Kubernetes ServiceとCI/CD pipeline (20)

PDF
Azure Kubernetes ServiceとコンテナのCI/CD
PDF
AKS+KEDAで実現!Container Functions Pipeline
PDF
Azure Cloud Shell
PPTX
Microsoft Azure PaaS 概要
PPTX
Running Kubernetes on Azure
PPTX
Tech Night Recap Sapporo - Ignite & .NET Conf -.pptx
PDF
Azure IaaS update (2018年6月~8月 発表版)
PDF
Kubernetes Cost Optimization
PDF
ぼうけんにでかけよう Kubernetes KEDA
PPTX
Container x azure x kubernetes
PDF
20150704 MS Azure最新 - innovation egg 第4回
PPTX
build2017のazure関連情報まとめ
PDF
Azure Functionsから始めるServerless
PDF
Azure Kubernetes Service Overview
PPTX
Oracle Cloud Infrastructure:2022年2月度サービス・アップデート
PDF
KubeFlow MeetUp #1 Katibよもやま話
PDF
de:code 2019 Cloud トラック 総まとめ!
PDF
Azure Arc 概要
PPTX
クラウドデザイン パターンに見る クラウドファーストな アプリケーション設計 Data Management編
PDF
Oracle Cloud Infrastructure:2022年11月度サービス・アップデート
Azure Kubernetes ServiceとコンテナのCI/CD
AKS+KEDAで実現!Container Functions Pipeline
Azure Cloud Shell
Microsoft Azure PaaS 概要
Running Kubernetes on Azure
Tech Night Recap Sapporo - Ignite & .NET Conf -.pptx
Azure IaaS update (2018年6月~8月 発表版)
Kubernetes Cost Optimization
ぼうけんにでかけよう Kubernetes KEDA
Container x azure x kubernetes
20150704 MS Azure最新 - innovation egg 第4回
build2017のazure関連情報まとめ
Azure Functionsから始めるServerless
Azure Kubernetes Service Overview
Oracle Cloud Infrastructure:2022年2月度サービス・アップデート
KubeFlow MeetUp #1 Katibよもやま話
de:code 2019 Cloud トラック 総まとめ!
Azure Arc 概要
クラウドデザイン パターンに見る クラウドファーストな アプリケーション設計 Data Management編
Oracle Cloud Infrastructure:2022年11月度サービス・アップデート
Ad

More from ryosuke matsumura (9)

PDF
Microsoft Build 2021 Recap Day
PDF
Azureサーバーレスで行う情報のスクリーニング
PDF
Application Insights on Rails Application
PDF
各社のFaaSを比較してみる
PDF
Microsoft AzureでのServerless活用術
PDF
Azure Functionsでサーバーレスアプリケーション構築
PDF
Azure Functionsでサーバーレスアプリケーション構築
PDF
Xamarin+Mobile Center
PDF
AWSからAzureへ
Microsoft Build 2021 Recap Day
Azureサーバーレスで行う情報のスクリーニング
Application Insights on Rails Application
各社のFaaSを比較してみる
Microsoft AzureでのServerless活用術
Azure Functionsでサーバーレスアプリケーション構築
Azure Functionsでサーバーレスアプリケーション構築
Xamarin+Mobile Center
AWSからAzureへ

Azure Kubernetes ServiceとCI/CD pipeline