基础设施即代码(InfrastructureasCode)
硬件资源是服务的基础,我们带代码需要部署在vm(openstack集群、ECS、aws或者googlecloud),这类资源需要集中管理,是属于我
们的资源和哪资产。同时需要⽀持跨平台,⽐如阿⾥云、腾讯云、aws等。
基础设施即代码,这个在2014年就提出来了,这个概念不单单是⾃动化,⾃动化⽅⾯我们已经有了Salt,Puppet等,但这些还不够。
Asabestpractice,infrastructure-as-codemandatesthatwhateverworkisneededtoprovisioncomputingresourcesitmustbedoneviacodeonly.
作为最佳实践,基础设施及代码授权所有准备计算资源所需要做的⼯作都可以通过代码来完成
计算资源包括计算、存储、⽹络、数据库等等,这意味着我们不需要点击去做部署,⽽是通过如下⽅式:
1.通过特定的格式,json或者其他编排语⾔来定义所需的资源
2.存储在代码控制系统
,测试
4.执⾏代码来部署
这类的平台⽐较多,⽐如Terraform,Chef,PuppetAnsible,CloudFormation,Salt等等。Terraform是⽬前⽐较受欢迎的,⽀持跨平台,
当然选择其他也是可以的。
传统的想法是,Terraform或者cloudFormation等平台提供物理资源,然后使⽤ansible或者saltstack来配置和部署。但是实际上并不需要如
此,ansilbe能做的,terraform也能做。
不可逆的部署
当前我们的做法是服务器和代码分开部署,但是现在的趋势是代码和vm绑定在⼀起,或者容器中都已经包含了代码,是当做⼀个整体部署
下去,这样就不会有环境的问题。
如果需要修改参数,并不需要在原有vm或docker修改,⽽是修改配置包,然后直接部署新的vm或docker。
这样做的收益是只需要⼀份配置,不需要测试环境部署⼀套,开发环境配置⼀次,线上环境⼜是⼀种,节约⼈⼒。
如果要查看log,当然不需要登录服务器去查看,在服务器上可以配置响应的⽇志组件,将⽇志上传到集中的⽇志中⼼,统⼀管理,⽅便之
后⽤elk等分析处理。
本文发布于:2022-12-28 12:12:24,感谢您对本站的认可!
本文链接:http://www.wtabcd.cn/fanwen/fan/90/46551.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |