阿里技术专家:持续交付与微服务背后的实践逻辑
综上所述,可以看到相比使用虚拟机镜像作为不可变服务器,使用Docker镜像有如下优势:
而前面提到的那些使用虚拟机作为不可变服务器时,需要解决的问题(本地文件,log等),使用Docker同样会面对.而解决方法也是类似的. 既然Docker这么方便,那么使用虚拟机作为不可变服务器是否还有价值呢?这个其实主要还是看相关工具,及其成熟度.比如AWS和阿里云都提供了使用配置文件来编排虚拟机资源的能力,而且可以设置一些触发器来自动以虚拟机为单位对应用程序进行扩展(scale).这种模式已经非常成熟了. 而对于容器而言,这些云提供商也开始逐渐推出容器服务,把上述的那些对虚拟机的操作也引入到了容器的领域.今年五月份阿里云的容器服务就已经商用化了.它提供了集群管理的能力,也可以设置触发器对某一个应用进行扩容和缩容.关于阿里云容器服务提供的更多能力,因为时间关系,就不再赘述,有兴趣的朋友可以在这里做详细了解:https://yq.aliyun.com/teams/11. Ansbile、虚拟机不可变服务器、Docker Image都是很有用的技术,但针对每个具体的技术,还是需要仔细评估你的应用是否能够克服或者容忍前文提出的相应的限制和问题.并且需要看看这些技术能给你的业务带来多大的好处. 最重要的一点就是无论你在部署阶段使用的是何种技术,使用一条完整的从代码提交到最终部署上线的持续交付流水线都是必须的.在流水线上看到的都只是一个一个的stage,并且某些stage(比如部署)应该需要手动批准触发.至于点击之后到底是调用了Ansible脚本,还是运行了docker pull都是实现细节了.下面是一个使用 http://crp.aliyun.com 配置出来的示例持续交付流水线,及其不同的状态. (编辑:青岛站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |