SlideShare una empresa de Scribd logo
1 de 49
Descargar para leer sin conexión
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
Provisioning Windows instances at
scale on Azure, AWS and OpenStack
Adrian Vladu
Senior Cloud Engineer @ Cloudbase Solutions
@ader1990 @cloudbaseit
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
Many thanks to our sponsors & partners!
GOLD
SILVER
PARTNERS
PLATINUM
POWERED BY
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
• 5+ years of experience
• Developer at first
• Engineer on paper
• Problem solver at heart
About me
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
• Cloudbase-Init and the revolving ecosystem
• How to create and test a Windows image
• Live Demo: Spawn a Windows VM using Cloudbase-
Init on Azure
• Ask.me
Takeaways
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
• Provisioning agent for cloud (automation) ready
instances
• cloud-init like
• Multi-cloud
• Multi-platform
• Full Windows support
• Cloud-init v2
Cloudbase-Init – what is it?
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
• Mature project, ~ 5 years old now
• De-facto standard provisioning agent on OpenStack
for Windows
• ~ 10 millions reported executions
Cloudbase-Init – stats
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
• 100% written in Python (v2.7, v3.4)
• Open source (Apache 2 License) project under OpenStack umbrella
– https://github.com/openstack/cloudbase-init
– https://bugs.launchpad.net/cloudbase-init
– https://review.openstack.org/#/c/427611/
– https://cloudbase-init.readthedocs.io/en/latest/
• Supports Windows + *nix forks
– https://github.com/pellaeon/bsd-cloudinit
• MSI installer/zip archive for x86/x64 with Stable/Nightly Builds
– https://cloudbase.it/downloads/CloudbaseInitSetup_Stable_x64.msi
– https://cloudbase.it/downloads/CloudbaseInitSetup_x86.msi
– https://cloudbase.it/downloads/CloudbaseInitSetup_x86.zip
Cloudbase-Init
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
• Install it via msi – fully automated
• Install it using a zip with the Python env +
Cloudbase-Init package
• Only as a Python process
• As a Python process managed by a Windows service
Cloudbase-Init (Windows) – how do I install/run it?
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
• Unattend step (Unattend.xml)
– During sysprep specialize step as a Python process
• First run
– At first boot the service is started by SetupComplete.cmd
– At every other boot as a Python process managed by a
Windows service set on “Automated start”
• Windows Nano Server
– At first boot the service is created and started by
SetupComplete.cmd
– The zip is used in this case
Cloudbase-Init (Windows) – when does it run?
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
• All Windows versions currently supported by
Microsoft
• Windows 2K8/2K8R2 and Vista/7 x86/x64
• Windows 2K12/2K12R2/Hyper-V and 8/8.1 x86/x64
• Windows 2K16/Hyper-V and 10 x86/x64
• Windows PE
• Windows Nano Server
Cloudbase-Init (Windows) – supported versions
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
• Execute non-metadata dependent plugins
• Load the first available metadata service
• Execute (non)metadata dependent plugins
• Communicate to the metadata service the instance
status
Cloudbase-Init – what does it do?
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
• Uses WMI
• Uses Win32 APIs directly
• Wraps exe’s
• Uses PyMI
–https://github.com/cloudbase/PyMI
Cloudbase-Init – what actually does it do?
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
• OpenStack (http or configdrive)
• EC2 (http or configdrive)
• MAAS (http)
• OpenNebula (http)
• CloudStack (http)
• Azure (http+configdrive+kvp)
• Packet (http)
• NoCloud (configdrive)
• DigitalOcean (http)
Cloudbase-Init – supported metadata services
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
• Create user
• Set user password and post it to the metadata
service (if supported)
• Set SSH public keys
• Execute local scripts
• Execute user data
• Execute vendor data
Cloudbase-Init – features (1)
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
• Set hostname / FQDN
• Create ephemeral disk notice
• Enable / Disable TRIM
• Set MTU
• Set NTP server
Cloudbase-Init – features (2)
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
• Activate Windows
• Set page file
• Extend volumes
• Configure automatic updates
• Configure WINRM listener
• Configure WINRM certificate authentication
• Configure SAN policy
• Configure BCD boot status policy
Cloudbase-Init (Windows) – features (3)
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
• Set unique boot disk id
• Import certificates from the metadata
• Set display idle timeout
• Communicate RDP certificate thumbprint to the
metadata
• Install platform agents
Cloudbase-Init (Windows) – features (4)
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
• Configure networking
– Debian-like metadata OpenStack
– OpenStack JSON
– MAAS
– OpenNebula
– Packet
• Functionality
– Rename / disable adapter
– MTU
– Set IPV4 IP/netmask/gateway/DNS
– Set IPV6 IP/netmask/gateway
– Set IPV6 DNS
– Create NET_LBFO (TBM) / vendor dependent / OVS bonds
– Create VLAN adapters
Cloudbase-Init (Windows) – features (5)
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
• Communicate the status of the instance to the
metadata
–Via call-home URL
–Via KVP in Hyper-V
• Log to serial port
Cloudbase-Init – features (5)
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
• Service can run as LocalSystem or as a dedicated
user
• By default, as a dedicated admin user
• Use LocalSystem if you don’t need impersonation
scripts
• Pass the hash attacks avoided by resetting service
user password at every service run
Cloudbase-Init – security concerns
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
• Like any other OpenStack project
• Feature / bug management
–https://launchpad.net/cloudbase-init
• Using git and git-review
• Enters the review system
–Unit tests need to pass
–Argus CI needs to +1
–Two core reviewers need to +2
–The code is merged into the github repo
Cloudbase-Init – how do I contribute?
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
ARGUS
Continuous Integration Framework for Cloudbase-Init
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
• Continuous integration framework for Cloudbase-Init
• 100% Python
• OpenStack Tempest based (open source Apache 2 license)
• https://github.com/cloudbase/cloudbase-init-ci
• http://argus-ci.readthedocs.io/en/latest/
• Backends
– Tempest OpenStack
– Heat OpenStack
– Azure
– Local
Argus – what is it?
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
• From a functionality perspective, it can be used to
test other Windows applications
• Has WinRM (pywinrm) scp like feature
• Terminology
–Backend
–Recipe
–Test
–Scenario
Argus
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
• Create the Windows image
–Create a Windows image with all updates
–Install git client
–Add an administrative user
–Enable HTTP WinRM
–Sysprep
• Add image to the backend
Argus workflow – Preparation
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
• Start an instance on backend
• Install & configure Cloudbase-Init with the given git
head
• Sysprep & reboot
• Check if Cloudbase-Init executed correctly
Argus workflow – Execution
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
• All currently supported by MSFT
• Can also test production images
Argus – Windows support
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
• Big thanks to Microsoft
• “Small” size OpenStack Mitaka deployment
• Runs at every patch change
• Huge increase in productivity after all the integration
testing complexity has been passed to the CI
• Argus is built to be a general purpose application
testing framework on multiple backends
Argus – running it
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
AZURE DEMO TIME
Start a Windows instance with Cloudbase-Init on Azure
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
ARESTOR
HTTP Metadata Service for Argus
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
• Create and control http metadata for an instance
• Otherwise we need access to
complex/heterogeneous/expensive environments
• Easier to have only one powerful backend
• https://github.com/cloudbase/arestor (Apache 2)
• Support for all the http supported metadata services
–OpenStack
– CloudStack, MAAS, Packet
Arestor – what is it?
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
• Argus controls what Arestor exposes at a given
endpoint through a Python client
• Encrypted interaction Argus->Arestor with
key/secret
• Arestor has:
–Management (admin) endpoint
–Client (instance) endpoint (S)
• Arestor implements GET/POST endpoints
Argus integration with Arestor
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
WINDOWS IMAGING TOOLS
PowerShell tools to create a Windows image
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
• Tools to create a Windows image (Apache 2 License)
– https://github.com/cloudbase/windows-openstack-imaging-tools
– https://github.com/cloudbase/cloudbase-init-offline-install
• Supported hypervisors/platforms for the generated images:
– KVM
– Baremetal
– Hyper-V
– MAAS
• Supported hypervisors to generate images:
– KVM (legacy version 1.0.0)
– Hyper-V
• Supported Windows image versions: All supported by MSFT
Windows Imaging Tools – what is it?
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
• Install VirtIO and other drivers
• Install additional features
• Apply updates
• Clean updates (shrinks considerably the image 20GB->15GB)
+ defragment
• Install Cloudbase-Init
• Sysprep
• Wallpaper :D
• Gold image (experimental)
• Config file based generation (experimental)
• Use qemu-img.exe to convert to qcow2/raw
Windows Imaging Tools – what does it do?
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
• Trial Windows Server 2012R2 images for KVM and
Hyper-V available
–https://cloudbase.it/windows-cloud-images/
• Zero to hero imaging tools script
–https://github.com/cloudbase/windows-openstack-
imaging-tools/blob/master/Examples/create-windows-
online-cloud-image.ps1
Windows Imaging Tools – fast lane
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
• Windows Imaging Tools bundles Cloudbase-Init
• Cloudbase-Init is tested with Argus
• The images generated by imaging tools are tested
with Argus
• Arestor provides to Argus the flexibility to test
Cloudbase-Init and the images with various
metadata formats and implementations
• Hard tested by Argus and users
The big fit
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
AZURE LIVE DEMO RESULTS
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
TIME FOR QUESTIONS
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
THANK YOU!
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
Wait, there’s more
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
Running Windows in the wild
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
• On Hyper-V – reboot (report) it now
• On KVM
– VirtIO drivers need to be installed
– https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/
– Set cpu_mode=host-passthrough & libvirt_type=kvm in nova.conf
compute node and create another VM on OpenStack.
• On Baremetal
– Make sure you have the required drivers for the storage/network
adapters
• On VMware
– No nested hyper-v? Set guestOS = "winhyperv“ in the .vmx
– Vlans not working? Set netadapter type to e1000e in the .vmx
What have I done wrong? Wild BSOD appears
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
What have I done wrong? Wild sysprep fail
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
• When Cloudbase-init is installed with the MSI on non-
Nano server and is set to perform the sysprep: if
Cloudbase-init process exits with non-zero code, a reboot
is performed (max 10 times). You will get an error saying
that “Windows could not start the installation process”.
• Documented at https://technet.microsoft.com/en-
us/library/cc722061(v=ws.10).aspx
• Why? If Cloudbase-init does not run, the instance can be
unconfigured/exposed/vulnerable or cannot be accessed
via RDP/WinRM.
• If you get “Invalid Unattend.xml”
What have I done wrong? Wild sysprep fail
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
• Press Shift+F10
• A wild cmd will appear
• Start PowerShell (optional) – literally run `start powershell` in
the cmd
• You won’t have WMI – so don’t try Get-WmiObject like
commands
• Use `notepad.exe` or `cat` to view/edit files
• Check C:WindowsPanther* log files
• Check C:WindowsPantherUnattendGC* log files
• Check Cloudbase-Init log files from
– C:Program FilesCloudbase SolutionsCloudbase-InitLogs*
What have I done wrong? Wild sysprep fail
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
• losetup/kpartx/mount/ntfs-3g on Linux
• qemu-img.exe convert to vhd/x and mount vhd on
Windows
– Replace C:WindowsSystem32sethc.exe with
C:WindowsSystem32cmd.exe, reboot and press Shift 5
times and you will have an admin cmd.exe
– Use regedit.exe and File->Load Hive-
>m:windowssystem32configsystem|software and update
the registry keys at will. File->Unload Hive afterwards.
– Be a hero and open with notepad.exe the registry file and
update the XML (it’s just an XML). You might need to replace
LocalSystem with admin user as the owner of that file
What have I done wrong? Feeling left out
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals
@ITCAMPRO #ITCAMP17Community Conference for IT Professionals

Más contenido relacionado

La actualidad más candente

ITCamp 2017 - Raffaele Rialdi - A Deep Dive Into Bridging Node-js with .NET Core
ITCamp 2017 - Raffaele Rialdi - A Deep Dive Into Bridging Node-js with .NET CoreITCamp 2017 - Raffaele Rialdi - A Deep Dive Into Bridging Node-js with .NET Core
ITCamp 2017 - Raffaele Rialdi - A Deep Dive Into Bridging Node-js with .NET CoreITCamp
 
Xamarin Under The Hood - Dan Ardelean
 Xamarin Under The Hood - Dan Ardelean Xamarin Under The Hood - Dan Ardelean
Xamarin Under The Hood - Dan ArdeleanITCamp
 
Blockchain for mere mortals - understand the fundamentals and start building ...
Blockchain for mere mortals - understand the fundamentals and start building ...Blockchain for mere mortals - understand the fundamentals and start building ...
Blockchain for mere mortals - understand the fundamentals and start building ...ITCamp
 
Windows 10 Creators Update: what’s on tap for business users - Ionut Balan
Windows 10 Creators Update: what’s on tap for business users - Ionut BalanWindows 10 Creators Update: what’s on tap for business users - Ionut Balan
Windows 10 Creators Update: what’s on tap for business users - Ionut BalanITCamp
 
Modern cybersecurity threats, and shiny new tools to help deal with them - T...
 Modern cybersecurity threats, and shiny new tools to help deal with them - T... Modern cybersecurity threats, and shiny new tools to help deal with them - T...
Modern cybersecurity threats, and shiny new tools to help deal with them - T...ITCamp
 
#NoAgile - Dan Suciu
 #NoAgile - Dan Suciu #NoAgile - Dan Suciu
#NoAgile - Dan SuciuITCamp
 
Testing your PowerShell code with Pester - Florin Loghiade
Testing your PowerShell code with Pester - Florin LoghiadeTesting your PowerShell code with Pester - Florin Loghiade
Testing your PowerShell code with Pester - Florin LoghiadeITCamp
 
What's New in Hyper-V 2016 - Thomas Maurer
What's New in Hyper-V 2016 - Thomas MaurerWhat's New in Hyper-V 2016 - Thomas Maurer
What's New in Hyper-V 2016 - Thomas MaurerITCamp
 
Create The Internet of Your Things example of a real system - Laurent Ellerbach
Create The Internet of Your Things example of a real system - Laurent EllerbachCreate The Internet of Your Things example of a real system - Laurent Ellerbach
Create The Internet of Your Things example of a real system - Laurent EllerbachITCamp
 
Serverless Single Page Apps with React and Redux at ItCamp 2017
Serverless Single Page Apps with React and Redux at ItCamp 2017Serverless Single Page Apps with React and Redux at ItCamp 2017
Serverless Single Page Apps with React and Redux at ItCamp 2017Melania Andrisan (Danciu)
 
The Fine Art of Time Travelling - Implementing Event Sourcing - Andrea Saltar...
The Fine Art of Time Travelling - Implementing Event Sourcing - Andrea Saltar...The Fine Art of Time Travelling - Implementing Event Sourcing - Andrea Saltar...
The Fine Art of Time Travelling - Implementing Event Sourcing - Andrea Saltar...ITCamp
 
NetDevOps Development Environments
NetDevOps Development EnvironmentsNetDevOps Development Environments
NetDevOps Development EnvironmentsJoel W. King
 
API 102: Programming with Meraki APIs
API 102: Programming with Meraki APIsAPI 102: Programming with Meraki APIs
API 102: Programming with Meraki APIsJoel W. King
 
Flogo - A Golang-powered Open Source IoT Integration Framework (Gophercon)
Flogo - A Golang-powered Open Source IoT Integration Framework (Gophercon)Flogo - A Golang-powered Open Source IoT Integration Framework (Gophercon)
Flogo - A Golang-powered Open Source IoT Integration Framework (Gophercon)Kai Wähner
 
Learn To Think Like A Computer Scientist
Learn To Think Like A Computer ScientistLearn To Think Like A Computer Scientist
Learn To Think Like A Computer ScientistJoel W. King
 
Microservices and containers networking: Contiv, an industry leading open sou...
Microservices and containers networking: Contiv, an industry leading open sou...Microservices and containers networking: Contiv, an industry leading open sou...
Microservices and containers networking: Contiv, an industry leading open sou...Codemotion
 
TIBCO BWCE and Netflix' Hystrix Circuit Breaker for Cloud Native Middleware M...
TIBCO BWCE and Netflix' Hystrix Circuit Breaker for Cloud Native Middleware M...TIBCO BWCE and Netflix' Hystrix Circuit Breaker for Cloud Native Middleware M...
TIBCO BWCE and Netflix' Hystrix Circuit Breaker for Cloud Native Middleware M...Kai Wähner
 
[muCon2017]DevSecOps: How to Continuously Integrate Security into DevOps
[muCon2017]DevSecOps: How to Continuously Integrate Security into DevOps[muCon2017]DevSecOps: How to Continuously Integrate Security into DevOps
[muCon2017]DevSecOps: How to Continuously Integrate Security into DevOpsDaniel Oh
 

La actualidad más candente (20)

ITCamp 2017 - Raffaele Rialdi - A Deep Dive Into Bridging Node-js with .NET Core
ITCamp 2017 - Raffaele Rialdi - A Deep Dive Into Bridging Node-js with .NET CoreITCamp 2017 - Raffaele Rialdi - A Deep Dive Into Bridging Node-js with .NET Core
ITCamp 2017 - Raffaele Rialdi - A Deep Dive Into Bridging Node-js with .NET Core
 
Xamarin Under The Hood - Dan Ardelean
 Xamarin Under The Hood - Dan Ardelean Xamarin Under The Hood - Dan Ardelean
Xamarin Under The Hood - Dan Ardelean
 
Blockchain for mere mortals - understand the fundamentals and start building ...
Blockchain for mere mortals - understand the fundamentals and start building ...Blockchain for mere mortals - understand the fundamentals and start building ...
Blockchain for mere mortals - understand the fundamentals and start building ...
 
Windows 10 Creators Update: what’s on tap for business users - Ionut Balan
Windows 10 Creators Update: what’s on tap for business users - Ionut BalanWindows 10 Creators Update: what’s on tap for business users - Ionut Balan
Windows 10 Creators Update: what’s on tap for business users - Ionut Balan
 
Modern cybersecurity threats, and shiny new tools to help deal with them - T...
 Modern cybersecurity threats, and shiny new tools to help deal with them - T... Modern cybersecurity threats, and shiny new tools to help deal with them - T...
Modern cybersecurity threats, and shiny new tools to help deal with them - T...
 
#NoAgile - Dan Suciu
 #NoAgile - Dan Suciu #NoAgile - Dan Suciu
#NoAgile - Dan Suciu
 
Testing your PowerShell code with Pester - Florin Loghiade
Testing your PowerShell code with Pester - Florin LoghiadeTesting your PowerShell code with Pester - Florin Loghiade
Testing your PowerShell code with Pester - Florin Loghiade
 
What's New in Hyper-V 2016 - Thomas Maurer
What's New in Hyper-V 2016 - Thomas MaurerWhat's New in Hyper-V 2016 - Thomas Maurer
What's New in Hyper-V 2016 - Thomas Maurer
 
Create The Internet of Your Things example of a real system - Laurent Ellerbach
Create The Internet of Your Things example of a real system - Laurent EllerbachCreate The Internet of Your Things example of a real system - Laurent Ellerbach
Create The Internet of Your Things example of a real system - Laurent Ellerbach
 
Serverless Single Page Apps with React and Redux at ItCamp 2017
Serverless Single Page Apps with React and Redux at ItCamp 2017Serverless Single Page Apps with React and Redux at ItCamp 2017
Serverless Single Page Apps with React and Redux at ItCamp 2017
 
The Fine Art of Time Travelling - Implementing Event Sourcing - Andrea Saltar...
The Fine Art of Time Travelling - Implementing Event Sourcing - Andrea Saltar...The Fine Art of Time Travelling - Implementing Event Sourcing - Andrea Saltar...
The Fine Art of Time Travelling - Implementing Event Sourcing - Andrea Saltar...
 
NetDevOps Development Environments
NetDevOps Development EnvironmentsNetDevOps Development Environments
NetDevOps Development Environments
 
API 102: Programming with Meraki APIs
API 102: Programming with Meraki APIsAPI 102: Programming with Meraki APIs
API 102: Programming with Meraki APIs
 
CDK - The next big thing - Quang Phuong
CDK - The next big thing - Quang PhuongCDK - The next big thing - Quang Phuong
CDK - The next big thing - Quang Phuong
 
Flogo - A Golang-powered Open Source IoT Integration Framework (Gophercon)
Flogo - A Golang-powered Open Source IoT Integration Framework (Gophercon)Flogo - A Golang-powered Open Source IoT Integration Framework (Gophercon)
Flogo - A Golang-powered Open Source IoT Integration Framework (Gophercon)
 
Learn To Think Like A Computer Scientist
Learn To Think Like A Computer ScientistLearn To Think Like A Computer Scientist
Learn To Think Like A Computer Scientist
 
Microservices and containers networking: Contiv, an industry leading open sou...
Microservices and containers networking: Contiv, an industry leading open sou...Microservices and containers networking: Contiv, an industry leading open sou...
Microservices and containers networking: Contiv, an industry leading open sou...
 
TIBCO BWCE and Netflix' Hystrix Circuit Breaker for Cloud Native Middleware M...
TIBCO BWCE and Netflix' Hystrix Circuit Breaker for Cloud Native Middleware M...TIBCO BWCE and Netflix' Hystrix Circuit Breaker for Cloud Native Middleware M...
TIBCO BWCE and Netflix' Hystrix Circuit Breaker for Cloud Native Middleware M...
 
[muCon2017]DevSecOps: How to Continuously Integrate Security into DevOps
[muCon2017]DevSecOps: How to Continuously Integrate Security into DevOps[muCon2017]DevSecOps: How to Continuously Integrate Security into DevOps
[muCon2017]DevSecOps: How to Continuously Integrate Security into DevOps
 
8.cncf en
8.cncf  en8.cncf  en
8.cncf en
 

Destacado

Storage Spaces Direct - the new Microsoft SDS star - Carsten Rachfahl
Storage Spaces Direct - the new Microsoft SDS star - Carsten RachfahlStorage Spaces Direct - the new Microsoft SDS star - Carsten Rachfahl
Storage Spaces Direct - the new Microsoft SDS star - Carsten RachfahlITCamp
 
7 Habits of Highly Paid Developers - Gaines Kergosien
7 Habits of Highly Paid Developers - Gaines Kergosien7 Habits of Highly Paid Developers - Gaines Kergosien
7 Habits of Highly Paid Developers - Gaines KergosienITCamp
 
ITCamp 2017 - Ciprian Sorlea - Fostering Heroes
ITCamp 2017 - Ciprian Sorlea - Fostering HeroesITCamp 2017 - Ciprian Sorlea - Fostering Heroes
ITCamp 2017 - Ciprian Sorlea - Fostering HeroesITCamp
 
How to Start-up a Start-up - Mihail Rotenberg
 How to Start-up a Start-up - Mihail Rotenberg How to Start-up a Start-up - Mihail Rotenberg
How to Start-up a Start-up - Mihail RotenbergITCamp
 
The Microsoft Cloud and Server Strategy - Ben Armstrong
The Microsoft Cloud and Server Strategy - Ben ArmstrongThe Microsoft Cloud and Server Strategy - Ben Armstrong
The Microsoft Cloud and Server Strategy - Ben ArmstrongITCamp
 
Strategies for securing your banks & enterprises (from someone who robs bank...
 Strategies for securing your banks & enterprises (from someone who robs bank... Strategies for securing your banks & enterprises (from someone who robs bank...
Strategies for securing your banks & enterprises (from someone who robs bank...ITCamp
 
Assembly of Japanese bicycle requires peace of mind - Peter Leeson
 Assembly of Japanese bicycle requires peace of mind - Peter Leeson Assembly of Japanese bicycle requires peace of mind - Peter Leeson
Assembly of Japanese bicycle requires peace of mind - Peter LeesonITCamp
 
BUILD with Microsoft - Radu Stefan
 BUILD with Microsoft - Radu Stefan BUILD with Microsoft - Radu Stefan
BUILD with Microsoft - Radu StefanITCamp
 
Scaling face recognition with big data - Bogdan Bocse
 Scaling face recognition with big data - Bogdan Bocse Scaling face recognition with big data - Bogdan Bocse
Scaling face recognition with big data - Bogdan BocseITCamp
 
Forget Process, Focus on People - Peter Leeson
Forget Process, Focus on People - Peter LeesonForget Process, Focus on People - Peter Leeson
Forget Process, Focus on People - Peter LeesonITCamp
 
The Secret of Engaging Presentations - Boris Hristov
The Secret of Engaging Presentations - Boris HristovThe Secret of Engaging Presentations - Boris Hristov
The Secret of Engaging Presentations - Boris HristovITCamp
 
The Vision of Computer Vision: The bold promise of teaching computers to unde...
The Vision of Computer Vision: The bold promise of teaching computers to unde...The Vision of Computer Vision: The bold promise of teaching computers to unde...
The Vision of Computer Vision: The bold promise of teaching computers to unde...ITCamp
 
The fight for surviving in the IoT world - Radu Vunvulea
The fight for surviving in the IoT world - Radu VunvuleaThe fight for surviving in the IoT world - Radu Vunvulea
The fight for surviving in the IoT world - Radu VunvuleaITCamp
 
Big Data Solutions in Azure - David Giard
Big Data Solutions in Azure - David GiardBig Data Solutions in Azure - David Giard
Big Data Solutions in Azure - David GiardITCamp
 
Columnstore indexes - best practices for the ETL process - Damian Widera
Columnstore indexes - best practices for the ETL process - Damian WideraColumnstore indexes - best practices for the ETL process - Damian Widera
Columnstore indexes - best practices for the ETL process - Damian WideraITCamp
 
Migrating to Continuous Delivery with TFS 2017 - Liviu Mandras-Iura
 Migrating to Continuous Delivery with TFS 2017 - Liviu Mandras-Iura Migrating to Continuous Delivery with TFS 2017 - Liviu Mandras-Iura
Migrating to Continuous Delivery with TFS 2017 - Liviu Mandras-IuraITCamp
 

Destacado (16)

Storage Spaces Direct - the new Microsoft SDS star - Carsten Rachfahl
Storage Spaces Direct - the new Microsoft SDS star - Carsten RachfahlStorage Spaces Direct - the new Microsoft SDS star - Carsten Rachfahl
Storage Spaces Direct - the new Microsoft SDS star - Carsten Rachfahl
 
7 Habits of Highly Paid Developers - Gaines Kergosien
7 Habits of Highly Paid Developers - Gaines Kergosien7 Habits of Highly Paid Developers - Gaines Kergosien
7 Habits of Highly Paid Developers - Gaines Kergosien
 
ITCamp 2017 - Ciprian Sorlea - Fostering Heroes
ITCamp 2017 - Ciprian Sorlea - Fostering HeroesITCamp 2017 - Ciprian Sorlea - Fostering Heroes
ITCamp 2017 - Ciprian Sorlea - Fostering Heroes
 
How to Start-up a Start-up - Mihail Rotenberg
 How to Start-up a Start-up - Mihail Rotenberg How to Start-up a Start-up - Mihail Rotenberg
How to Start-up a Start-up - Mihail Rotenberg
 
The Microsoft Cloud and Server Strategy - Ben Armstrong
The Microsoft Cloud and Server Strategy - Ben ArmstrongThe Microsoft Cloud and Server Strategy - Ben Armstrong
The Microsoft Cloud and Server Strategy - Ben Armstrong
 
Strategies for securing your banks & enterprises (from someone who robs bank...
 Strategies for securing your banks & enterprises (from someone who robs bank... Strategies for securing your banks & enterprises (from someone who robs bank...
Strategies for securing your banks & enterprises (from someone who robs bank...
 
Assembly of Japanese bicycle requires peace of mind - Peter Leeson
 Assembly of Japanese bicycle requires peace of mind - Peter Leeson Assembly of Japanese bicycle requires peace of mind - Peter Leeson
Assembly of Japanese bicycle requires peace of mind - Peter Leeson
 
BUILD with Microsoft - Radu Stefan
 BUILD with Microsoft - Radu Stefan BUILD with Microsoft - Radu Stefan
BUILD with Microsoft - Radu Stefan
 
Scaling face recognition with big data - Bogdan Bocse
 Scaling face recognition with big data - Bogdan Bocse Scaling face recognition with big data - Bogdan Bocse
Scaling face recognition with big data - Bogdan Bocse
 
Forget Process, Focus on People - Peter Leeson
Forget Process, Focus on People - Peter LeesonForget Process, Focus on People - Peter Leeson
Forget Process, Focus on People - Peter Leeson
 
The Secret of Engaging Presentations - Boris Hristov
The Secret of Engaging Presentations - Boris HristovThe Secret of Engaging Presentations - Boris Hristov
The Secret of Engaging Presentations - Boris Hristov
 
The Vision of Computer Vision: The bold promise of teaching computers to unde...
The Vision of Computer Vision: The bold promise of teaching computers to unde...The Vision of Computer Vision: The bold promise of teaching computers to unde...
The Vision of Computer Vision: The bold promise of teaching computers to unde...
 
The fight for surviving in the IoT world - Radu Vunvulea
The fight for surviving in the IoT world - Radu VunvuleaThe fight for surviving in the IoT world - Radu Vunvulea
The fight for surviving in the IoT world - Radu Vunvulea
 
Big Data Solutions in Azure - David Giard
Big Data Solutions in Azure - David GiardBig Data Solutions in Azure - David Giard
Big Data Solutions in Azure - David Giard
 
Columnstore indexes - best practices for the ETL process - Damian Widera
Columnstore indexes - best practices for the ETL process - Damian WideraColumnstore indexes - best practices for the ETL process - Damian Widera
Columnstore indexes - best practices for the ETL process - Damian Widera
 
Migrating to Continuous Delivery with TFS 2017 - Liviu Mandras-Iura
 Migrating to Continuous Delivery with TFS 2017 - Liviu Mandras-Iura Migrating to Continuous Delivery with TFS 2017 - Liviu Mandras-Iura
Migrating to Continuous Delivery with TFS 2017 - Liviu Mandras-Iura
 

Similar a Provisioning Windows instances at scale on Azure, AWS and OpenStack - Adrian Vladu

Nano Server - the future of Windows Server - Thomas Maurer
Nano Server - the future of Windows Server - Thomas MaurerNano Server - the future of Windows Server - Thomas Maurer
Nano Server - the future of Windows Server - Thomas MaurerITCamp
 
Deep Dive into the Microsoft OpenStack CI Infrastructure (Alessandro Pilotti)
Deep Dive into the Microsoft OpenStack CI Infrastructure (Alessandro Pilotti)Deep Dive into the Microsoft OpenStack CI Infrastructure (Alessandro Pilotti)
Deep Dive into the Microsoft OpenStack CI Infrastructure (Alessandro Pilotti)ITCamp
 
The fight for surviving in the IoT world
The fight for surviving in the IoT worldThe fight for surviving in the IoT world
The fight for surviving in the IoT worldRadu Vunvulea
 
One Azure Monitor to Rule Them All? - Marius Zaharia
One Azure Monitor to Rule Them All? - Marius ZahariaOne Azure Monitor to Rule Them All? - Marius Zaharia
One Azure Monitor to Rule Them All? - Marius ZahariaITCamp
 
One Azure Monitor to Rule Them All? (IT Camp 2017, Cluj, RO)
One Azure Monitor to Rule Them All? (IT Camp 2017, Cluj, RO)One Azure Monitor to Rule Them All? (IT Camp 2017, Cluj, RO)
One Azure Monitor to Rule Them All? (IT Camp 2017, Cluj, RO)Marius Zaharia
 
IBM Think Session 8598 Domino and JavaScript Development MasterClass
IBM Think Session 8598 Domino and JavaScript Development MasterClassIBM Think Session 8598 Domino and JavaScript Development MasterClass
IBM Think Session 8598 Domino and JavaScript Development MasterClassPaul Withers
 
Netflix oss season 2 episode 1 - meetup Lightning talks
Netflix oss   season 2 episode 1 - meetup Lightning talksNetflix oss   season 2 episode 1 - meetup Lightning talks
Netflix oss season 2 episode 1 - meetup Lightning talksRuslan Meshenberg
 
Puppet Camp Boston 2014: Keynote
Puppet Camp Boston 2014: Keynote Puppet Camp Boston 2014: Keynote
Puppet Camp Boston 2014: Keynote Puppet
 
Kubernetes deployment on bare metal with container linux
Kubernetes deployment on bare metal with container linuxKubernetes deployment on bare metal with container linux
Kubernetes deployment on bare metal with container linuxmacchiang
 
2013 09-02 senzations-bimschas-part4-setting-up-your-own-testbed
2013 09-02 senzations-bimschas-part4-setting-up-your-own-testbed2013 09-02 senzations-bimschas-part4-setting-up-your-own-testbed
2013 09-02 senzations-bimschas-part4-setting-up-your-own-testbedDaniel Bimschas
 
ITCamp 2013 - Tudor Damian - Running Linux on Microsoft Private and Public Cl...
ITCamp 2013 - Tudor Damian - Running Linux on Microsoft Private and Public Cl...ITCamp 2013 - Tudor Damian - Running Linux on Microsoft Private and Public Cl...
ITCamp 2013 - Tudor Damian - Running Linux on Microsoft Private and Public Cl...ITCamp
 
Autoscaling OpenStack Natively with Heat, Ceilometer and LBaaS
Autoscaling OpenStack Natively with Heat, Ceilometer and LBaaSAutoscaling OpenStack Natively with Heat, Ceilometer and LBaaS
Autoscaling OpenStack Natively with Heat, Ceilometer and LBaaSShixiong Shang
 
Hacking IoT with EXPLIoT Framework
Hacking IoT with EXPLIoT FrameworkHacking IoT with EXPLIoT Framework
Hacking IoT with EXPLIoT FrameworkPriyanka Aash
 
Exploring the Final Frontier of Data Center Orchestration: Network Elements -...
Exploring the Final Frontier of Data Center Orchestration: Network Elements -...Exploring the Final Frontier of Data Center Orchestration: Network Elements -...
Exploring the Final Frontier of Data Center Orchestration: Network Elements -...Puppet
 
Azure enterprise integration platform
Azure enterprise integration platformAzure enterprise integration platform
Azure enterprise integration platformMichael Stephenson
 
RTP NPUG: Ansible Intro and Integration with ACI
RTP NPUG: Ansible Intro and Integration with ACIRTP NPUG: Ansible Intro and Integration with ACI
RTP NPUG: Ansible Intro and Integration with ACIJoel W. King
 
Cloudbursting VDI Scenarios (Tiberiu Radu)
Cloudbursting VDI Scenarios (Tiberiu Radu)Cloudbursting VDI Scenarios (Tiberiu Radu)
Cloudbursting VDI Scenarios (Tiberiu Radu)ITCamp
 
Visual Studio for IoT Solutions
Visual Studio for IoT SolutionsVisual Studio for IoT Solutions
Visual Studio for IoT SolutionsAlessio Biasiutti
 
Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018
Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018
Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018Mandi Walls
 
Modern Web-site Development Pipeline
Modern Web-site Development PipelineModern Web-site Development Pipeline
Modern Web-site Development PipelineGlobalLogic Ukraine
 

Similar a Provisioning Windows instances at scale on Azure, AWS and OpenStack - Adrian Vladu (20)

Nano Server - the future of Windows Server - Thomas Maurer
Nano Server - the future of Windows Server - Thomas MaurerNano Server - the future of Windows Server - Thomas Maurer
Nano Server - the future of Windows Server - Thomas Maurer
 
Deep Dive into the Microsoft OpenStack CI Infrastructure (Alessandro Pilotti)
Deep Dive into the Microsoft OpenStack CI Infrastructure (Alessandro Pilotti)Deep Dive into the Microsoft OpenStack CI Infrastructure (Alessandro Pilotti)
Deep Dive into the Microsoft OpenStack CI Infrastructure (Alessandro Pilotti)
 
The fight for surviving in the IoT world
The fight for surviving in the IoT worldThe fight for surviving in the IoT world
The fight for surviving in the IoT world
 
One Azure Monitor to Rule Them All? - Marius Zaharia
One Azure Monitor to Rule Them All? - Marius ZahariaOne Azure Monitor to Rule Them All? - Marius Zaharia
One Azure Monitor to Rule Them All? - Marius Zaharia
 
One Azure Monitor to Rule Them All? (IT Camp 2017, Cluj, RO)
One Azure Monitor to Rule Them All? (IT Camp 2017, Cluj, RO)One Azure Monitor to Rule Them All? (IT Camp 2017, Cluj, RO)
One Azure Monitor to Rule Them All? (IT Camp 2017, Cluj, RO)
 
IBM Think Session 8598 Domino and JavaScript Development MasterClass
IBM Think Session 8598 Domino and JavaScript Development MasterClassIBM Think Session 8598 Domino and JavaScript Development MasterClass
IBM Think Session 8598 Domino and JavaScript Development MasterClass
 
Netflix oss season 2 episode 1 - meetup Lightning talks
Netflix oss   season 2 episode 1 - meetup Lightning talksNetflix oss   season 2 episode 1 - meetup Lightning talks
Netflix oss season 2 episode 1 - meetup Lightning talks
 
Puppet Camp Boston 2014: Keynote
Puppet Camp Boston 2014: Keynote Puppet Camp Boston 2014: Keynote
Puppet Camp Boston 2014: Keynote
 
Kubernetes deployment on bare metal with container linux
Kubernetes deployment on bare metal with container linuxKubernetes deployment on bare metal with container linux
Kubernetes deployment on bare metal with container linux
 
2013 09-02 senzations-bimschas-part4-setting-up-your-own-testbed
2013 09-02 senzations-bimschas-part4-setting-up-your-own-testbed2013 09-02 senzations-bimschas-part4-setting-up-your-own-testbed
2013 09-02 senzations-bimschas-part4-setting-up-your-own-testbed
 
ITCamp 2013 - Tudor Damian - Running Linux on Microsoft Private and Public Cl...
ITCamp 2013 - Tudor Damian - Running Linux on Microsoft Private and Public Cl...ITCamp 2013 - Tudor Damian - Running Linux on Microsoft Private and Public Cl...
ITCamp 2013 - Tudor Damian - Running Linux on Microsoft Private and Public Cl...
 
Autoscaling OpenStack Natively with Heat, Ceilometer and LBaaS
Autoscaling OpenStack Natively with Heat, Ceilometer and LBaaSAutoscaling OpenStack Natively with Heat, Ceilometer and LBaaS
Autoscaling OpenStack Natively with Heat, Ceilometer and LBaaS
 
Hacking IoT with EXPLIoT Framework
Hacking IoT with EXPLIoT FrameworkHacking IoT with EXPLIoT Framework
Hacking IoT with EXPLIoT Framework
 
Exploring the Final Frontier of Data Center Orchestration: Network Elements -...
Exploring the Final Frontier of Data Center Orchestration: Network Elements -...Exploring the Final Frontier of Data Center Orchestration: Network Elements -...
Exploring the Final Frontier of Data Center Orchestration: Network Elements -...
 
Azure enterprise integration platform
Azure enterprise integration platformAzure enterprise integration platform
Azure enterprise integration platform
 
RTP NPUG: Ansible Intro and Integration with ACI
RTP NPUG: Ansible Intro and Integration with ACIRTP NPUG: Ansible Intro and Integration with ACI
RTP NPUG: Ansible Intro and Integration with ACI
 
Cloudbursting VDI Scenarios (Tiberiu Radu)
Cloudbursting VDI Scenarios (Tiberiu Radu)Cloudbursting VDI Scenarios (Tiberiu Radu)
Cloudbursting VDI Scenarios (Tiberiu Radu)
 
Visual Studio for IoT Solutions
Visual Studio for IoT SolutionsVisual Studio for IoT Solutions
Visual Studio for IoT Solutions
 
Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018
Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018
Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018
 
Modern Web-site Development Pipeline
Modern Web-site Development PipelineModern Web-site Development Pipeline
Modern Web-site Development Pipeline
 

Más de ITCamp

ITCamp 2019 - Stacey M. Jenkins - Protecting your company's data - By psychol...
ITCamp 2019 - Stacey M. Jenkins - Protecting your company's data - By psychol...ITCamp 2019 - Stacey M. Jenkins - Protecting your company's data - By psychol...
ITCamp 2019 - Stacey M. Jenkins - Protecting your company's data - By psychol...ITCamp
 
ITCamp 2019 - Silviu Niculita - Supercharge your AI efforts with the use of A...
ITCamp 2019 - Silviu Niculita - Supercharge your AI efforts with the use of A...ITCamp 2019 - Silviu Niculita - Supercharge your AI efforts with the use of A...
ITCamp 2019 - Silviu Niculita - Supercharge your AI efforts with the use of A...ITCamp
 
ITCamp 2019 - Peter Leeson - Managing Skills
ITCamp 2019 - Peter Leeson - Managing SkillsITCamp 2019 - Peter Leeson - Managing Skills
ITCamp 2019 - Peter Leeson - Managing SkillsITCamp
 
ITCamp 2019 - Mihai Tataran - Governing your Cloud Resources
ITCamp 2019 - Mihai Tataran - Governing your Cloud ResourcesITCamp 2019 - Mihai Tataran - Governing your Cloud Resources
ITCamp 2019 - Mihai Tataran - Governing your Cloud ResourcesITCamp
 
ITCamp 2019 - Ivana Milicic - Color - The Shadow Ruler of UX
ITCamp 2019 - Ivana Milicic - Color - The Shadow Ruler of UXITCamp 2019 - Ivana Milicic - Color - The Shadow Ruler of UX
ITCamp 2019 - Ivana Milicic - Color - The Shadow Ruler of UXITCamp
 
ITCamp 2019 - Florin Coros - Implementing Clean Architecture
ITCamp 2019 - Florin Coros - Implementing Clean ArchitectureITCamp 2019 - Florin Coros - Implementing Clean Architecture
ITCamp 2019 - Florin Coros - Implementing Clean ArchitectureITCamp
 
ITCamp 2019 - Florin Loghiade - Azure Kubernetes in Production - Field notes...
ITCamp 2019 - Florin Loghiade -  Azure Kubernetes in Production - Field notes...ITCamp 2019 - Florin Loghiade -  Azure Kubernetes in Production - Field notes...
ITCamp 2019 - Florin Loghiade - Azure Kubernetes in Production - Field notes...ITCamp
 
ITCamp 2019 - Florin Flestea - How 3rd Level support experience influenced m...
ITCamp 2019 - Florin Flestea -  How 3rd Level support experience influenced m...ITCamp 2019 - Florin Flestea -  How 3rd Level support experience influenced m...
ITCamp 2019 - Florin Flestea - How 3rd Level support experience influenced m...ITCamp
 
ITCamp 2019 - Emil Craciun - RoboRestaurant of the future powered by serverle...
ITCamp 2019 - Emil Craciun - RoboRestaurant of the future powered by serverle...ITCamp 2019 - Emil Craciun - RoboRestaurant of the future powered by serverle...
ITCamp 2019 - Emil Craciun - RoboRestaurant of the future powered by serverle...ITCamp
 
ITCamp 2019 - Eldert Grootenboer - Cloud Architecture Recipes for The Enterprise
ITCamp 2019 - Eldert Grootenboer - Cloud Architecture Recipes for The EnterpriseITCamp 2019 - Eldert Grootenboer - Cloud Architecture Recipes for The Enterprise
ITCamp 2019 - Eldert Grootenboer - Cloud Architecture Recipes for The EnterpriseITCamp
 
ITCamp 2019 - Cristiana Fernbach - Blockchain Legal Trends
ITCamp 2019 - Cristiana Fernbach - Blockchain Legal TrendsITCamp 2019 - Cristiana Fernbach - Blockchain Legal Trends
ITCamp 2019 - Cristiana Fernbach - Blockchain Legal TrendsITCamp
 
ITCamp 2019 - Andy Cross - Machine Learning with ML.NET and Azure Data Lake
ITCamp 2019 - Andy Cross - Machine Learning with ML.NET and Azure Data LakeITCamp 2019 - Andy Cross - Machine Learning with ML.NET and Azure Data Lake
ITCamp 2019 - Andy Cross - Machine Learning with ML.NET and Azure Data LakeITCamp
 
ITCamp 2019 - Andy Cross - Business Outcomes from AI
ITCamp 2019 - Andy Cross - Business Outcomes from AIITCamp 2019 - Andy Cross - Business Outcomes from AI
ITCamp 2019 - Andy Cross - Business Outcomes from AIITCamp
 
ITCamp 2019 - Andrea Saltarello - Modernise your app. The Cloud Story
ITCamp 2019 - Andrea Saltarello - Modernise your app. The Cloud StoryITCamp 2019 - Andrea Saltarello - Modernise your app. The Cloud Story
ITCamp 2019 - Andrea Saltarello - Modernise your app. The Cloud StoryITCamp
 
ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...
ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...
ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...ITCamp
 
ITCamp 2019 - Alex Mang - I'm Confused Should I Orchestrate my Containers on ...
ITCamp 2019 - Alex Mang - I'm Confused Should I Orchestrate my Containers on ...ITCamp 2019 - Alex Mang - I'm Confused Should I Orchestrate my Containers on ...
ITCamp 2019 - Alex Mang - I'm Confused Should I Orchestrate my Containers on ...ITCamp
 
ITCamp 2019 - Alex Mang - How Far Can Serverless Actually Go Now
ITCamp 2019 - Alex Mang - How Far Can Serverless Actually Go NowITCamp 2019 - Alex Mang - How Far Can Serverless Actually Go Now
ITCamp 2019 - Alex Mang - How Far Can Serverless Actually Go NowITCamp
 
ITCamp 2019 - Peter Leeson - Vitruvian Quality
ITCamp 2019 - Peter Leeson - Vitruvian QualityITCamp 2019 - Peter Leeson - Vitruvian Quality
ITCamp 2019 - Peter Leeson - Vitruvian QualityITCamp
 
ITCamp 2018 - Ciprian Sorlea - Million Dollars Hello World Application
ITCamp 2018 - Ciprian Sorlea - Million Dollars Hello World ApplicationITCamp 2018 - Ciprian Sorlea - Million Dollars Hello World Application
ITCamp 2018 - Ciprian Sorlea - Million Dollars Hello World ApplicationITCamp
 
ITCamp 2018 - Ciprian Sorlea - Enterprise Architectures with TypeScript And F...
ITCamp 2018 - Ciprian Sorlea - Enterprise Architectures with TypeScript And F...ITCamp 2018 - Ciprian Sorlea - Enterprise Architectures with TypeScript And F...
ITCamp 2018 - Ciprian Sorlea - Enterprise Architectures with TypeScript And F...ITCamp
 

Más de ITCamp (20)

ITCamp 2019 - Stacey M. Jenkins - Protecting your company's data - By psychol...
ITCamp 2019 - Stacey M. Jenkins - Protecting your company's data - By psychol...ITCamp 2019 - Stacey M. Jenkins - Protecting your company's data - By psychol...
ITCamp 2019 - Stacey M. Jenkins - Protecting your company's data - By psychol...
 
ITCamp 2019 - Silviu Niculita - Supercharge your AI efforts with the use of A...
ITCamp 2019 - Silviu Niculita - Supercharge your AI efforts with the use of A...ITCamp 2019 - Silviu Niculita - Supercharge your AI efforts with the use of A...
ITCamp 2019 - Silviu Niculita - Supercharge your AI efforts with the use of A...
 
ITCamp 2019 - Peter Leeson - Managing Skills
ITCamp 2019 - Peter Leeson - Managing SkillsITCamp 2019 - Peter Leeson - Managing Skills
ITCamp 2019 - Peter Leeson - Managing Skills
 
ITCamp 2019 - Mihai Tataran - Governing your Cloud Resources
ITCamp 2019 - Mihai Tataran - Governing your Cloud ResourcesITCamp 2019 - Mihai Tataran - Governing your Cloud Resources
ITCamp 2019 - Mihai Tataran - Governing your Cloud Resources
 
ITCamp 2019 - Ivana Milicic - Color - The Shadow Ruler of UX
ITCamp 2019 - Ivana Milicic - Color - The Shadow Ruler of UXITCamp 2019 - Ivana Milicic - Color - The Shadow Ruler of UX
ITCamp 2019 - Ivana Milicic - Color - The Shadow Ruler of UX
 
ITCamp 2019 - Florin Coros - Implementing Clean Architecture
ITCamp 2019 - Florin Coros - Implementing Clean ArchitectureITCamp 2019 - Florin Coros - Implementing Clean Architecture
ITCamp 2019 - Florin Coros - Implementing Clean Architecture
 
ITCamp 2019 - Florin Loghiade - Azure Kubernetes in Production - Field notes...
ITCamp 2019 - Florin Loghiade -  Azure Kubernetes in Production - Field notes...ITCamp 2019 - Florin Loghiade -  Azure Kubernetes in Production - Field notes...
ITCamp 2019 - Florin Loghiade - Azure Kubernetes in Production - Field notes...
 
ITCamp 2019 - Florin Flestea - How 3rd Level support experience influenced m...
ITCamp 2019 - Florin Flestea -  How 3rd Level support experience influenced m...ITCamp 2019 - Florin Flestea -  How 3rd Level support experience influenced m...
ITCamp 2019 - Florin Flestea - How 3rd Level support experience influenced m...
 
ITCamp 2019 - Emil Craciun - RoboRestaurant of the future powered by serverle...
ITCamp 2019 - Emil Craciun - RoboRestaurant of the future powered by serverle...ITCamp 2019 - Emil Craciun - RoboRestaurant of the future powered by serverle...
ITCamp 2019 - Emil Craciun - RoboRestaurant of the future powered by serverle...
 
ITCamp 2019 - Eldert Grootenboer - Cloud Architecture Recipes for The Enterprise
ITCamp 2019 - Eldert Grootenboer - Cloud Architecture Recipes for The EnterpriseITCamp 2019 - Eldert Grootenboer - Cloud Architecture Recipes for The Enterprise
ITCamp 2019 - Eldert Grootenboer - Cloud Architecture Recipes for The Enterprise
 
ITCamp 2019 - Cristiana Fernbach - Blockchain Legal Trends
ITCamp 2019 - Cristiana Fernbach - Blockchain Legal TrendsITCamp 2019 - Cristiana Fernbach - Blockchain Legal Trends
ITCamp 2019 - Cristiana Fernbach - Blockchain Legal Trends
 
ITCamp 2019 - Andy Cross - Machine Learning with ML.NET and Azure Data Lake
ITCamp 2019 - Andy Cross - Machine Learning with ML.NET and Azure Data LakeITCamp 2019 - Andy Cross - Machine Learning with ML.NET and Azure Data Lake
ITCamp 2019 - Andy Cross - Machine Learning with ML.NET and Azure Data Lake
 
ITCamp 2019 - Andy Cross - Business Outcomes from AI
ITCamp 2019 - Andy Cross - Business Outcomes from AIITCamp 2019 - Andy Cross - Business Outcomes from AI
ITCamp 2019 - Andy Cross - Business Outcomes from AI
 
ITCamp 2019 - Andrea Saltarello - Modernise your app. The Cloud Story
ITCamp 2019 - Andrea Saltarello - Modernise your app. The Cloud StoryITCamp 2019 - Andrea Saltarello - Modernise your app. The Cloud Story
ITCamp 2019 - Andrea Saltarello - Modernise your app. The Cloud Story
 
ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...
ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...
ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...
 
ITCamp 2019 - Alex Mang - I'm Confused Should I Orchestrate my Containers on ...
ITCamp 2019 - Alex Mang - I'm Confused Should I Orchestrate my Containers on ...ITCamp 2019 - Alex Mang - I'm Confused Should I Orchestrate my Containers on ...
ITCamp 2019 - Alex Mang - I'm Confused Should I Orchestrate my Containers on ...
 
ITCamp 2019 - Alex Mang - How Far Can Serverless Actually Go Now
ITCamp 2019 - Alex Mang - How Far Can Serverless Actually Go NowITCamp 2019 - Alex Mang - How Far Can Serverless Actually Go Now
ITCamp 2019 - Alex Mang - How Far Can Serverless Actually Go Now
 
ITCamp 2019 - Peter Leeson - Vitruvian Quality
ITCamp 2019 - Peter Leeson - Vitruvian QualityITCamp 2019 - Peter Leeson - Vitruvian Quality
ITCamp 2019 - Peter Leeson - Vitruvian Quality
 
ITCamp 2018 - Ciprian Sorlea - Million Dollars Hello World Application
ITCamp 2018 - Ciprian Sorlea - Million Dollars Hello World ApplicationITCamp 2018 - Ciprian Sorlea - Million Dollars Hello World Application
ITCamp 2018 - Ciprian Sorlea - Million Dollars Hello World Application
 
ITCamp 2018 - Ciprian Sorlea - Enterprise Architectures with TypeScript And F...
ITCamp 2018 - Ciprian Sorlea - Enterprise Architectures with TypeScript And F...ITCamp 2018 - Ciprian Sorlea - Enterprise Architectures with TypeScript And F...
ITCamp 2018 - Ciprian Sorlea - Enterprise Architectures with TypeScript And F...
 

Último

Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????blackmambaettijean
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 

Último (20)

Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 

Provisioning Windows instances at scale on Azure, AWS and OpenStack - Adrian Vladu

  • 1. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals Provisioning Windows instances at scale on Azure, AWS and OpenStack Adrian Vladu Senior Cloud Engineer @ Cloudbase Solutions @ader1990 @cloudbaseit
  • 2. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals Many thanks to our sponsors & partners! GOLD SILVER PARTNERS PLATINUM POWERED BY
  • 3. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals • 5+ years of experience • Developer at first • Engineer on paper • Problem solver at heart About me
  • 4. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals • Cloudbase-Init and the revolving ecosystem • How to create and test a Windows image • Live Demo: Spawn a Windows VM using Cloudbase- Init on Azure • Ask.me Takeaways
  • 5. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals • Provisioning agent for cloud (automation) ready instances • cloud-init like • Multi-cloud • Multi-platform • Full Windows support • Cloud-init v2 Cloudbase-Init – what is it?
  • 6. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals • Mature project, ~ 5 years old now • De-facto standard provisioning agent on OpenStack for Windows • ~ 10 millions reported executions Cloudbase-Init – stats
  • 7. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals • 100% written in Python (v2.7, v3.4) • Open source (Apache 2 License) project under OpenStack umbrella – https://github.com/openstack/cloudbase-init – https://bugs.launchpad.net/cloudbase-init – https://review.openstack.org/#/c/427611/ – https://cloudbase-init.readthedocs.io/en/latest/ • Supports Windows + *nix forks – https://github.com/pellaeon/bsd-cloudinit • MSI installer/zip archive for x86/x64 with Stable/Nightly Builds – https://cloudbase.it/downloads/CloudbaseInitSetup_Stable_x64.msi – https://cloudbase.it/downloads/CloudbaseInitSetup_x86.msi – https://cloudbase.it/downloads/CloudbaseInitSetup_x86.zip Cloudbase-Init
  • 8. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals • Install it via msi – fully automated • Install it using a zip with the Python env + Cloudbase-Init package • Only as a Python process • As a Python process managed by a Windows service Cloudbase-Init (Windows) – how do I install/run it?
  • 9. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals • Unattend step (Unattend.xml) – During sysprep specialize step as a Python process • First run – At first boot the service is started by SetupComplete.cmd – At every other boot as a Python process managed by a Windows service set on “Automated start” • Windows Nano Server – At first boot the service is created and started by SetupComplete.cmd – The zip is used in this case Cloudbase-Init (Windows) – when does it run?
  • 10. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals • All Windows versions currently supported by Microsoft • Windows 2K8/2K8R2 and Vista/7 x86/x64 • Windows 2K12/2K12R2/Hyper-V and 8/8.1 x86/x64 • Windows 2K16/Hyper-V and 10 x86/x64 • Windows PE • Windows Nano Server Cloudbase-Init (Windows) – supported versions
  • 11. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals • Execute non-metadata dependent plugins • Load the first available metadata service • Execute (non)metadata dependent plugins • Communicate to the metadata service the instance status Cloudbase-Init – what does it do?
  • 12. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals • Uses WMI • Uses Win32 APIs directly • Wraps exe’s • Uses PyMI –https://github.com/cloudbase/PyMI Cloudbase-Init – what actually does it do?
  • 13. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals • OpenStack (http or configdrive) • EC2 (http or configdrive) • MAAS (http) • OpenNebula (http) • CloudStack (http) • Azure (http+configdrive+kvp) • Packet (http) • NoCloud (configdrive) • DigitalOcean (http) Cloudbase-Init – supported metadata services
  • 14. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals • Create user • Set user password and post it to the metadata service (if supported) • Set SSH public keys • Execute local scripts • Execute user data • Execute vendor data Cloudbase-Init – features (1)
  • 15. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals • Set hostname / FQDN • Create ephemeral disk notice • Enable / Disable TRIM • Set MTU • Set NTP server Cloudbase-Init – features (2)
  • 16. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals • Activate Windows • Set page file • Extend volumes • Configure automatic updates • Configure WINRM listener • Configure WINRM certificate authentication • Configure SAN policy • Configure BCD boot status policy Cloudbase-Init (Windows) – features (3)
  • 17. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals • Set unique boot disk id • Import certificates from the metadata • Set display idle timeout • Communicate RDP certificate thumbprint to the metadata • Install platform agents Cloudbase-Init (Windows) – features (4)
  • 18. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals • Configure networking – Debian-like metadata OpenStack – OpenStack JSON – MAAS – OpenNebula – Packet • Functionality – Rename / disable adapter – MTU – Set IPV4 IP/netmask/gateway/DNS – Set IPV6 IP/netmask/gateway – Set IPV6 DNS – Create NET_LBFO (TBM) / vendor dependent / OVS bonds – Create VLAN adapters Cloudbase-Init (Windows) – features (5)
  • 19. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals • Communicate the status of the instance to the metadata –Via call-home URL –Via KVP in Hyper-V • Log to serial port Cloudbase-Init – features (5)
  • 20. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals • Service can run as LocalSystem or as a dedicated user • By default, as a dedicated admin user • Use LocalSystem if you don’t need impersonation scripts • Pass the hash attacks avoided by resetting service user password at every service run Cloudbase-Init – security concerns
  • 21. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals • Like any other OpenStack project • Feature / bug management –https://launchpad.net/cloudbase-init • Using git and git-review • Enters the review system –Unit tests need to pass –Argus CI needs to +1 –Two core reviewers need to +2 –The code is merged into the github repo Cloudbase-Init – how do I contribute?
  • 22. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals ARGUS Continuous Integration Framework for Cloudbase-Init
  • 23. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals • Continuous integration framework for Cloudbase-Init • 100% Python • OpenStack Tempest based (open source Apache 2 license) • https://github.com/cloudbase/cloudbase-init-ci • http://argus-ci.readthedocs.io/en/latest/ • Backends – Tempest OpenStack – Heat OpenStack – Azure – Local Argus – what is it?
  • 24. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals • From a functionality perspective, it can be used to test other Windows applications • Has WinRM (pywinrm) scp like feature • Terminology –Backend –Recipe –Test –Scenario Argus
  • 25. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals • Create the Windows image –Create a Windows image with all updates –Install git client –Add an administrative user –Enable HTTP WinRM –Sysprep • Add image to the backend Argus workflow – Preparation
  • 26. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals • Start an instance on backend • Install & configure Cloudbase-Init with the given git head • Sysprep & reboot • Check if Cloudbase-Init executed correctly Argus workflow – Execution
  • 27. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals • All currently supported by MSFT • Can also test production images Argus – Windows support
  • 28. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals • Big thanks to Microsoft • “Small” size OpenStack Mitaka deployment • Runs at every patch change • Huge increase in productivity after all the integration testing complexity has been passed to the CI • Argus is built to be a general purpose application testing framework on multiple backends Argus – running it
  • 29. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals AZURE DEMO TIME Start a Windows instance with Cloudbase-Init on Azure
  • 30. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals ARESTOR HTTP Metadata Service for Argus
  • 31. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals • Create and control http metadata for an instance • Otherwise we need access to complex/heterogeneous/expensive environments • Easier to have only one powerful backend • https://github.com/cloudbase/arestor (Apache 2) • Support for all the http supported metadata services –OpenStack – CloudStack, MAAS, Packet Arestor – what is it?
  • 32. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals • Argus controls what Arestor exposes at a given endpoint through a Python client • Encrypted interaction Argus->Arestor with key/secret • Arestor has: –Management (admin) endpoint –Client (instance) endpoint (S) • Arestor implements GET/POST endpoints Argus integration with Arestor
  • 33. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals WINDOWS IMAGING TOOLS PowerShell tools to create a Windows image
  • 34. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals • Tools to create a Windows image (Apache 2 License) – https://github.com/cloudbase/windows-openstack-imaging-tools – https://github.com/cloudbase/cloudbase-init-offline-install • Supported hypervisors/platforms for the generated images: – KVM – Baremetal – Hyper-V – MAAS • Supported hypervisors to generate images: – KVM (legacy version 1.0.0) – Hyper-V • Supported Windows image versions: All supported by MSFT Windows Imaging Tools – what is it?
  • 35. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals • Install VirtIO and other drivers • Install additional features • Apply updates • Clean updates (shrinks considerably the image 20GB->15GB) + defragment • Install Cloudbase-Init • Sysprep • Wallpaper :D • Gold image (experimental) • Config file based generation (experimental) • Use qemu-img.exe to convert to qcow2/raw Windows Imaging Tools – what does it do?
  • 36. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals • Trial Windows Server 2012R2 images for KVM and Hyper-V available –https://cloudbase.it/windows-cloud-images/ • Zero to hero imaging tools script –https://github.com/cloudbase/windows-openstack- imaging-tools/blob/master/Examples/create-windows- online-cloud-image.ps1 Windows Imaging Tools – fast lane
  • 37. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals • Windows Imaging Tools bundles Cloudbase-Init • Cloudbase-Init is tested with Argus • The images generated by imaging tools are tested with Argus • Arestor provides to Argus the flexibility to test Cloudbase-Init and the images with various metadata formats and implementations • Hard tested by Argus and users The big fit
  • 38. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals AZURE LIVE DEMO RESULTS
  • 39. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals TIME FOR QUESTIONS
  • 40. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals THANK YOU!
  • 41. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals Wait, there’s more
  • 42. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals Running Windows in the wild
  • 43. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals • On Hyper-V – reboot (report) it now • On KVM – VirtIO drivers need to be installed – https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/ – Set cpu_mode=host-passthrough & libvirt_type=kvm in nova.conf compute node and create another VM on OpenStack. • On Baremetal – Make sure you have the required drivers for the storage/network adapters • On VMware – No nested hyper-v? Set guestOS = "winhyperv“ in the .vmx – Vlans not working? Set netadapter type to e1000e in the .vmx What have I done wrong? Wild BSOD appears
  • 44. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals What have I done wrong? Wild sysprep fail
  • 45. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals • When Cloudbase-init is installed with the MSI on non- Nano server and is set to perform the sysprep: if Cloudbase-init process exits with non-zero code, a reboot is performed (max 10 times). You will get an error saying that “Windows could not start the installation process”. • Documented at https://technet.microsoft.com/en- us/library/cc722061(v=ws.10).aspx • Why? If Cloudbase-init does not run, the instance can be unconfigured/exposed/vulnerable or cannot be accessed via RDP/WinRM. • If you get “Invalid Unattend.xml” What have I done wrong? Wild sysprep fail
  • 46. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals • Press Shift+F10 • A wild cmd will appear • Start PowerShell (optional) – literally run `start powershell` in the cmd • You won’t have WMI – so don’t try Get-WmiObject like commands • Use `notepad.exe` or `cat` to view/edit files • Check C:WindowsPanther* log files • Check C:WindowsPantherUnattendGC* log files • Check Cloudbase-Init log files from – C:Program FilesCloudbase SolutionsCloudbase-InitLogs* What have I done wrong? Wild sysprep fail
  • 47. @ITCAMPRO #ITCAMP17Community Conference for IT Professionals • losetup/kpartx/mount/ntfs-3g on Linux • qemu-img.exe convert to vhd/x and mount vhd on Windows – Replace C:WindowsSystem32sethc.exe with C:WindowsSystem32cmd.exe, reboot and press Shift 5 times and you will have an admin cmd.exe – Use regedit.exe and File->Load Hive- >m:windowssystem32configsystem|software and update the registry keys at will. File->Unload Hive afterwards. – Be a hero and open with notepad.exe the registry file and update the XML (it’s just an XML). You might need to replace LocalSystem with admin user as the owner of that file What have I done wrong? Feeling left out