第 3 章 容量规划

3.1. 容量及利用率收集

Red Hat CloudForms 服务器可从您的虚拟基础架构中收集并分析容量及利用率数据。使用这个数据了解当前环境限制和增长规划。

对于容量及利用率数据, Red Hat CloudForms 计算趋势线,并以图表显示。使用 Red Hat CloudForms 为图表指定间隔收集的容量和利用率数据计算线性回归,以生成趋势线。数据越充分,越能够预计趋势线值。

有三个服务器角色与容量和利用率收集和度量创建关联。

  • 容量及利用率协调器角色会检查何时应收集数据,类似一个规划程序。如果应该收集,则会有一个用于容量和利用率数据收集器的任务排队。完成容量和利用率数据收集需要这个协调器角色。如果在某个具体区的一个以上服务器均有此角色,则每次只能有一个处于活跃状态。
  • 容量和利用率数据收集器实际执行容量和利用率数据收集。这个角色是一个专用辅助角色,在一个区中可有多个服务器有此角色。
  • 容量和利用率数据处理器会处理收集的所有数据,并由 Red Hat CloudForms 生成图表。这个角色有专用辅助角色,且在一个区中可有多个服务器有此角色。

3.2. 分配容量及利用率服务器角色

  1. 导航至 设置配置,并选择该服务器,以便在左侧窗格中配置 设置
  2. 导航至 服务器服务器控制 部分,并在根据您配置列出的容量及使用角色中选择正确的角色。
  3. 点击 保存

数据收集会立即开始。但第一次收集会在服务器启动后 5 分钟后开始,此后每 10 分钟收集一次。因此,启用容量及利用率收集器服务器角色后的最长收集会需要 10 分钟。具体提供者进行第一次收集可能需要几分钟,因为 Red Hat CloudForms 正在收集过去一个月的数据。

注意

除设置服务器角色外,还必须选择为那些集群和数据存储收集数据。有关详情,请查看《常规配置》。您必须是超级管理员方可编辑这些设置。

3.3. Data Collection for Red Hat Enterprise Virtualization 3.3 和 3.4

要为 Data Collection for Red Hat Enterprise Virtualization 3.3 和 3.4 收集容量和利用率数据,则必须作为用户将 Red Hat CloudForms 添加到 RHEV-M 数据库。

此过程是在历史数据库所在的 PostgreSQL 服务器中进行,一般为 RHEV-M 服务器。

  1. 作为 root 用户使用 SSH 访问 RHEV-M 数据库服务器:

    $ ssh root@example.postgres.server
  2. 切换到 postgres 用户:

    # su - postgres
  3. 进入数据库提示符:

    -bash-4.1$ psql
  4. 为 Red Hat CloudForms 创建新用户:

    postgres=# CREATE ROLE cfme LOGIN UNENCRYPTED PASSWORD 'smartvm' SUPERUSER VALID UNTIL 'infinity';
  5. 退出 RHEV-M 数据库服务器提示符:

    postgres=# \q
    -bash-4.1$ exit
  6. 将服务器的防火墙更新为可中端口 5432 接收 TCP 通讯:

    # iptables -I INPUT -p tcp -m tcp --dport 5432 -j ACCEPT
    # service iptables save
  7. 通过将以下行添加到 /var/lib/pgsql/data/pg_hba.conf 中启用外部 md5 认证:

    host    all      all    0.0.0.0/0     md5
  8. 通过更新 /var/lib/pgsql/data/postgresql.conflisten_addresses 行为远程连接启用 PostgreSQL 进行侦听:

    listen_addresses  =  '*'
  9. 重新载入 PostgreSQL 配置:

    service postgresql reload

3.4. 为数据收集统计数据库证书

创建新用户后,为该提供者在设置中添加该用户的证书。

  1. 计算基础设施提供者 中选择一个基础设施提供者,以更新其设置。
  2. 点击 1847 配置,然后点击 1851 所选基础设施提供者
  3. 证书 部分点击 容量 & 利用率数据库
  4. 为新创建的数据库用户输入该证书。
  5. 点击 保存
  6. 重启该容量及利用率数据收集器。

3.5. Data Collection for Red Hat Enterprise Linux OpenStack Platform

可从 Red Hat Enterprise Linux OpenStack Platform(RHEL-OSP)提供者收集数据前,必须安装 Ceilmeter,并将其配置为接受外部系统查询。

这些步骤需要基于 Red Hat Enterprise Linux 6.4 的 RHEL-OSP 安装,并在可访问 RHEL-OSPRHEL 服务器自选 通道的 satellite 中注册。在您的 RHEL-OSP 系统中完成所有步骤。

  1. 添加所需频道,并更新系统:

    # rhn-channel --add -c rhel-x86_64-server-6-ost-3 -c rhel-x86_64-server-optional-6
    # yum update -y
    # reboot
  2. 安装 Ceilometer

    # yum install *ceilometer*
  3. 安装并启动 MongoDB 存储:

    # yum install mongodb-server
    # sed -i '/--smallfiles/!s/OPTIONS=\"/OPTIONS=\"--smallfiles /' /etc/sysconfig/mongod
    # service mongod start
  4. 创建以下用户及角色:

    # SERVICE_TENANT=$(keystone tenant-list | grep services | awk '{print $2}')
    # ADMIN_ROLE=$(keystone role-list | grep ' admin ' | awk '{print $2}')
    # SERVICE_PASSWORD=servicepass
    # CEILOMETER_USER=$(keystone user-create --name=ceilometer \
    --pass="$SERVICE_PASSWORD" \
    --tenant_id $SERVICE_TENANT \
    --email=ceilometer@example.com | awk '/ id / {print $4}')
    # RESELLER_ROLE=$(keystone role-create --name=ResellerAdmin | awk '/ id / {print $4}')
    # ADMIN_ROLE=$(keystone role-list | awk '/ admin / {print $2}')
    # for role in $RESELLER_ROLE $ADMIN_ROLE ; do
    keystone user-role-add --tenant_id $SERVICE_TENANT \
    --user_id $CEILOMETER_USER --role_id $role
    done
  5. ceilometer.conf 中配置认证令牌:

    # openstack-config --set /etc/ceilometer/ceilometer.conf keystone_authtoken auth_host 127.0.0.1
    # openstack-config --set /etc/ceilometer/ceilometer.conf keystone_authtoken auth_port 35357
    # openstack-config --set /etc/ceilometer/ceilometer.conf keystone_authtoken auth_protocol http
    # openstack-config --set /etc/ceilometer/ceilometer.conf keystone_authtoken admin_tenant_name services
    # openstack-config --set /etc/ceilometer/ceilometer.conf keystone_authtoken admin_user ceilometer
    # openstack-config --set /etc/ceilometer/ceilometer.conf keystone_authtoken admin_password $SERVICE_PASSWORD
  6. ceilometer.conf 中配置用户证书:

    # openstack-config --set /etc/ceilometer/ceilometer.conf DEFAULT os_auth_url http://127.0.0.1:35357/v2.0
    # openstack-config --set /etc/ceilometer/ceilometer.conf DEFAULT os_tenant_name services
    # openstack-config --set /etc/ceilometer/ceilometer.conf DEFAULT os_password $SERVICE_PASSWORD
    # openstack-config --set /etc/ceilometer/ceilometer.conf DEFAULT os_username ceilometer
  7. 启动 Ceilometer 服务:

    # for svc in compute central collector api ; do
      service openstack-ceilometer-$svc start
      done
  8. 使用该服务类别注册端点。使用您外部接口的 IP 地址替换 $EXTERNALIFACE

    # keystone service-create --name=ceilometer \
    --type=metering --description="Ceilometer Service"
    # CEILOMETER_SERVICE=$(keystone service-list | awk '/ceilometer/ {print $2}')
    # keystone endpoint-create \
    --region RegionOne \
    --service_id $CEILOMETER_SERVICE \
    --publicurl "http://$EXTERNALIFACE:8777/" \
    --adminurl "http://$EXTERNALIFACE:8777/" \
    --internalurl "http://localhost:8777/"
  9. 启用从外部系统访问 Ceilometer 的功能:

    # iptables -I INPUT -p tcp -m multiport --dports 8777 -m comment --comment "001 ceilometer incoming" -j ACCEPT
    # iptables save
  10. 确认 OpenStack 及 Ceilometer 服务状态:

    # openstack-status
    # for svc in compute central collector api ; do
      service openstack-ceilometer-$svc status
      done
  11. 作为运行实例的用户(例如:admin)验证,从而确认 Ceilometer 正常运行。将示例发送到 CPU 指示器计算线程,并确认按照 /etc/ceilometer/pipeline.yaml 中指定的间隔更改该数值。默认间隔为 600 秒。

    # . ~/keystonerc_admin
    # ceilometer sample-list -m cpu |wc -l
  12. 在 Red Hat CloudForms 中添加配置的 OpenStack 提供者。详情请查看《管理提供者》中《添加 OpenStack 提供者》一节。添加此提供者后,几分钟内即可填入您的实例容量和利用率数据。

3.6. 收集的数据

Red Hat CloudForms 为收集的数据生成图表,以便用来规划硬件和虚拟机。视不同数据类型,这些图表可包括平均线,最高线,最低线及趋势线。

注意

报告每日容量和利用率数据,在所需间隔开始及结束点的不完整日期(午夜至午夜少于 24 个小时点的日期)除外。对于少于 24 个小时点的日期,其数据可能会不准确,并可能破坏趋势线。因此,至少有一个完整的午夜至午夜按小时记录的数据,以便在 计算基础设施 标签中显示容量和利用率图表。

3.6.1. 主机、集群和虚拟机的容量和利用率图表

表 3.1. 主机、集群和虚拟机的容量和利用率图表

资源类型CPU 使用CPU 状态磁盘 I/O内存使用网络 I/O运行的 VMS运行的主机

主机

不适用

集群

虚拟机

不适用

不适用

有关查看主机、集群和虚拟机容量和使用图表的步骤,请参看《管理基础设施指南》中的以下章节:

3.6.2. 数据存储的容量和利用率图表

创建的图表包括:

表 3.2. 数据存储的容量和利用率图表

按 VM 类型分配的空间虚拟机和主机

已使用空间

按类型分配的 VM 数

磁盘文件空间

主机

快照文件空间

虚拟机

内存文件空间

 

非虚拟机文件

 

已使用磁盘空间

 

有关查看数据存储容量和利用率图表的步骤,请参看《管理基础设施清单指南》中的以下章节:

3.7. 图表功能

每个图表都提供一组特殊功能,其中包括放大图表和快捷菜单。

3.7.1. 放大图表

  1. 导航至要放大的图表。悬停在图表的任意位置,此时会出现两行虚线让您对准图表坐标。
  2. 点击图表左下角的 2251点击放大)放大该图表。
  3. 要返回常规视图,请在放大的图表中点击 2252点击缩小)。

3.7.2. 提取图表数据

  1. 导航至要从中获取详情的图表。
  2. 悬停在数据点上查看坐标。
  3. 点击数据点打开图表的快捷菜单。在此示例中,可使用快捷菜单进入按小时显示的图表,或显示捕获该数据是正在运行的虚拟机。

    • 如果正在查看 CPU磁盘内存网络 图表,从 图表 选项中选择会将该也中所有图表改为采用新的间隔。
    • 如果您正在查看 CPU磁盘内存网络 图表,从 显示 选项中选择可让您进一步查看那个时候正在运行的虚拟机或 主机
    • 如果您要查看 VM 或者 主机 图表,可使用 显示 菜单查看正在运行或已停止的虚拟机。将会延迟可用虚拟机的数据点时间。在这里可以点击虚拟机查看其详情。

3.8. 优化

Red Hat CloudForms 的优化功能可让您查看使用趋势,并鉴别和解决您环境中的瓶颈。此外,您可以预测附加虚拟机的容量。

注意

报告每日优化数据,在所需间隔开始及结束点的不完整日期(午夜至午夜少于 24 个小时点的日期)除外。少于 24 个小时点的日期可能会不准确,并可能破坏趋势线。因此,至少有一个完整的午夜至午夜按小时记录的数据,以便在 优化 页面需要至少两个完整日期数据,因为所有列入图表中的数据都是来自趋势计算,并要求至少有两个数据点。

3.10. 规划

您可以使用在 VMDB 中收集的数据规划在哪里添加附加虚拟机。 Red Hat CloudForms 允许您使用参考虚拟机作为示例,以规划在哪台主机和集群添加新虚拟机。

3.10.1. 规划在哪里添加新虚拟机

使用 Red Hat CloudForms 规划功能帮助您规划虚拟机放置。

  1. 导航至 优化规划
  2. 参考 VM 选择,使用下拉菜单选择最可能要添加的虚拟机。

    2254

  3. 选择用来进行计算的所需 VM 选项

    2255

    资源 列表中选择数据类型作为您的计划来源。例如:选择 分配 根据每个资源(CPU、内存或磁盘空间)的当前分配值为参考虚拟机进行计算。使用 保留 根据具体资源(CPU 速度、CPU 计数、内存或磁盘空间)的当前值进行规划,虽然在某个具体时间尚未没有为其分配那个数值。如果要根据参考虚拟机的用量历史记录进行计算,则请选择 用量。选择 手动输入 为每个资源输入您自己的参数集。

  4. 目标选项 / 显示 中选择您是否要使用集群或主机作为您的目标。

    2256

    另外,还要选择该规划的 CPU、内存及数据存储空间上限。如果选择主机作为目标,则可以为可作为的目标主机选择过滤器。

  5. 趋势选项 中选择要将趋势数据向前回溯多久,如果可用,则可选择 时间配置文件时区。注:如果登录的用户有 时间配置文件 可用,则只会显示 时间配置文件
  6. 点击 提交

概述 标签可在其中添加的最佳集群或主机。报告 标签以表格格式显示最合适的参考虚拟机及统计数据。在 报告 标签中还可以生成报告的 PDF 文档,或以 txt 或者 csv 格式下载该数据。

3.11. 瓶颈

Red Hat CloudForms 可显示在您的虚拟基础设施的那个位置会产生瓶颈。可通过时间线查看瓶颈,也可以作为报告下以便进一步分析。

3.11.1. 先决条件

  • 瓶颈报告使用同样的机制收集容量和使用报告。要在 Red Hat CloudForms 中启用数据收集,请查看以下章节:

  • 另外,还可按照以下步骤将 Red Hat CloudForms 配置为收集集群化数据存储的容量和利用率报告:

    1. 导航至 设置配置
    2. 在工具左侧栏的 设置 标签中选择 区域
    3. 在右侧栏的 容量 & 利用率收集 标签中选取 集群 下的 为所有集群收集 以及 数据存储 下的 为所有数据存储收集,或选取所需集群/数据存储复选框。

      注意

      必须选取 为所有集群收集 方可从云提供者,比如红帽 OpenStack 或者 Amazon EC2 中收集容量和利用率数据。

    4. 点击 保存
  • 如要要让瓶颈报告正常工作,还需为相关后端提供者启用容量和利用率报告的数据收集。为 Red Hat Enterprise Virtualization 和 Red Hat Enterprise Linux OpenStack Platform 提供者启用数据收集的详情请查看以下文档:

注意

报告每日瓶颈数据,在所需间隔开始及结束点的不完整日期(午夜至午夜少于 24 个小时点的日期)除外。少于 24 个小时点的日期数据可能会不准确,并可能破坏趋势线。因此,至少有一个完整的午夜至午夜按小时记录的数据,以便在 优化 标签中显示瓶颈图表。

3.11.2. 查看瓶颈概述

要找出更多瓶颈容量或利用率,请查看瓶颈概述。

  1. 导航至 优化瓶颈
  2. 如果还没有选择,则请点击 概述
  3. 展开左侧的树,直到可以看到所需提供者、集群或数据存储。
  4. 点击该项目。
  5. 选项 部分更改该数据特性。 2257

    • 使用 事件组 选择是要查看容量还是使用瓶颈,还是两项都要查看。
    • 查看 时区

      数据已处理,并出现时间线。点击时间线上的图标查看瓶颈的具体信息。

3.11.3. 查看瓶颈趋势报告

  1. 导航至 优化瓶颈
  2. 点击报告
  3. 展开左侧的树,直到可以看到所需提供者、集群或数据存储。
  4. 点击该项目。
  5. 使用 选项 部分更改该数据特征。 2258

    • 使用 事件组 选择是要查看容量还是使用瓶颈,还是两项都要查看。
    • 查看 时区
  6. 展开左侧的树,直到可以看到需要为其提供趋势的企业、提供者或数据存储。