3. Definitions
• Information technology (IT) infrastructure are the components required to
operate and manage enterprise IT environments.
o Hardware includes servers, datacenters, personal computers, routers, switches, and
other equipment.
o Software refers to the applications used by the business, such as web servers, content
management systems, and the OS—like Linux
o Interconnected network components enable network operations, management, and
communication between internal and external systems.
• Infrastructure as Code (IaC) is the managing and provisioning of
infrastructure through code instead of through manual processes.
• Virtual desktop infrastructure (VDI) is the hosting of virtual desktop
environments on a central server that are delivered to end clients over a
network.
4. Why use Infrastructure as Code (IaC)
• Environments are dynamic.
• Resources are kept running in case they’re
needed.
• Growth requires more work.
• Manual work to deploy is tedious,
requiring multiple steps and potentially
error prone.
• Plethora of tools required.
◦ Azure Portal, OS Command Line Interface, ETX
Server Manager
• Inability to scale up/down to match
business needs.
5.
6. Benefits of Infrastructure as Code (IaC)
• Boost productivity through automation – improves productivity of IT Teams by
automating extensive and complex manual work.
• Consistency in configuration and setup – standardize the setup process to avoid
inconsistencies and subtle differences in configuration that can be difficult to remediate.
• Minimizing risk of human error – reducing the amount of manual management needed
during the deployment process to avoid setbacks and prevent unwanted down time.
• Increased efficiency in software development – maximize efficiency and productivity on
numerous fronts:
◦ deploy cloud architectures in numerous stages to improve the efficiency of the development process –
developers can develop new software while constantly making incremental progress in a controlled
sandbox environment.
◦ QA (Quality Assurance) department can continuously test different iterations of the software at different
stages by always having an updated copy of the production.
◦ minimize the use of extraneous resources – shutting down the resources you don’t need to create a more
scalable environment for the IT department and developers.
Editor's Notes
Introduction
History Talk and Background, where are we coming from and where are we going
Technology Discussion
Infrastructure builds have historically been a manual process. Now with the techniques and tools from the software development practice it's possible to automate the definition, build, test and deployment of complex infrastructure.