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
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
61
Kubernetes Blue-Green Deployment Made Easy with Argo Rollouts - ADDO
hossambarakat
0
75
Build Your Azure Infrastructure as Code With .Net Core - Global Azure 2021
hossambarakat
0
42
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
150
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
Causal Impactを用いたLINE Pay UIの効果検証とABテスト実施への貢献
lycorptech_jp
PRO
3
490
【shownet.conf_】3Dアプローチで守るセキュリティ
shownet
PRO
0
280
スモールスタート、不都合な真実 〜 耳当たりの良い言葉に現場が振り回されないために/20240930-ssmjp-small-start
opelab
12
1.7k
ガバメントクラウド開発と変化と成長する組織 / Organizational change and growth in developing a government cloud
kazeburo
2
330
【shownet.conf_】持続可能な次世代Wi-Fi運用に向けて
shownet
PRO
0
260
Rubyはなぜ「たのしい」のか? / Why is Ruby a programmers' best friend? #tqrk15
expajp
4
1.7k
GitHub Actions/Docker/Terraform/Renovate で最小限の Monorepo CD パイプラインを作る / Minimalistic Monorepo CD Pipeline with GitHub Actions, Docker, Terraform and Renovate
yuyatakeyama
4
340
クレジットカードを製造する技術
yutadayo
27
10k
Efficient zero-copy networking using io_uring
ennael
PRO
0
270
Interfacing Kernel C APIs from Rust
ennael
PRO
0
210
【ログ分析勉強会】EDR ログで内部不正を検出できるのか、Copilot に聞いてみた
hssh2_bin
2
270
【shownet.conf_】トポロジ図の歩き方
shownet
PRO
0
360
Featured
See All Featured
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
5
220
GitHub's CSS Performance
jonrohan
1030
450k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
1
240
Fireside Chat
paigeccino
32
2.9k
5 minutes of I Can Smell Your CMS
philhawksworth
202
19k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
279
13k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
What's new in Ruby 2.0
geeforr
341
31k
Done Done
chrislema
181
16k
The Cost Of JavaScript in 2023
addyosmani
43
5.8k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
225
22k
Unsuck your backbone
ammeep
667
57k
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