查看其它 1 个回答jxnxsdengyu的回答

jxnxsdengyujxnxsdengyu课题专家组系统工程师江西农信

这里要提到的是云管平台统一资源层设计时的“动态”理念:
部署策略:
顾名思议,在资源部署时能够按照不同的模板或者策略,自动地或者可选择地部署到不同的资源当中。先说部署模板,在OpenStack里面叫做Flavor,定义了VCPU,RAM,DISK,Metadata四类,Scheduler会按照flavor去选择合适的计算节点;在PowerVC里面叫做Templete,有Compute Templete和Storage Templete,按照Templete去计算节点中部署资源。再说策略,策略在OpenStack中叫做Filter,也就是过滤规则,在部署时,按照规则的设定过滤一遍,最终选择合适的目标计算节点进行部署。比如RetryFilter(刷掉之前已经调度过的节点)、ServerGroupAntiAffinityFilter(可以尽量将 Instance 分散部署到不同的节点上)、ComputeCapabilitiesFilter(根据计算节点的特性来筛选)、AvailabilityZoneFilter(为提高容灾性和提供隔离服务,可以将计算节点划分到不同的Availability Zone中)等等,并且能够支持第三方Scheduler,按照Driver的框架,配置Scheduler_driver 即可。最后说下策略继承,云管平台的资源层由于是异构的资源层,包含了Power、商用X86、开源X86、容器、公有云,甚至Z/VM,采用的资源接管方式也不一样,有的是直接管理,有的是间接管理,直接管理可以采用云管资源层自身设定的部署策略,而间接管理由于资源池层也存在部署策略(如PowerVC、VC、公有云、容器云)则需要考虑能否将这些部署策略通过API集成过来,或者是不去集成这些策略,直接读取过来,亦或是不去管理这些策略。因为云管资源层的开发者或者厂商和间接管理的这些资源池层厂商不是同一家,相互间的配合和协同,或者一些API并不开放等,所以这一块,为了简便,直接采取不去管理这些策略,一来必要性也不是那么高,二来节约了成本。
动态优化规则:
动态优化规则是通过一定的监控手段,采集资源使用情况,当触发优化规则时,通过事件通知用户,或者直接执行动作去在线迁移资源或者横纵向扩展资源。这里有两种方式来实现,一是通过Nova组件协同Ceilometer来实现。Ceilometer对底层资源使用实时采集和监控,当触发动态优化规则时,如计算节点CPU使用率、内存使用率、使用率连续3次超过所设定的阀值,则开始执行动作,按照虚拟机的权重,迁移该计算节点上的权重较低的部分虚拟机至资源池的其他计算节点当中。二是通过Heat组件协同Ceilometer来实现,同样Ceilometer对资源使用进行采集,当触发告警阈值时,通知Heat调度编排脚本,自动横向部署一个新的虚拟机供业务使用。Heat对资源的伸缩编排如下图所示:
yunguan8.jpg

yunguan8.jpg

银行 · 2017-10-23
浏览1633

回答者

jxnxsdengyu
系统工程师江西农信
擅长领域: 存储灾备双活

jxnxsdengyu 最近回答过的问题

回答状态

  • 发布时间:2017-10-23
  • 关注会员:3 人
  • 回答浏览:1633
  • X社区推广