1. Zones( 区域 )
一个区域在 CloudStack 配置中是最大的组织单元。一个区域通常代表一个单独的数据中心,虽然在一个数据中心也允许有多个区域。将基础架构设施加入到区域中的好处是提供物理隔离和冗余。例如,每个区域可以有它自己的电源和网络上行链路,区域还可以是分布在不同的物理位置上 ( 虽然这不是必须的 ) 。
一个区域包含:
一个或多个机架。每个机架包括一个或多个集群主机或者一个或多个主存储服务器。
所有区域中的机架所共享的二级存储。
Zones对终端用户是可见的。当用户启动一个客户虚拟机的时候,必须为它选择一个zone。用户必须复制他们私有的模版到追加的zones中,以便在那些zones中可以利用他们的模版创建客户虚拟机。
Zones可以是私有的也可以是公共的。公共的zones对所有用户都是可用的。这意味着任何用户都可以在区域中创建客户虚拟机。私有的zones是为一个指定的域预留的。只有在那个域中或者子域中的用户才可以创建客户虚拟机。
位于同一个zone中的主机可以相互访问而不用通过防火墙。位于不同zones中的主机可以通过静态配置VPN通道相互访问。
对每一个zone,管理员必须决定:
在zone中放置多少个机架(pods)
每个机架放置多少个集群
每个集群中放置多少台主机
每个集群中放置多少个主存储服务器(primary storage servers),存储服务器的总容量是多大
每个区域中配置多少个二级存储(secondary storage)
2. Pods
一个 pod 经常代表一个单独的机架。位于同一个 pod 下的主机处于相同的子网。
在一个 CloudStack 配置中 pod 是第二大的组织单元。 Zones 中的 pod 是独立的,每个 zone 可以包含一个或多个 pods 。
Pods 对终端用户是不可见的。
一个 pod 包含一个或多个集群主机,包含一个或多个主存储服务器 (primary storage servers) 。
3. Clusters
集群提供一种方式来管理主机。确切的来讲,一个集群就是一个 XenServer 服务池,一组 KVM 服务器的集合或者是一个在 vCenter 中预先构造的一个 VMware 集群。集群中的所有主机拥有相同的硬件配置,运行相同的虚拟机管理程序,位于相同的子网,访问同一个共享的主存储。虚拟机实例可以动态地从一台主机迁移到集群中的另一台主机,不用中断对用户的服务。
集群是 CloudStack 配置中第三大的组织单元。集群被机架包括,机架被区域包括。集群的大小受潜在的虚拟机管理程序限制,虽然大部分情况下 CloudStack 建议数目要小一些,请看最佳实践。
一个集群包括一个或多个主机,一个或多个主存储服务器。
CloudStack 允许多个集群存在一个云部署下。
即使当本地存储是私有的,集群仍然要是有组织的,虽然每个集群只有一台主机。
当使用 VMware 时,每个 VMware 集群被 vCenter 服务器管理。管理员必须向 CloudStack 注册 vCenter 服务器。每个 zone 中可能会有多个 vCenter 服务器。每个 vCenter 服务器可以管理多个 VMware 集群。
4. Hosts
宿主机是一台单独的计算机。宿主机提供计算资源运行客户虚拟机。每个宿主机配置有虚拟机管理软件来管理客户虚拟机。例如,一个 Linux KVM 服务器。一个 Citrix XenServer 服务器,和一个 ESXi 服务器都是宿主机。
宿主机是一个 CloudStack 配置中最小的组织单元。区域包含机架,机架包含集群,集群包含宿主机。
CloudStack 环境中的宿主机:
提供 CPU 、内存、存储和虚拟机需要的网络资源
用高带宽的 TCP/IP 网络互联同时连接到 Internet
可能驻留在位于不同地理位置的多个数据中心
可能拥有不同的容量 ( 不同的 CPU 速度、不同数量的内存等 ) ,虽然位于一个集群中的主机必须是同质的
添加的宿主机可以在任何时候被添加用来为客户虚拟机提供更高的能力。
CloudStack 自动地发现宿主机提供的 CPU 数量和内存资源。
宿主机对终端用户是不可见的。终端用户不能决定哪些主机可以分配给客户虚拟机。
在 CloudStack 中运行一个宿主机,你必须:
在宿主机上配置虚拟机管理软件
分配 IP 地址给宿主机
确保宿主机已经链接到 CloudStack 管理服务器
5. Primary Storage
主存储和一个集群联系在一起,而且它存储了位于那个集群宿主机中的所有虚拟机的磁盘卷。你可以为一个集群添加多个主存储服务器。至少有一个。通常,主存储服务器越靠近宿主机效能越好。
CloudStack 设计用来处理所有符合标准的 iSCSI 和 NFS 服务器所支持的底层的虚拟机管理程序,比如包括:(也就是主存储可以放在 NFS 共享出来的目录中和遵循 ISCSI 共享出来的目录)
Dell EqualLogic™ for iSCSI
Network Appliances filers for NFS and iSCSI
Scale Computing for NFS
如果你打算只使用本地磁盘安装,你可以跳过添加第二块存储。
6. Secondary Storage
二级存储是和 zone 关联的,它存储下面的东西:
1. 模版——可以用来启动虚拟机和包括附加配置信息(比如已经安装的应用程序)的操作系统镜像。 [ 自己理解的是已经安装若干应用程序的系统打包成 iso 可以用来新建类似的操作系统 ] 。
2.ISO 镜像——包含数据或可引导操作系统媒介的磁盘镜像。
3. 磁盘卷快照——可用来进行数据恢复或创建新模版的虚拟机数据的副本
基于区域的 NFS 二级存储中的元素可以被区域中的所有主机使用。 CloudStack 管理将客户虚拟机磁盘分配到特定的主存储设备上存储。 ( 所有虚拟机磁盘都是存在主存储上的 )
除了基于区域的 NFS 二级存储之外你还可以添加 OpenStack 项目存储 Swift ,以使二级存储中的元素对云中的所有主机都可用。当使用 Swift 时,你要对整个的 CloudStack 配置 Swift 存储,然后像往常一样配置为每个 zone 配置 NFS 二级存储。每个 zone 中的 NFS 存储作为一个缓存区当所有的模版和其它二级存储转发到 Swift 之前。这个 Swift 存储像一个位于云端的存储,使在云中的其它 zone 可以使用模版或者其它数据。在 Swift 存储中没有层次结构,一个 Swift 容器包含一个存储对象。整个云中的任何二级存储在需要的时候可以从 Swift 拉一个容器。不用再将模版和快照从一个 zone 拷贝到另一个 zone ,但是当只使用 zone NFS 的时候是必需的。任何地方任何东西都是可用的。
7. Physical Networks
7.1 关于物理网络
添加一个区域的一个步骤是配置物理网络。每个 zone 可以关联一个或多个物理网络。网络对应着 hypervisor 主机上的一个网卡。每个物理网络可以承载一个或多种类型的网络流量。每个网络流量类型的选择大部分取决于你是否用基本网络或高级网络创建一个 zone 。
zone 中的一个物理网络是真实的网络硬件和连线。一个 zone 可以有多个物理网络。一个管理员可以:
1> 在一个 zone 中添加 / 删除 / 更新物理网络
2> 在物理网络上配置 VLAN
3> 配置一个名字,这个网络就可以被 hypervisors 察觉
4> 在一个物理网络上配置服务提供者 ( 防火墙、本地负载均衡等 )
5> 配置物理网络主干网的 IP 地址
6> 指定哪种类型的流量可以经过该物理网络,或者其它属性像网络速度。
7.2 配置物理网络的特性
CloudStack 提供了配置设置,你可以用来配置 zone 中的一个物理网络,包括:
1> 可以承载什么类型的流量 ( 客户的,公共的,管理的,存储的 )
2> VLANs
3> 唯一的名字, hypervisors 可以发现这个特定的网络
4> 启用或禁用。当一个网络第一次配置的时候,它是禁用的— not in use yet 。管理员设置物理网络可用它才可以被使用。管理员过后也可以再次禁用这个网络,防止在那个物理网络上再创建任何新的虚拟网络;已经存在的网络流量仍在继续虽然状态已经是不可用。
5> 网络速度
6> 标签,因此网络可以匹配到物理网络
7> 隔离方法
7.3 基本区域的网络流量类型
当基础网络使用时,在 zone 中可以只有一个物理网络。那个物理网络承载下面的流量类型:
1> 客户的。当终端客户跑虚拟机的时候,会产生客户流量。客户虚拟机可以通过一个网络进行通信,这个网络成为客户网络。在一个基本区域中一个机架就是一个广播域,因此对客户网络来说每个机架都有一个不同的 IP 区间。管理员必须为每个机架配置 IP 区间。
2> 管理的。当 CloudStack 的内部资源进行通信是,会产生管理流量。这包括宿主机之间、系统虚拟机之间的通信。
[ 注:强烈建议管理网络和客户网络使用独立的网卡 ]
3> 公共的。当云中的虚拟机访问 Internet 时产生公共流量。为了这个目的必须分配公网可访问的 IP 地址。终端用户可以通过 CloudStack 的 UI 界面来实现他们的客户网络和公共网络的 NAT 网络地址转换,就像获得了一个新的 IP 地址。
4> 存储的。在二级存储虚拟机和二级存储服务器之间发送的虚拟机模版和快照产生的流量。 CloudStack 为存储网络流量使用一个独立的网卡 ( 称为存储网卡 ) 。存储网卡的使用允许在一个高带宽的网络上快速地复制模版和快照。你必须为存储网络分配 IP 区间。
在一个基本网络里配置物理网络相当的简单。大部分情况下,你只需要配置一个客户网络来承载客户虚拟机产生的流量。如果你使用 NetScaler 负载均衡器,而且拥有弹性 IP 和弹性负载均衡,你必须配置一个网络来承载公共流量。当你添加一个新的 zone 的时候 CloudStack 会在 UI 界面呈现必要的网络配置步骤。
7.4 基本区域客户 IP 地址
当使用基础网络时, CloudStack 将会为那个机架中的客户机分配位于 CIDR 区间中的 IP 地址。为了这个目的,管理员必须添加一个直接的 IP 区间。这些 IP 地址对主机来说位于相同的 VLAN 。
7.5 高级区域网络流量类型
当使用高级网络时,在 zone 中可能用多个物理网络。每一个物理网络可以承载一个或多个流量类型,你必须要让 CloudStack 知道每个物理网络承载什么类型的网络流量。位于高级区域中的网络流量有:
1> 客户的。当终端用户跑虚拟机的时候,他们会产生客户流量。客户虚拟机用来相互通信的网络就可以认为是客户网络。这个网络可以是孤立的也可以是共享的。在一个孤立的客户网络中,管理员需要储备 VLAN 范围以便为 CloudStack 的账户提供孤立的网络 ( 可能需要很多歌 VLANs) 。在一个共享的客户网络中,所有的客户虚拟机共享一个网络。
2> 管理的。当 CloudStack 的内部资源相互之间进行通信时,会产生管理流量。这包括宿主机之间、系统虚拟机之间以及任何其它的组件与 CloudStack 管理服务器直接通信。你必须为系统虚拟机配置 IP 区间来使用。
3> 公共的。当云中的虚拟机访问 Internet 时会产生公共流量。为了这个目的必须分配可以访问公网的 IP 。终端用户可以利用 CloudStack 的 UI 界面取得这些 IP 地址并且在客户网络和公共网络进行通信时进行 NAT 网络地址转换。
4> 存储的。在二级存储虚拟机和二级存储服务器之间发送虚拟机模板和快照时产生的流量。 CloudStack 利用一个单独的网卡 ( 称为存储网卡 ) 来为存储网络提供流量。使用存储网卡允许在一个高带宽的网络上快速传输模板和快照的拷贝。你必须为存储网路配置 IP 地址区间。
这些流量类型可以每一个都在一个单独的物理网络上,或者他们可以通过几个限制条件联系在一起。当你在 UI 界面中利用 zone 创建向导去创建一个新的 zone 的时候,你会被指引创建一个唯一的有效的选择。
8. 高级 zone 客户 IP 地址
当使用高级网络的时候,管理员可以为客户创建额外的网络。这些网络可以跨越 zone 并且为所有用户使用,或者局限于一个单独的账户,有这样的情况只有附属于这些网络的账号才可创建客户机。这个网络用 VLAN ID 、 IP 区间和网管标识。如果需要管理员可以提供成千上万个网络。
9. 高级 zone 公共 IP 地址
当使用高级网络的时候,管理员可以为客户创建额外的网络。这些网络可以跨越 zone 并且为所有用户使用,或者局限于一个单独的账户,有这样的情况只有附属于这些网络的账号才可创建客户机。这个网络用 VLAN ID 、 IP 区间和网管标识。如果需要管理员可以提供成千上万个网络。
10. 系统保留的 IP 地址
在每个 zone 中你必须为管理网络配置一些预留的 IP 地址。这个网络负责 CloudStack 管理服务器和各种系统虚拟机通信,好比二级存储虚拟机、控制代理虚拟机和 DHCP 。。
预留的 IP 地址在云中必须的唯一的。不能这个 zone 中的主机拥有一个私有 IP 地址而另外一个 zone 中也拥有相同的 IP 地址。
一个机架中的主机分配私有 IP 地址。这些通常都是 RFC1918 地址。控制代理和二级存储系统虚拟机通常分配 CIDR 中他们创建的 IP 地址。
确保计算服务器和管理服务器的 IP 地址不在系统预留 IP 地址之内。例如,假设系统预留 IP 地址区间为 192.168.154.2 到 192.168.154.7.CloudStack 可以使用 .2 到 .7 的 IP 地址为系统虚拟机。剩下的机架 CIDR 可以从 .8 到 .254, 可以分配给管理服务器和 hypervisor 。
在所有的 zone 中:
为每个机架中的系统分配私有 IP 地址并在 CloudStack 中配置它们。
对 KVM 和 XenServer ,推荐的是每个机架上的每个主机一个私有 IP 地址。如果你预期机架容量会增长那么就要为它分配足够的 IP 地址以适应它的增长吧。
在一个使用高级网络的 zone 中:
对于使用高级网络的 zone ,我们建议要为你所有的用户分配足够的私有 IP 地址,为 CloudStack 系统虚拟机添加足够的必须的地址。通常,系统虚拟机大约需要 10 个左右的 IP 地址。更多的信息请参见管理界面系统虚拟机配置那一部分。
当高级网络开始使用的时候,每个机架上可用的私有 IP 地址的数量取决于你的机架节点上跑的是那种 hypervisor 。 Citrix XenServer 和 KVM 使用本地链路地址,理论上在地址块上可以提供多于 65000 个私有 IP 地址。即使机架增长很快这些 IP 地址也是足够的。 VMWare ESXi 使用任何管理员制定的子网方案,通常每个机架管理员只提供 255 个 IP 地址。因为他们是被物理机器、虚拟路由和其它实体共享的,当机架按比例增长时用尽 IP 地址是可能的。
当使用高级网络而且采用 ESXi 作为虚拟机管理程序要确保有足够的 IP 地址。可以使用下面的技术:
为子网指定一个大的 CIDR 块。用前 20 位作为子网号可以指定超过 4000 个 IP 地址。
创建多个机架,每个机架拥有他自己的子网。例如,如果你创建 10 个机架每个机架分配 255 个 IP 地址,那么你就可以提供 2550 个 IP 地址了。
转自: http://blog.csdn.net/houqingdong2012/article/details/9101293