AUTOMATION
What happens when we
throw ARM, DSC & POSH
into a blender?
Karim Vaes
AUTOMATION
Karim Vaes
Cloud Solution Architect
Cloud & Container Fanatic
Dev ~ Ops
Internal ~ Consultant
OpenSource ~ Microsoft
https://about.kvaes.be@kvaes https://blog.kvaes.be
AUTOMATIONAUTOMATION
What to expect?
Source : http://www.prestigeestateservices.com/wp-content/uploads/2016/04/What-To-Expect-At-Estate-Sales.png
Showcooking demo starts at 10:40
“Will it blend?”
AUTOMATION
Source : https://upload.wikimedia.org/wikipedia/commons/thumb/5/52/Mainframe_Computer.svg/2000px-Mainframe_Computer.svg.png
AUTOMATIONAUTOMATION
Let’s talk ingredients!
AUTOMATIONAUTOMATION
Powershell
aka “PS”, “Posh”
AUTOMATION
Azure Powershell
AUTOMATIONAUTOMATION
Azure
Resource Manager
aka “ARM”
AUTOMATION
Azure Templates can:
• Ensure Idempotency
• Simplify Orchestration
• Simplify Roll-back
• Provide Cross-Resource Configuration and
Update Support
Azure Templates are:
• Source files, can be checked-in
• Specifies resources and dependencies
(VMs, WebSites, DBs) and connections
(config, LB sets)
• Support parametrized input/output
Instantiation of repeatable config.
Configuration  Resource Group
MySQL Website Virtual
Machines
My App
[SQL CONFIG] VM (2x)
DEPENDS ON
MySQL
DEPENDS ON
MySQL
SQLCONFIG
Azure Resource Manager
Platform Services
Infrastructure Services
Web
Apps
Mobile
Apps
API
Apps
Notification
Hubs
Hybrid
Cloud
Backup
StorSimple
Azure Site
Recovery
Import/Export
SQL
Database DocumentDB
Redis
Cache
Azure
Search
Storage
Tables
SQL Data
Warehouse
Azure AD
Health Monitoring
AD Privileged
Identity
Management
Operational
Analytics
Cloud
Services
Batch
RemoteApp
Service
Fabric
Visual Studio
Application
Insights
VS Team Services
Domain Services
HDInsight Machine
Learning Stream Analytics
Data
Factory
Event
Hubs
Data Lake
Analytics Service
IoT Hub
Data
Catalog
Security &
Management
Azure Active
Directory
Multi-Factor
Authentication
Automation
Portal
Key Vault
Store/
Marketplace
VM Image Gallery
& VM Depot
Azure AD
B2C
Scheduler
Xamarin
HockeyApp
Power BI
Embedded
SQL Server
Stretch Database
Mobile
Engagement
Functions
Cognitive Services Bot Framework Cortana
Security Center
Container
Service
VM
Scale Sets
Data Lake Store
BizTalk
Services
Service Bus
Logic
Apps
API
Management
Content
Delivery
Network
Media
Services
Media
Analytics
AUTOMATIONAUTOMATION
Desired State Configuration
aka “DSC”
AUTOMATION
Basic DSC Configuration
{
Node e15-1
{
WindowsFeature WebServer
{
Name = "Web-Server"
Ensure = "Present"
}
WindowsFeature CertAuth
{
Name = "Web-Cert-Auth"
Ensure = "Present"
DependsOn = "[WindowsFeature]WebServer"
}
}
}
ConfigScript1
#Start-DscConfiguration -Path .ConfigScript1 -Verbose -Wait
Configuration ConfigScript1
AUTOMATION
DSC Essentials
Test-Resource
Set-Resource
Get-Resource
ApplyOnly
ApplyAndMonitor
ApplyAndAutoCorrect
AUTOMATIONAUTOMATION
When to use what?
PS, ARM, DSC,...??!?
AUTOMATION
Automated
AUTOMATION
Less Automated
AUTOMATION
Desired State
Yes
Infrastructure ARM
In-VM DSC
No
Automation Powershell
Speed &
Depth
Powershell
Quick & Dirty Portal
AUTOMATIONAUTOMATION
Let’s talk recipe!
AUTOMATIONAUTOMATION
Anybody heard of DevOps?
Yeah, we do it,
just not with all
that hipster mumbo jumbo!
AUTOMATION
Plan
1 Monitor + Learn
ReleaseDevelop +
Test
2
4
3
DevOps
AUTOMATION
Doing
IT
Together
Source : http://s27.postimg.org/j3esd6c5f/toddler2.jpg
AUTOMATIONAUTOMATION
Anybody heard of CI/CD?
Yeah, we deploy
stuff too!
AUTOMATION
Continuous integration
cspkg
AUTOMATION
Continuous delivery
AUTOMATIONAUTOMATION
Anybody heard of Infra-as-
code?
Or maybe
even Config-as-code?
AUTOMATION
Infrastructure and configuration
as code
AUTOMATION
Everyone still awake?
Source : http://amaznginfo.com/wp-content/uploads/2015/12/o-CHILD-AFRAID-OF-THE-DARK-facebook.jpg
Powershell Script
Re-use Scripts + Functions
Versioning … Source Control
Automated Deployment
Automated Testing
Infrastructure-as-Code
Operational Insight
Automated
Provisioning
AUTOMATIONAUTOMATION
Showcooking time!
AUTOMATIONAUTOMATION
Show cooking time!
Thank god,
the theoretical
crap ends...
AUTOMATION
Develop Build
Test
Deploy Environments Monitor and Learn
Development
Production
Acceptance
Testing
AUTOMATION
AUTOMATIONAUTOMATION
Closing Thoughts
Are you herding cattle or
cats?
#expertslive
Source : http://theemarketingblog.blogs.lamp.elliance.com/wp-content/uploads/sites/2/2015/01/herding-cats.jpg
AUTOMATION
If you only read
one book
this year…
https://aka.ms/xdevops
Or
Powershell Script
Re-use Scripts + Functions
Versioning … Source Control
Automated Deployment
Automated Testing
Infrastructure-as-Code
Operational Insight
Automated
Provisioning
Keep
Calm
and put it on
Azure (Stack)
Thanks for listening!
AUTOMATION
<Volgende sessie 11:30 – 12:30 uur>
Deliver PowerShell to your team:
From a script on a UNC share to
a self-updating module.
<Daniel Both & Bartosz Bielawski>

Experts live2016 - Karim Vaes - end-to-end automation

Editor's Notes

  • #2 Timing (60”) Intro 5” Ingredients 10” DevOps 10” Demo 20” Closure 5” Q&A 10” Benchmark Intro : 7’30 Ingredients : 14’19 Devops : 10’25 Demo : 14’50 Clousure : 3’13 Q&A : 9’
  • #3  Start of the talk 0,5”
  • #4 Basic introduction, reference hetrogenous profile Ask questions at the end of the session or via twitter 2”
  • #5 Timing (60”) Intro 5” Ingredients 10” DevOps 10” Demo 20” Closure 5” Q&A 10” 2”
  • #6 Quick promo for demo at 10:40 0,5”
  • #10 Poll who knows Azure Powershell Reference that all actions can be done via powershell, and oddly enough not via the portal 1”
  • #12 Reference idempotency, repeatability & dependencies 1”
  • #13 Indicate that all the services in azure can be deployed via ARM Link towards the lego building blocks Story about building cars & busses. Same building blocks. Some customers want busses, some want cars. 2”
  • #15 Talk that DSC can be used to install workloads into a VM based upon a configuration 1”
  • #16 Talk about the way the config is applied via a DSC resource And about the different apply modes 2”
  • #18 0,5”
  • #19 0,5”
  • #20 2” Talk about the various options there are
  • #23 General pitch on devops Working together through the 4 phases 1”
  • #24 But in the end it revolves around people working together in IT 1”
  • #26 So we covered a bunch of support around DevTest in Azure to help you get started in your journey to DevOps. POLL: How many of you are familiar with CI? Let’s now talk about the first concrete step you can take to practice DevOps. CI is about accelerating delivery by ensuring every checkin or in some rolling cases a small set of checkins lead to a build that is tested with all other dev, infra and config code. 2”
  • #27 Testing needs to be done during every stage of the continuous deployment lifecycle. David Note: Make sure to highlight customer pain points, “bullet train”, Poll?? We need to make sure the testing is obvious on this side as well 2”
  • #29 Now in this landscape, let’s look at the more familiar DevOps issue once we have Dev/Test Environments which is one of consistency. Environment Consistency – Infra as code Deployment Consistency – Config as code 2”
  • #30  1”
  • #34 2” + 18”
  • #37 2”
  • #38 1”
  • #40 10”