Infrastructure Concepts: Difference between revisions
Line 38: | Line 38: | ||
An application runtime is assembled from [[#Infrastructure_Resource|infrastructure resources]]. The runtime instance may include [[#Server|servers]], [[#Cluster|clusters]] and [[#Serverless|serverless execution environments]]. | An application runtime is assembled from [[#Infrastructure_Resource|infrastructure resources]]. The runtime instance may include [[#Server|servers]], [[#Cluster|clusters]] and [[#Serverless|serverless execution environments]]. | ||
=Configuration Drift= | =Configuration Drift= | ||
Configuration drift is variation that happens over time across systems that were once identical. Manually making changes in configuration, even if the base was laid down by automation, causes configuration drift. Selectively using automation on some of the initially identical systems, but not on others, also causes configuration drift. This is how [[Infrastructure_as_Code_Concepts#Snowflake_System|snowflake systems]] come into existence. Also see [[Infrastructure_as_Code_Concepts#Minimize_Variation|Minimize Variation]]. | Configuration drift is variation that happens over time across systems that were once identical. Manually making changes in configuration (performance optimizations, permissions, fixes), even if the base was laid down by automation, causes configuration drift. Selectively using automation on some of the initially identical systems, but not on others, also causes configuration drift. This is how [[Infrastructure_as_Code_Concepts#Snowflake_System|snowflake systems]] come into existence. Also see [[Infrastructure_as_Code_Concepts#Minimize_Variation|Minimize Variation]]. | ||
=Governance= | =Governance= |
Revision as of 06:56, 30 December 2021
External
Internal
Overview
In a cloud environment, infrastructure, as viewed by the user, is no longer represented by hardware, but by virtual constructs like servers, subnets and block devices. The hardware still exists, but infrastructure elements accessible to users "float" across it, can be manipulated by the infrastructure platform APIs and can be created, duplicated, changed and destroyed at will. They are referred to as infrastructure resources. Infrastructure resources can be instantiated, changed and destroyed by infrastructure as code to provide the infrastructure foundation for application runtimes and applications.
Infrastructure Platform
Infrastructure Resources
A cloud infrastructure platform abstracts infrastructure resources (compute, network, storage) from physical hardware. Infrastructure resources are assembled to provide application runtime instances.
Infrastructure Services
Infrastructure Stack
- Stack integration point.
Environment
Cloud
NIST definition: https://www.nist.gov/programs-projects/nist-cloud-computing-program-nccp
Containers
Cluster
Cluster as code.
Server
Serverless Execution Environment
Application
Application Runtime
An application runtime is assembled from infrastructure resources. The runtime instance may include servers, clusters and serverless execution environments.
Configuration Drift
Configuration drift is variation that happens over time across systems that were once identical. Manually making changes in configuration (performance optimizations, permissions, fixes), even if the base was laid down by automation, causes configuration drift. Selectively using automation on some of the initially identical systems, but not on others, also causes configuration drift. This is how snowflake systems come into existence. Also see Minimize Variation.
Governance
Lightweight Architectural Governance
Lightweight architectural governance aims to balance autonomy and centralized control. More in EDGE: Value-Driven Digital Transformation by Jim Robert Highsmith, Linda Luu, David Robinson and the The Goldilocks zone of lightweight architectural governance Jonny LeRoy talk.
Organizatorium
- Integration points