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
26
study-infra-0708
tenn25
0
53
study-infra-0526
tenn25
0
43
study-infra-0429
tenn25
0
71
Featured
See All Featured
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
121
18k
Faster Mobile Websites
deanohume
303
30k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
105
6.8k
Being A Developer After 40
akosma
72
580k
Building an army of robots
kneath
301
42k
Practical Orchestrator
shlominoach
185
10k
4 Signs Your Business is Dying
shpigford
178
21k
The Straight Up "How To Draw Better" Workshop
denniskardys
229
130k
Embracing the Ebb and Flow
colly
81
4.3k
Debugging Ruby Performance
tmm1
71
11k
A Philosophy of Restraint
colly
200
16k
Building a Scalable Design System with Sketch
lauravandoore
458
32k
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するだけで切り戻しできることを確認