云分区
下面章节详细解释何为云分区:
分区
StratOS的分区可以映射为IaaS的一个逻辑分区。这个逻辑分区可以是以下级别中的一种:Provider级别、Region级别、Zone级别或者Rack级别。一个逻辑分区至少需要定义一个Provider。逻辑分区定义时也可指定区分组。DevOps用户为了实现高可用,可以定义复合区域,将资源实例创建到不同的区域,比如不同的region、zone或者rack。例如如果将资源实例创建到EC2的不同可用ZONE,这样在其中一个ZONE出现问题时部署的应用仍然可用。
网络分区
网络分区也会关联到一个分区组。网络分区映射到IaaS的一个区域,受限于IaaS的一个实际网络(比如region)。每个region在地理上是隔离的。每个region有多个隔离的位置,称为多个zone。但一些分区也可以在一个网络分区内。为了实现高可用,DevOps用户可以定义多个分区组,属于多个分区。在同一个网络分区内的多个分区的分区算法定义在部署规则中,而在不同网络分区之间的分区算法定义在应用的规则中。
网络分区算法
在多个分区之间发生自动扩展时,需要根据预先定义的分区算法起作用。在多个网络分区创建资源实例时需要使用分区算法定义的扩展机制。分区算法可应用于一个网络分区之内,可根据分区算法变化到多个网络分区之间。例如,有两个网络分区命名为NP1和NP2,有两个隔离的分区命名为P1和P2,都在同一个分区组PG1中,分区算法在PG1分区组的P1和P2内起作用,可以变化为在网络分区NP1和NP2之间起作用。
有如下几种分区算法:
顺序算法
使用这种算法,资源实例会创建在同一个分区,直到资源全部被使用,则会继续到下一个分区创建。例如,有两个分区命名为P1和P2,资源实例在同一个分区下创建,直到分区P1的资源被使用完后,继续在P2下创建资源。这种分区算法在多个分区或者多个网络分区之间使用。
随机算法
使用这种算法,资源实例会随机在多个分区上创建。例如,有两个分区P1和P2,第一次创建资源实例时在P1分区,下次创建资源实例时则会在P2分区。这种分区算法只在不同的分区之间使用。
全部匹配
资源实例创建到应用程序使用的所有网络分区中。这种分区算法应用在多个分区或者多个网络分区之间。
示例场景
在一个典型的云流量突然增加的场景,你可以使用顺序算法。例如,如果企业有自己的私有云,所有的资源实例都被放到私有云中,当容量不够时,下一个分区会指向公有云。随机算法被用在需要可靠的高可用场景,资源实例会均匀的分布到不同的IaaS平台内。