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 .N...
Search
Hossam Barakat
November 19, 2021
Programming
0
69
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
110
Build Your Azure Infrastructure as Code With .NET Core - Azure Day
hossambarakat
0
36
Build Your Azure Infrastructure as Code With .Net Core - Global Azure 2021
hossambarakat
0
54
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
130
Build Your Cloud Infrastructure as Code With .Net Core - NDC Porto 2020
hossambarakat
2
150
Kubernetes for Developers - All Day DevOps
hossambarakat
2
170
Secure your Kubernetes Containers - All Day DevOps
hossambarakat
0
120
Other Decks in Programming
See All in Programming
Writing Better Go: Lessons from 10 Code Reviews
konradreiche
0
1.1k
あなたとKaigi on Rails / Kaigi on Rails + You
shimoju
0
130
登壇は dynamic! な営みである / speech is dynamic
da1chi
0
310
iOSエンジニア向けの英語学習アプリを作る!
yukawashouhei
0
190
Django Ninja による API 開発効率化とリプレースの実践
kashewnuts
0
1.3k
monorepo の Go テストをはやくした〜い!~最小の依存解決への道のり~ / faster-testing-of-monorepos
convto
2
480
dynamic!
moro
10
7.5k
その面倒な作業、「Dart」にやらせませんか? Flutter開発者のための業務効率化
yordgenome03
1
120
NixOS + Kubernetesで構築する自宅サーバーのすべて
ichi_h3
0
690
ソフトウェア設計の実践的な考え方
masuda220
PRO
4
570
Things You Thought You Didn’t Need To Care About That Have a Big Impact On Your Job
hollycummins
0
220
コードとあなたと私の距離 / The Distance Between Code, You, and I
hiro_y
0
160
Featured
See All Featured
Optimizing for Happiness
mojombo
379
70k
Making Projects Easy
brettharned
119
6.4k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
Balancing Empowerment & Direction
lara
4
690
The Pragmatic Product Professional
lauravandoore
36
6.9k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
189
55k
Facilitating Awesome Meetings
lara
56
6.6k
Embracing the Ebb and Flow
colly
88
4.8k
The Power of CSS Pseudo Elements
geoffreycrofte
79
6k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
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