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 .NET Core - Azure Day
Search
Hossam Barakat
June 25, 2021
Technology
0
30
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
59
Kubernetes Blue-Green Deployment Made Easy with Argo Rollouts - ADDO
hossambarakat
0
71
Build Your Azure Infrastructure as Code With .Net Core - Global Azure 2021
hossambarakat
0
40
Practical Domain-Driven Design with EF Core - NDC London 2021
hossambarakat
0
230
Build Your Cloud Infrastructure as Code With .Net Core - ADDO 2020
hossambarakat
0
120
Practical Domain Driven Design With EFCore - NDC Sydney 2020
hossambarakat
0
130
Build Your Cloud Infrastructure as Code With .Net Core - NDC Porto 2020
hossambarakat
2
140
Kubernetes for Developers - All Day DevOps
hossambarakat
2
160
Secure your Kubernetes Containers - All Day DevOps
hossambarakat
0
110
Other Decks in Technology
See All in Technology
How to Think Like a Performance Engineer
csswizardry
4
590
DevIO2024_レガシー運用からの脱却 -クラウド活用の実践事例とベストプラクティス-
jun2882
0
210
AutomatedLabを使って内部ペンテストを勉強しよう! -やられ社内ネットワークの自動構築-
n_etupirka
1
610
Github Actions 로 Android 팀의 효율성 극대화
hadonghyun
0
160
20240717_イケコパ代表Copilot_in_Teams会社でこう使ってます
ponponmikankan
2
430
Git 研修 Advanced【MIXI 24新卒技術研修】
mixi_engineers
PRO
0
200
プレイドにおけるDatadog APMの活用方法
plaidtech
PRO
2
120
[I/O Extended Android 2024] What`s new in Android 2024
kyeongwan
0
220
楽しくGoを学び合う、LayerXの勉強会文化 / LayerX's study culture of having fun and learning Go together
ar_tama
2
350
頼られるのが大好きな 皆さんへ - 支援相手との期待の合わせ方、突き放し方 -/For_people_who_like_to_be_relied_on
naitosatoshi
1
290
データ分析基盤を作ってみよう~設計編~
nrinetcom
PRO
1
110
Datadog Cloud SIEMを使ってAWS環境の脅威を可視化した話/lifeistech-datadog-cloud-siem
gidajun
0
480
Featured
See All Featured
Testing 201, or: Great Expectations
jmmastey
33
6.9k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
189
16k
Gamification - CAS2011
davidbonilla
78
4.9k
Ruby is Unlike a Banana
tanoku
96
10k
Building Flexible Design Systems
yeseniaperezcruz
323
37k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.4k
Fontdeck: Realign not Redesign
paulrobertlloyd
79
5.1k
WebSockets: Embracing the real-time Web
robhawkes
59
7.2k
Faster Mobile Websites
deanohume
303
30k
Raft: Consensus for Rubyists
vanstee
134
6.5k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
35
6.3k
Building a Modern Day E-commerce SEO Strategy
aleyda
25
6.7k
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