你好,我是Ghostcloud的高级架构师,这个问题要透过现象看本质。
这个问题的本质是企业用Docker究竟能做什么,要回答这个问题,需要我们回归到Docker本身来分析。Docker本身只是提供了一个运行环境,除了把服务跑起来之外,要让多个服务容器协同起来工作,实际还需要一个容器编排系统。一般来说企业期望编排系统能帮助实现如下几个目的:
1、定义服务栈
提供一种机制,可以用配置文件来定义服务的网络端口,镜像及版本,在需要的时候通过配置可再现的创建出一整套服务。
2、服务发现、注册和注销
需要在创建服务后自动创建DNS记录用于访问相关容器,容器状态健康后注册SRV信息。
3、健康检查
可以精细化控制服务注册时机,以支持容器正常启动后的初始化完成后再注册服务,以对外提供稳定可用的服务。
4、自动扩容和缩容
实时监测容器CPU和内存使用情况,当容器平均性能指标超过阈值一段时间后启动自动扩容,创建更多容器以达到阈值要求,当没有主机资源运行新容器时,自动申请新主机。当一段时间负载持续低于阈值启动缩容优先删除新创建容器和主机,以释放资源和降低运营成本。
5、合理的调度
要求最大限度的榨取主机资源避免浪费,并可实现快速的创建容器,减少镜像拉取时间和磁盘空间浪费。
6、负载均衡和高可用
这个就不用多解释了吧。
by:Ghostcloud
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。