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
Azure-CICD.pdf
Search
tenn25
October 31, 2018
0
48
Azure-CICD.pdf
tenn25
October 31, 2018
Tweet
Share
More Decks by tenn25
See All by tenn25
DQ-Management3-1
tenn25
0
30
study-infra-0708
tenn25
0
60
study-infra-0526
tenn25
0
50
study-infra-0429
tenn25
0
76
Featured
See All Featured
Statistics for Hackers
jakevdp
796
220k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
GraphQLの誤解/rethinking-graphql
sonatard
67
10k
Put a Button on it: Removing Barriers to Going Fast.
kastner
59
3.5k
Optimizing for Happiness
mojombo
376
70k
Reflections from 52 weeks, 52 projects
jeffersonlam
346
20k
4 Signs Your Business is Dying
shpigford
180
21k
Designing on Purpose - Digital PM Summit 2013
jponch
115
7k
10 Git Anti Patterns You Should be Aware of
lemiorhan
654
59k
The Cult of Friendly URLs
andyhume
78
6k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
25
1.8k
Bash Introduction
62gerente
608
210k
Transcript
AzureでCI/CDするから 見ててくれ #インフラ勉強会 @tenn_25 2018/10/31
はじめに 以前、佐々木さんに「Azure WebAppsのデ プロイ機能の話してよ」と言ってくださいまし た! それを含めてAzureのCI/CDの話をしようと 思います!
諸注意 ・本内容には@tenn_25の独断と偏見が含まれている可能性があります ・頑張って準備しましたが、間違ったこと言ってたらすみません ・Azureの回し者ではありません ・Azureを激推しするつもりも否定するつもりもありません
私の思うAzureのいいところ(個人の感想) ・PaaS発なのでPaaSの機能が豊富(WebAppsまわり) ・FaaSサービスが高機能(FunctionApp,LogicApp) ・監視サービスが強力(Application Insights) ・リソースグループという概念でリソースが整理できる。 ・VisualStudio,AzureDevOpsなどMSサービスとの親和性(開発支援、CI/CD、テストな ど) 価値(サービス)を作ることに集中するためのツール達、と言う側面が強い。 Geekじゃない人も価値を作れることを重視している感じがする。
今日のデモ ①Azure DevOpsを使ってCI/CD環境を作る ②InfraStructure as Codeでインフラ環境をデプロイ ③GitへのPushトリガーでアプリケーションをデプロイ ④ブルーグリーンデプロイの実施
①Azure DevOpsを使ってCI/CD環境を作る ・旧名称:VSTS ・WIki、タスク管理、Git、CI/CDツール、テストツールがオールインワンになった開発チー ムのためのサービス。 ・CI/CDについては、画面からぽちぽち作成 or YAMLファイルをインポート ・3週間単位でアップデートがかかるので機能追加やUI変更がすごい。。 ・右上の[Preview
Features]から該当機能のチェックを外すと新機能を無効化できる
②InfraStructure as Codeでインフラ環境をデプロイ ・今回はWebApps(IISのPaaS)をコード化して、コードからデプロイ。 ・Ansibleなども使えますが、Azure公式のARMTemplateを使います。 ・JSON形式で出力ができるので取っ付き易い!! ・詳しくは以前のセッション「AzureでInfraStructure as Code」へ。。 1.インフラリリース用のビルドパイプラインを作成
2.masterブランチへのpushトリガーでWebAppsが作成される。
③GitへのPushトリガーでアプリをデプロイ ・Pushトリガーで動くパイプラインを作ります。 1.Gitの指定のブランチにPush 2.ビルドパイプライン実行 3.リリースパイプライン実行 4.WebAppsにデプロイされたことを確認!
④ブルーグリーンデプロイの実施 参考サイト:Microsoft Azure 技術者blog https://www.softbanktech.jp/service/list/ms-azure_blog/ms-azure_blog_0058/ 1.deployment slotを作成してリリースパイプラインを修正 2.pushトリガーでビルドされたものが裏slotにデプロイ 3.裏スロットにデプロイされたことを確認 4.問題なければ承認ボタンを押して表(ブルー)と裏(グリーン)を切り替え!!
5.表スロットに新バージョンがリリースされたことを確認 6.問題があればSwapするだけで切り戻しできることを確認