当前位置:网站首页>Infrastructure is code. What are you talking about?
Infrastructure is code. What are you talking about?
2022-06-30 15:06:00 【The way to improve the structure】

In infrastructure as a service (IaaS) Or after cloud computing enters this stage , The software engineering community must determine how to use “ Infrastructure as a service ”(IaaS) 了 .
This blog post discusses some of the most popular methods , It also provides a concise and accurate definition for technical and non-technical stakeholders .

Infrastructure as a service (IaaS) It refers to the ability to acquire and release resources on demand .
Infrastructure is code (IaC) Or infrastructure, i.e. data (IaD) It refers to the method of obtaining and releasing resources on demand .

Infrastructure as a service (IaaS) It refers to the ability to acquire and release resources on demand .
This blog post is based on the minimal model of infrastructure as a service : The term “ Infrastructure as a service ” It refers to the ability of resource users to obtain and release a group of resources from resource providers on demand .
The term “ resources ” Means any component used by the consumer and provided by the provider accordingly , for example , virtual machine 、 Container or load balancer .

Infrastructure is code (IaC) Refers to the acquisition and release of resources Method .
This blog post is based on an infrastructure as a service (IaaS) The infrastructure of the model is the code (IaC) Minimum model of : The term “ Infrastructure is code ” It refers to the configuration method of acquiring and releasing a group of resources on demand .
without doubt , Infrastructure is code (IaC) It is the most famous 、 The most commonly discussed configuration method . However , In this post , We will discuss five different ways to acquire and release resources .

The resource consumer determines the required set of resources , That is, the desired state . This configuration method determines how the desired state is expressed , And how or when to calculate or execute a sequence of commands that convert the current state to the desired state .
for example , Resource users can decide to add three computing resources , You also need a load balancer resource to run their application .

But how can resource users do this ? If resource users encounter any adverse impact caused by the environment ( If computing resources are not available ), So what will happen ?
The imperative resource allocation method means that the resource user does not formally encode the required state , And the command sequence is determined by the resource consumer .
The most remarkable thing is , Imperative methods are not repeatable , therefore , You can't automatically execute , Because the resource consumer must determine the command sequence leading to the desired state for each given current state .
Infrastructure as bills
chart 1.1 Infrastructure is the bill
Infrastructure is the bill (Infrastructure as Tickets) It refers to the method of submitting supporting bills in the bill system supported by enterprises . The resource user submits the description of the required resource as a supporting ticket . Support agents to obtain or release resources on behalf of users , And share connection information and credentials with users .

chart 1.2 Infrastructure is the bill
Infrastructure click

Infrastructure click (Infrastructure as Clicks) It refers to the method of obtaining and releasing resources using the user interface of the resource provider .

chart 2.2 Infrastructure click
Infrastructure is a script

chart 3.1 Infrastructure is a script
Infrastructure is a script (Infrastructure as Scripts) It refers to the method of obtaining and releasing resources using the command line interface of the resource provider .

chart 3.2 Infrastructure is a script
The declarative resource allocation method refers to : The state required for the formal encoding of the resource consumer , And the command sequence is determined by the component .
The most remarkable thing is , Declarative methods are repeatable , So it can be automated , Because the component can determine any command sequence that may lead to the required state of the current state .
Infrastructure is code

chart 4.1 Infrastructure is code
Infrastructure is code (Infrastructure as Code) It refers to the method of using additional components to obtain and release resources . The resource consumer encodes the required state in a component specific format , The component then determines and executes the required sequence of commands . Besides ,“as Code” Indicates that there is a control flow statement .
up to now , The available implementations of this component have tool level quality , When the resource consumer triggers , The tool will execute once —— It can be performed manually or automatically in the context of continuous deployment or continuous delivery pipeline .
Well known examples include Hashicorp Terraform and Pulumi Of Pulumi.

chart 4.2 Infrastructure is code
Infrastructure is data

chart 5.1 Infrastructure is data
Infrastructure is data (Infrastructure as Data) It refers to the method of using additional components to obtain and release resources . The resource consumer encodes the required state in a component specific format , The component then determines and executes the required sequence of commands . Besides ,“as Data” Indicates that there is no control flow statement .
up to now , The available implementations of this component have the quality of continuous execution platform level .
Well known examples include the cloud native Computing Foundation (Cloud Native Computing Foundation,CNCF) Of Kubernetes Platform as well as AWS Of Fargate.

chart 5.2 Infrastructure is data
Infrastructure is code (IaC) The defining characteristic of is that there is a control flow in the coding of the desired state , And infrastructure is data (IaD) The defining property of is that there is no control flow in the encoding of the desired state .
Infrastructure, that is, code, is often associated with detection and mitigation of state drift manually triggered by the resource provider . Similarly , Infrastructure, i.e. data, is usually associated with the continuous detection and mitigation of state drift by components .
However , Reconciliation triggered manually or performed continuously is not a defined characteristic :
Infrastructure, that is, code, is associated with manual triggering for a reason , This comes from the basic setting, that is, the promotion of the code is through the manual trigger tool ( Such as Terraform or Pulumi) To unfold
Infrastructure, i.e. data, is associated with continuous execution , It comes from a platform that can continuously execute infrastructure, that is, code (Kubernetes) The popularity of .
Whether we think of infrastructure as bills 、 Click on 、 Script 、 Code or data , We are all considering the configuration method of infrastructure , That is, how we interact with infrastructure as a service .
welfare : Pay attention to the official account reply key : restructure , Free access to 《 restructure : Improve the design of existing code 》
·················· END ··················
Official account , Free learning materials
Ten years of R & D , Big factory architect ,CSDN Blogger
Focus on architecture technology learning and sharing , Career and cognitive upgrading
Insist on sharing the dry goods of the earth , Looking forward to growing with you

「 The road to the advanced architecture 」 Focus on Architecture Research , Technology sharing
I'm looking at one less bug
This article is from WeChat official account. - The road to the advanced architecture (jiagou_jingjin).
If there is any infringement , Please contact the [email protected] Delete .
Participation of this paper “OSC Source creation plan ”, You are welcome to join us , share .
边栏推荐
- 高精度CNC加工中心为什么会出现误差?这4个原因你要注意!
- Win10 one click Reset win10 to solve all system bugs without deleting any files and Applications
- val_ Loss decreases first and then increases or does not decrease but only increases
- Color classification of sorting
- 2021-07-14 mybaitsplus
- [extensive reading of papers] multi modal sarcasm detection and human classification in code mixed conversations
- day02
- M - smooth engineering continuation (minimum spanning tree)
- Component communication mode
- CCF access control system (Full Score code + problem solving idea) 201412-1
猜你喜欢

Database connection to company database denied

Matlab construction operation example

ES6 notes

Scattered knowledge of C language (unfinished)

CCF string matching (Full Score code + problem solving ideas + skill summary) March 3, 2014

Sum of CCF digits (full mark code + problem solving idea) 201512-1

Shift operator (detailed)
![[matlab] 3D drawing summary](/img/57/05156340ccdd79b866c4df955b3713.jpg)
[matlab] 3D drawing summary

How to get palindrome number in MATLAB (using fliplr function)

Repair of incorrect deletion of win10 boot entry
随机推荐
CCF Z-scan (full mark code + problem solving ideas) 201412-2
HD mechanical principle · classic dynamic drawing of mechanical design
先锋期货安全么?现在期货开户都是哪些流程?期货手续费怎么降低?
L - Jungle roads (minimum spanning tree)
O - ACM contest and blackout (minimum spanning tree, Kruskal)
A. Theatre Square(codefore)
Database connection to company database denied
Imitating freecodecamp to build a programming ability test platform
ES6 notes
Working principle and fault treatment of cutting cylinder in CNC machining center
CCF date calculation (Full Score code + skill summary) February 2, 2015
Matlab calculates the factorial sum of the first n numbers (easy to understand)
1015 reversible primes (20 points)
Matlab judges the number of same purchases
Finding the median of two arrays by dichotomy
文本匹配——【NAACL 2022】GPL
Win10 backup backup shows that creating a shared protection point on the shadow failed
Distributed -- openresty+lua+redis
The kth largest element in the sorted array
B. Moamen and k-subarrays (codeforce+ binary search)