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 Cloud Infrastructure as Code With .Net Core - Build Stuff
Search
Hossam Barakat
November 19, 2021
Programming
0
57
Build Your Cloud Infrastructure as Code With .Net Core - Build Stuff
Hossam Barakat
November 19, 2021
Tweet
Share
More Decks by Hossam Barakat
See All by Hossam Barakat
Kubernetes Blue-Green Deployment Made Easy with Argo Rollouts - ADDO
hossambarakat
0
62
Build Your Azure Infrastructure as Code With .NET Core - Azure Day
hossambarakat
0
30
Build Your Azure Infrastructure as Code With .Net Core - Global Azure 2021
hossambarakat
0
37
Practical Domain-Driven Design with EF Core - NDC London 2021
hossambarakat
0
220
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
130
Kubernetes for Developers - All Day DevOps
hossambarakat
2
150
Secure your Kubernetes Containers - All Day DevOps
hossambarakat
0
110
Other Decks in Programming
See All in Programming
R言語の環境構築と基礎 Tokyo.R 112
bob3bob3
0
260
Netty Chicago Java User Group 2024-04-17
sullis
0
170
検証も兼ねて個人開発でHonoとかと向き合った話
hanetsuki
0
860
二郎系ラーメンのコールで学ぶ AST 解析
memory1994
PRO
7
1.7k
VSCodeでのDatabricks開発もお勧めしたい/I would also recommend Databricks development with VSCode.
kazumain
0
250
Semantic search with Django and pgvector
pauloxnet
0
240
Ruby GitHub Packages
bkuhlmann
0
630
MicrosoftのPlatform Engineeringガイドを読んで実際になにかやってみた
ymd65536
1
310
From Spring Boot 2 to Spring Boot 3 with Java 22 and Jakarta EE
ivargrimstad
0
1.2k
HUIT新歓2024「競技プログラミング、やってみませんか?」
slephy2784
1
270
2 週間で Twitter Bot を作ってみた
contour_gara
0
340
ゆるい個人開発のススメ
kuroppe1819
10
990
Featured
See All Featured
Product Roadmaps are Hard
iamctodd
44
9.7k
Infographics Made Easy
chrislema
238
18k
Side Projects
sachag
451
41k
What’s in a name? Adding method to the madness
productmarketing
PRO
16
2.6k
How to name files
jennybc
65
93k
Teambox: Starting and Learning
jrom
128
8.4k
Designing with Data
zakiwarfel
96
4.8k
How to Ace a Technical Interview
jacobian
272
22k
10 Git Anti Patterns You Should be Aware of
lemiorhan
648
58k
The Art of Programming - Codeland 2020
erikaheidi
42
12k
Building Adaptive Systems
keathley
31
1.9k
Ruby is Unlike a Banana
tanoku
96
10k
Transcript
Build Your Azure Infrastructure as Code With .NET Core Hossam
Barakat Engineering Manager at Willow @hossambarakat_ | www.hossambarakat.net
@hossambarakat_ Data Centers
@hossambarakat_ Rise of Cloud Computing
@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_ Questions?
Thanks Hossam Barakat @hossambarakat_ www.hossambarakat.net