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
Build Your Azure Infrastructure as Code With .N...
Search
Hossam Barakat
June 25, 2021
Technology
0
38
Build Your Azure Infrastructure as Code With .NET Core - Azure Day
Hossam Barakat
June 25, 2021
Tweet
Share
More Decks by Hossam Barakat
See All by Hossam Barakat
Build Your Cloud Infrastructure as Code With .Net Core - Build Stuff
hossambarakat
0
71
Kubernetes Blue-Green Deployment Made Easy with Argo Rollouts - ADDO
hossambarakat
0
120
Build Your Azure Infrastructure as Code With .Net Core - Global Azure 2021
hossambarakat
0
56
Practical Domain-Driven Design with EF Core - NDC London 2021
hossambarakat
0
250
Build Your Cloud Infrastructure as Code With .Net Core - ADDO 2020
hossambarakat
0
140
Practical Domain Driven Design With EFCore - NDC Sydney 2020
hossambarakat
0
140
Build Your Cloud Infrastructure as Code With .Net Core - NDC Porto 2020
hossambarakat
2
150
Kubernetes for Developers - All Day DevOps
hossambarakat
2
180
Secure your Kubernetes Containers - All Day DevOps
hossambarakat
0
120
Other Decks in Technology
See All in Technology
AI × クラウドで シイタケの収穫時期を判定してみた
lamaglama39
0
250
フライトコントローラPX4の中身(制御器)を覗いてみた
santana_hammer
1
140
AIと自動化がもたらす業務効率化の実例: 反社チェック等の調査・業務プロセス自動化
enpipi
0
520
LINE公式アカウントの技術スタックと開発の裏側
lycorptech_jp
PRO
0
380
QAを"自動化する"ことの本質
kshino
1
120
Flutterコントリビューションのススメ
d_r_1009
1
390
今、MySQLのバックアップを作り直すとしたら何がどう良いのかを考える旅
yoku0825
0
340
大規模プロダクトで実践するAI活用の仕組みづくり
k1tikurisu
4
1k
Claude Code 10連ガチャ
uhyo
3
680
AIを前提に、業務を”再構築”せよ IVRyの9ヶ月にわたる挑戦と未来の働き方 (BTCONJP2025)
yueda256
1
670
AWS オブザーバビリティサービスアップデート
o11yfes2023
0
110
機密情報の漏洩を防げ! Webフロントエンド開発で意識すべき漏洩パターンとその対策
mizdra
PRO
9
3.3k
Featured
See All Featured
Unsuck your backbone
ammeep
671
58k
Designing for humans not robots
tammielis
254
26k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.8k
GitHub's CSS Performance
jonrohan
1032
470k
A Modern Web Designer's Workflow
chriscoyier
697
190k
Agile that works and the tools we love
rasmusluckow
331
21k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.7k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
24
1.6k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.1k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
31
2.7k
Designing for Performance
lara
610
69k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
2.9k
Transcript
Build Your Azure Infrastructure as Code With .NET Core Hossam
Barakat Engineering Manager at Willow @hossambarakat_ | www.hossambarakat.net
@hossambarakat_ How to provision cloud resources?
@hossambarakat_ Manual AKA Point and Click
@hossambarakat_ Manual AKA Point and Click
@hossambarakat_ Snowflake Servers
@hossambarakat_ Infrastructure as Code
@hossambarakat_ • Managing and provisioning cloud resources using code. Infrastructure
as Code
@hossambarakat_ Imperative: CLI commands and scripts
@hossambarakat_ Idempotency and error handling
@hossambarakat_ Declarative Infrastructure as Code
@hossambarakat_ Tool Declarative Infrastructure as Code Desired State Actual Resources
@hossambarakat_ • Azure Resource Manager • Terraform • Bicep •
AWS CloudFormation • Google Deployment Manager • … Declarative Infrastructure as Code tools
@hossambarakat_ • JSON, YAML, domain specific languages (DSLs),… Infrastructure as
Code tools
@hossambarakat_
@hossambarakat_ Enter Pulumi
@hossambarakat_ • Pulumi is an open source infrastructure as code
tool the lets you use real languages – C#, TypeScript, Go,… – to provision and manage cloud resources. What is Pulumi?
@hossambarakat_ • Control flow with loops and if conditions •
Abstraction with functions, classes, packages,… • Code sharing with package management (Nuget, npm,…) • Authoring with favourite IDEs, refactoring, code completion, static type checking • Testing with existing frameworks and tools Benefits
@hossambarakat_
@hossambarakat_ Pulumi Fundamentals
@hossambarakat_ Projects & Stacks web-app (Pulumi.yaml) Project $ pulumi new
Stacks $ pulumi stack init stackName Pulumi.<stack-name>.yaml Pulumi.yaml
@hossambarakat_ Configurations $ pulumi config set dbPassword S3cr37 config: serverless-app:dbPassword:
S3cr37 Pulumi.<stack-name>.yaml var config = new Pulumi.Config(); var password = config.Require("dbPassword"); Pulumi.cs
@hossambarakat_ Application architecture on Azure
@hossambarakat_
@hossambarakat_ But that would be imperative, right?
@hossambarakat_ How Pulumi Works State CLI and Engine AWS Azure
Kubernetes Providers Code Plan Apply new Resource()
@hossambarakat_ Continuous Deployment Infrastructure as Code Manual Review State
@hossambarakat_ GitHub Integration
@hossambarakat_ Summary
@hossambarakat_
@hossambarakat_ • https://github.com/hossambarakat/pulumi-demos • http://pulumi.com/docs • https://github.com/pulumi/examples Resources
@hossambarakat_ Questions?
Thanks Hossam Barakat @hossambarakat_ www.hossambarakat.net