不可变基础设施
1、什么是Immutable Infrastructure
Immutable Infrastructure,直译过来就是不可变基础设施。 它是由Chad Fowler于2013年提出的一个很有前瞻性的构想。 基础设备中的每层的每个组件都可以自动安装、部署。 每个组件在完成后将将不会发生更改,如果要更改,则丢弃老的组件并部署一个新的组件。 这种思想与不可变对象的概念完全相同。
这里所说的每一层,指的是从os(虚拟机、云主机)到集群,节点管理和单个节点的安装软件配置。
2、Immutable Infrastructure产生背景
当然在很多年以前这个概念是得不到技术支持的,我们很难在不同的物理机上实现软件的不可变。 不过随着虚拟化技术以及云计算的发展,现在这已经变得可能了。 我们更多的时候,面对的不是一台台的物理主机,更多的是云主机实例。 安装一个操作系统也不需要几小时,而只需要鼠标点几下,等上两三分钟即可。 重装系统这个概念已经不存在,删掉一个主机实例我们也不会心疼。
3、Immutable Infrastructure带来的好处
解决环境间差异问题 快速回滚到老版本 更好的进行CI 更好的自动化 更容易进行大规模运维