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
MicrosoftAzureとコンテナサービスたち
Search
derui
July 24, 2019
Technology
0
160
MicrosoftAzureとコンテナサービスたち
derui
July 24, 2019
Tweet
Share
Other Decks in Technology
See All in Technology
未経験者・初心者に贈る!40分でわかるAndroidアプリ開発の今と大事なポイント
operando
5
390
なぜテストマネージャの視点が 必要なのか? 〜 一歩先へ進むために 〜
moritamasami
0
220
初めてAWSを使うときのセキュリティ覚書〜初心者支部編〜
cmusudakeisuke
1
240
バッチ処理で悩むバックエンドエンジニアに捧げるAWS Glue入門
diggymo
3
200
品質視点から考える組織デザイン/Organizational Design from Quality
mii3king
0
200
CDK CLIで使ってたあの機能、CDK Toolkit Libraryではどうやるの?
smt7174
4
140
AIのグローバルトレンド2025 #scrummikawa / global ai trend
kyonmm
PRO
1
270
LLMを搭載したプロダクトの品質保証の模索と学び
qa
0
1k
Webブラウザ向け動画配信プレイヤーの 大規模リプレイスから得た知見と学び
yud0uhu
0
230
Agile PBL at New Grads Trainings
kawaguti
PRO
1
410
要件定義・デザインフェーズでもAIを活用して、コミュニケーションの密度を高める
kazukihayase
0
100
Evolución del razonamiento matemático de GPT-4.1 a GPT-5 - Data Aventura Summit 2025 & VSCode DevDays
lauchacarro
0
170
Featured
See All Featured
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
580
Documentation Writing (for coders)
carmenintech
74
5k
4 Signs Your Business is Dying
shpigford
184
22k
BBQ
matthewcrist
89
9.8k
Building a Modern Day E-commerce SEO Strategy
aleyda
43
7.6k
How to Ace a Technical Interview
jacobian
279
23k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
188
55k
Navigating Team Friction
lara
189
15k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
The Straight Up "How To Draw Better" Workshop
denniskardys
236
140k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Transcript
Microsoft Azureと コンテナサービスたち ~DevOpsを添えて~ 高橋 裕也 株式会社オープンストリーム アーキテクト
名前: 高橋 裕也 所属: 株式会社オープンストリーム 戦略技術推進本部 やってること:
アーキテクト 好きな技術: コンテナ、フロントエンド、OCaml Who are you?
Microsoft Azureのコンテナサービス コンテナのCI/CD Azure DevOps 今回話すこと
コンテナとは Dockerとは Kubernetesとは 他のクラウドサービスとの詳細な比較 今回話さないこと
Microsoft Azureを聞いたことがあるか Microsoft Azureを使ったことがあるか コンテナサービスを使ったことがあるか 質問です
Microsoft社が運営しているパブリックク ラウド(IaaS、PaaS) 2010年からサービス開始 世界2位(2019年7月時点)の売り上げ 世界1位はAWS Microsoft
Azureとは
Microsoft製品との親和性の高さ AD、Windows Server、SQL Server・・・ 特にAD関連については他のクラウドを圧倒 サービス数の多さ
およそAWSの倍(200~)のサービス数 Microsoft Azureの特徴
AI関連サービスの充実 AI関連サービス数は主だったクラウドの中で も際立って多い テキスト分類、画像分類、Text to speech・・・
MLなどの機械学習系 Microsoft Azureの特徴
Azureのコンテナサービス Kubernetes Service Service Fabric Container Instances Container Registry Web
App For Containers Red Hat OpenShift
Docker Registry互換のフルマネージドな コンテナーレジストリ Azureの認証基盤と統合されている ACRタスクという形で、イメージのビルドと かをAzure上で実行可能 Container
Registry
Web Appsの上でカスタムコンテナを動作 させる Web Apps=特定の言語でWebアプリを簡単 に動作させることができるサービス カスタムコンテナのイメージはDockerHub
やContainer Registryから取得可能 Web App for Containers
.NET/Javaで作られたマイクロサービスを 管理する基盤を提供 .NET/Javaで作る場合は提供されたSDKを利 用 ステートレス、ステートフルという区別がある Azure上のサービス基盤としても利用され
ている Service Fabric
Linuxのコンテナ、Windowsのコンテナそ れぞれ実行させることができる Linuxコンテナの場合、docker-composeの設 定ファイルに変換が可能 コンテナを直接動作させる場合、ステートレ ス・ステートフルという区別は無くなる Service
Fabric
Azureの管理するVM上でコンテナを直接 動作させる AWSのFargateと同じ感じ 数秒のスピンアップ、メモリとCPUだけの 設定、パブリックへの公開が可能 お手軽さNo.1
Container Instances
Azure上で動作するフルマネージドな Kubernetesクラスター 管理ノードはフルマネージド エージェントノードもマネージド エージェントノードは、タイプと数が選べる
エージェントノードのスケーリングはユーザー が行う Kubernetes Service (AKS)
Azure上で動作するフルマネージドな OpenShift Kubernetesをエンタープライズで利用す る場合に必要な諸々を組み込める ただしミニマムコストが高い Red Hat
OpenShift
選択肢は他のクラウドと遜色ない AWS Fargate的なサービス、Web Appsの拡 張、独自のServiceFabric スタンダードはKubernetes
OpenShiftはエンタープライズ向け 直近だと大抵AKSが選択される雰囲気 コンテナサービスのまとめ
AKSを使うことになったとして アプリケーション、どうCIしていきますか? Jenkinsと共に生きる Jenkinsでビルド、どこかへイメージをpush 外部サービスを使う(最近の主流)
コンテナサービスとCI
AKSを使うことになったとして アプリケーション、どうデプロイしますか? 手作業の温もり、念じながらkubektl Jenkinsと共に生きる 外部サービスを使う(最近の主流)
コンテナサービスとデプロイ
通称三種の神器(今命名) VCS → Github CI/CD→CircleCI コンテナレジストリ→DockerHub
外部サービスといえば
好きなサービスを選択できる 単機能なサービスを組み合わせられる 別のサービスに切り替えられる ソフトウェア、ミドルウェアの運用が不要 じゃあ外部サービスだ、とやってみる
外部サービスには選択の自由がある
認証情報の設定が煩雑 CircleCIからGithubへの接続を許可 CircleCIからDockerHubにpushするために DockerHubのuser/passをCircleCI上に設 定 CircleCIからAKSにデプロイするために、
Azureでトークンを発行して設定 外部サービスを使っていくと・・・
ビルド設定などが分散する コードで設定できるとは言っても、各プロ ジェクトごとに設定が分散する マイクロサービスの管理が完全に独立して いるケースはまれ ある程度管理を利かせたい場合、それぞ
れ確認しないとならない 外部サービスを使っていくと・・・
認証情報の管理が辛い 各サービスごとに別々の設定方式 外部サービスごとのアカウント管理 全部がGoogle認証できるわけでもない もっといい方法はないものか・・・
ふと思う
https://azure.microsoft.com/ja-jp/blog/introducing-azure-devops/ Azure DevOps
2018年9月に発表 元々VSTSとなっていたものをリブランド VSTSにあった機能をリネームしてまとめた ものがDevOps、という位置づけ GitHubのリポジトリと簡単に統合可能 Azure
DevOpsとは
Azure Repos Azure Boards Azure Pipelines
Azure Test Plans Azure Artifacts Azure DevOpsの機能
Azure Repos
いわゆるGitリポジトリのホスティング機能 GitHub/GitLab/BitBucketとかと同じような 機能を提供 SSH/HTTPSでアクセス可能 無制限のプライベートリポジトリ Azure
Repos
Azure Boards
いわゆるカンバン バックログ、スプリント、ダッシュボードなど が実装 バックログだけを使う、とかも可能 GitHub統合を利用すると、GitHubのPRと かもここから見えるようになる
Azure Boards
Azure Pipelines
CI/CDパイプライン すごいざっくり言うと、Azureに統合された CircleCI 大きくBuildとReleaseで分かれていて、機 能的にも結構違う Azure Pipelines
Azure Test Plans
手動テスト・自動テストの統合スイート テストプランやテストケースを包括的に登 録、管理が可能 Test Runnerという形でテストケースの消 化やバグチケットの登録をサポート Azure
Test Plans
Azure Artifacts
Maven/Python/npm/NuGetなどのパッ ケージを保存できる 保存もPipelinesから可能 保存したものは、Maven/npm/pipなどから 利用可能 Azure Artifacts
認証情報の管理負担が軽減 →マネージドにお任せ サービスの分散による煩雑さが軽減 →DevOpsを見ればOK 設定内容の共有、一か所での管理か可能
→Releaseは一か所から使いまわし可能 Azure DevOpsで楽になること
AKSを使ってるのに? AKS ≠ 他クラウドのKubernetes ACRとかArtifactsとかADとか使ってたらそもそ もAzureにロックインされている
どんなサービスでもロックインされる 固有機能を使った時点でロックインされている でもAzureにロックインされる・・・
Azureでアプリケーションを運用している CI/CDもAzureに載せて問題がある? Azure DevOpsは部分的にも使える リポジトリはGitHub、というケースにも対応
セキュリティのガバナンスを利かせたい、 とかも対応できるはず 提案:いっそ首まで浸かってみる
Azureのコンテナサービスは割とバラエ ティ豊か 外部サービス主体のCI/CDは、運用が進 むと疲弊しがちかも? Azure DevOpsで統合、というのも選択肢 に加えてみよう
今日話したこと
Thank you for hearing!