不可变的基础设施

不可变的基础设施

我目前正在开发基于云的解决方案架构,并希望采用使用不可变服务器基础设施的方法(在更新软件、操作系统等时创建并部署新的 AMI)。关于该方法和要使用的各种工具,有很多不错的阅读材料和演示文稿,而且我了解无状态 Web/应用程序服务器的优点,并且使用 AWS RDS 之类的产品可以消除管理数据层的一些麻烦。

但是,我想知道如何从不可变的角度来处理应用程序服务器周围的一些管理服务/服务器。我可以理解 AWS RDS 之类的服务如何从不可变的角度消除维护数据层的一些复杂性,但您如何处理通常构成解决方案的其他一些“无状态性较少”的服务器/服务?我正在考虑诸如 Jenkins、目录服务、监控/日志记录服务等 CI 服务器。我想我可以考虑让第三方服务参与其中的一些工作,比如 AWS RDS 的方法,但还有哪些其他方法?有哪些替代方法可以在不偏离不可变服务器部署方法的情况下维护这些服务器和服务?

谢谢。

答案1

一句话概括 - Docker! - 这就是 Docker 的用途,它是目前互联网上最活跃的开源项目 - Windows Server 2016 将支持它,它有许多“第二天”的设计考虑,并得到 kubernettes、AWS、OpenStack Magnum、Azure、Stackato、Cloud Foundry、IBM blue Mix、Messos 和 Docker Swarm 的支持

查看 Docker Hub,探索、部署和传递整个分布式系统,就像它们是二进制文件一样 - 将开发、生产和沙盒都放在同一级别,实现所需的状态配置,并让 kubernettes 或 messo 扩展、负载平衡和版本控制您的应用程序。Docker 如此优秀,以至于威胁到了云

相关内容