|
|
51CTO旗下网站
|
|
移动端

2.2.4.1 定义群集资源容量

《Microsoft Azure 管理与开发(下册)平台服务PaaS》本书由世纪互联蓝云Microsoft Azure 开发技术支持团队的资深工程师们编写,主要阐述MicrosoftAzure PaaS 服务的开发应用,涉及计算服务、集成认证服务、数据存储服务、大数据服务等方面的内容。本节为大家介绍定义群集资源容量。

作者:世纪互联蓝云公司来源:电子工业出版社|2018-07-12 17:06

2.2.4.1 定义群集资源容量

在了解资源管理器是如何协调资源之前,需要先了解Service Fabric 是如何定义群集的整体资源分布和容量。这些对资源分布和容量定义的规则,就是资源管理器在执行时必须要实施的规则。通常用来定义群集资源分布和容量的规则有四种,它们分别是:

(1) 容错域;

(2) 升级域;

(3) 节点属性;

(4) 节点容量。

1. 容错域

容错域是协调故障的一个规则,这是为了在出现故障时,保证高可用的一个规则。可以将群集的节点划分多个容错域,Azure Service Fabric 会将服务的副本部署到不同的容错域中,并且在底层也会控制不同容错域的虚拟机所在的物理群集不一样。这样既能保证物理节点损坏时的高可用,也可以保证服务出现故障时的高可用。Azure 会尽可能平均地分配节点到各个容错域,多出的节点会按顺序放入排号靠前的容错域中。群集的容错域数量和分配都是由系统决定的,用户是无法修改该设置的。

2. 升级域

升级域非常类似于容错域,但是它针对的是群集的升级行为。将群集资源划分成多个升级域,当进行群集升级时,会每次只升级一个域内的节点。当域内的节点升级时,会先将该域内的节点上的服务进行迁移。可以定义升级域的数量,该数量要考虑群集的规模和设计。当设置的升级域少时,升级域内的节点就多,在升级时,会迁移很多服务,并且每升级一个域的时间也较长;如果设置的升级域多,则会带来频繁的迁移服务操作,就需要让其他节点预留一些资源。划分升级域时,通常有以下几种常见的划分方法,如图2.2.4-3所示。

第一种方式,每个节点都有一个升级域。

第二种方式,更新域和容错域以1:1 的映射关系划分。

第三种方式,矩阵分布的形式。

3. 放置约束和节点属性

有时需要将某些节点资源划分给特定的服务来使用。例如,分层的设计中,需要有一些节点给Web 接口服务使用,而另外一些资源需要给后台计算服务。二者需求的资源不一致,必须进行分层。Service Fabric 提供了节点属性的概念,使得可以给节点类型定义不同属性,这样在服务中规定该服务的放置约束。再部署服务时,会依据服务的放置约束来将服务部署到对应的节点类型上。

例如,在群集中定义了两个节点类型,分别设置节点属性NodeType=“WEB”和NodeType=“WORK”,在应用的服务中,设置放置约束,例如:

  1. FabricClient fabricClient = new FabricClient();  
  2. StatefulServiceDescription serviceDescription = new 
  3. StatefulServiceDescription();  
  4. serviceDescription.PlacementConstraints = "(NodeType== WEB)";  
  5. await fabricClient.ServiceManager.CreateServiceAsync(serviceDescription); 

当该服务部署时,会自动分配到NodeType 为Web 的节点类型中。另外,放置约束的最大好处是它可以在运行时设置。当在运行时修改后,群集会立即进行移动服务,在移动的过程中保证服务的高可用。

4. 节点容量

资源管理器最重要的功能就是进行协调资源的消耗。而资源分为很多种,例如内存,CPU,磁盘和网络等。在Service Fabric 中使用Metric 来定义资源,Service Fabric 有内置的系统资源指标,也支持自定义指标,例如RPS,队列等。在计算资源消耗时,首先需要在创建群集时定义资源总量。

例如:使用添加自定义指标来定义节点的容量,定义群集节点能接受的RPS 是20000,则需要在创建群集时,在模板中定义NodeType 的capacities。模板代码如下:

  1. "nodeTypes": [  
  2. {  
  3. "name": "NodeType02",  
  4. "capacities": {  
  5. "RPS": "20000"  
  6. }  
  7. }  
  8. ], 

这样定义后,该群集节点的所有服务的RPS 总数将不能超过20000,Service Fabric 会依据此指标的比重计算节点负载。


喜欢的朋友可以添加我们的微信账号:

51CTO读书频道二维码


51CTO读书频道活动讨论群:365934973

【责任编辑:book TEL:(010)68476606】

回书目   上一节   下一节
点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

网管员必读-网络管理(第2版)

本书是对《网管员必读—网络管理》第1版的全面重写,因为书中所涉及的两个主要网络操作系统都已升级。本书介绍的是Windows Server 2003 R2...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊