©利兹大学2016
Tango Energy Modeller(EM)是欧洲项目Tango(http://tango-project.eu)的组成部分。
EM由Apache许可证(版本2.0)分发。
能源建模器负责报告应用当前和历史能源的使用情况。它具有预测未来应用功能和能源消耗的能力,目的是提供指导探戈体系结构自适应行为的信息。
本指南将其分为两个不同的指南,一种特定于能量模块的汇编,第二个针对如何运行和配置能量模块的指南。
能源建模器的主要两个先决条件是:
要编译能量建模器,必须执行以下步骤:
该项目的声纳云报告可在以下网址提供:https://sonarcloud.io/dashboard?id=eu.tango%3aenergy-modeller
在这种情况下,我们将详细介绍如何以其独立模式运行该应用程序,该模式旨在用于收集能量模型的数据。第二种操作模式该能量模块用作另一个诸如自助管理器之类的子组件,目的是被用作建模器。
Energy Modeller也可以高度配置,并且有几个文件可用于改变其行为。 Energy Modeller具有以下设置文件,以实现这些更改:
Energy-Modeller.properties:持有基本配置指定要使用的数据源和预测器。
能量模型-DB.Properties:持有能量模板的数据库信息。
能源模型predictor.properties:持有与能源使用预测有关的设置。
Energy-Modeller-Influx-db-config.properties:持有如何直接连接到Connectd的InfluxDB数据库的设置,如果collectdinfluxdbdatasoruceadaptor,TangoremototeprocessingdataSourceadaptor,TangoenvironmentDataSourmentDataSourcourceadAptor在使用中。 TangeenvironmentDataSourCeadAptor是正在使用的默认数据源。
Energy-Modeller-db-Zabbix.properties:如果使用ZabbixDirectDbDataSourCeadaptor,则保留有关如何直接连接到Zabbix数据库的信息。
这些设置必须针对特定的基础架构量身定制。设置如下所述,并提供设置的示例供参考。
该文件指定了能量模块的各种数据库相关的设置。下面提供了一个示例:
energy.modeller.db.url = jdbc:mysql://iaas-vm-dev:3306/ascetic-em
energy.modeller.db.driver = org.mariadb.jdbc.Driver
energy.modeller.db.password = XXXXX
energy.modeller.db.user = user-em
这包括指定数据库用户名和密码,以使能量建模器连接到其背景数据库。这包括诸如连接URL,要使用的驱动程序以及使用的用户名和密码之类的信息。设置数据库结构的SQL脚本保存在文件IaaS Energy Modeller db.sql中。它在目录{Energy-Modeller root Directory} src Main Resources下保存。
energy.modeller.datasource = SlurmDataSourceAdaptor
energy.modeller.predictor = CpuAndAcceleratorEnergyPredictor
数据源参数指示能量模板的如何获得所需的环境数据。它可以是以下选项之一:
CollectDinfluxdbDataSourCeadAptor:此连接器直接访问Collectd的InfluxDB数据库以获取所需的信息。此适配器利用配置文件能量模型 - 插入式db-config.properties。
slurmdatasourceadaptor:这是一个将能源模块的适配器连接到基于Slurm的基于SLURM的环境。允许访问有关物理主机的信息。
TangeenvironmentDataSourCeadAptor:这同时使用了Slurmdatasourceadaptor和CollectDinfluxDbDatasourCeadaptor。
Tangoremoteprocessingdatasourceadaptor:这利用了CollectDinfluxDbDatasourCeadaptor,并将其连接到Compss运行时环境中,以获取有关运行作业的更多信息。 ZabbixDirectDbDataSourCeadAptor:此连接器直接访问Zabbix数据库以获取所需的信息。该适配器利用配置文件能量模型DB-Zabbix.properties。
WattSupMeterDataSourCeadAptor:用于局部使用能量模板。
应该注意的是,观察窗口不应太小,尤其是在Zabbix数据源适配器的使用过程中,这可能比WattSupMeterDataSourCeadaptor提供的数据点更少,后者能够每秒以每秒的时间低至少报告。
可以在上面指定使用的预测指标,选项是:
该文件指定了能量预测器机制的设置,下面提供了此类文件的示例:
energy.modeller.energy.predictor.datasource = ZabbixDirectDbDataSourceAdaptor
energy.modeller.energy.predictor.workload.predictor = CpuRecentHistoryWorkloadPredictor
energy.modeller.energy.predictor.default_load = -1.0
energy.modeller.energy.predictor.cpu.utilisation.observe_time.min = 0
energy.modeller.energy.predictor.cpu.utilisation.observe_time.sec = 15
数据源参数指示能量模板的预测变量将如何获得所需的环境数据。它可以是前面指定的选项之一。
能量预测器可以利用几种不同的工作负载估计器功能。默认值是使用CPURECECTORTORYWORKLOADPREDICTOR。这具有以下配置设置。
Default_load参数指示预测器应用作估计值的加载。应在0..1范围内指定。一种替代方法是为其提供值-1,其中将默认使用观察到的当前负载。
在使用观察者电流负载的情况下,使用observe_time.min.min和observe_time.sec参数指示CPU利用率的观察窗口的大小。简单地将两个值添加在一起以使总观测窗口时间。默认的观察窗口大小为15分钟。
工作负载预测的其他选项,可以在虚拟机配置能量模块时使用。这些都是:
这些预测因素在历史负载信息上工作。每个VM都可以使用有关VM的应用程序以及基于磁盘映像的信息进行标记。平均CPU工作负载预测指标:根据给定应用程序标签或基本磁盘图像的平均CPU利用率估算工作负载。平均启动工作负载预测因素:根据给定应用程序标签或基本磁盘映像的VM启动时间对工作负载进行估计。一周中的一天(DOW)工作负载预测因素:根据一周的时间和一天,对给定应用程序标签或基本磁盘映像的VM处于活动状态。
此配置文件用于使用CollectDinfluxdbDataSourCeadaptor,TangoreMototeProcessingDataSourCeadAptor或Tangeenvironmentdatasourceadaptor适配器时,用于配置Energy Modeller。它保存用于直接连接到CollectD InfluxDB数据库的数据库连接设置。
energy.modeller.influx.db.hostname = http://ns54.bullx:8086
energy.modeller.influx.db.name = collectd
energy.modeller.influx.db.user = collectd
energy.modeller.influx.db.password = XXXXX
这包括指定主机连接URL和数据库名称以及连接详细信息,例如用户名和密码。
这是用于使用zabbixDirectDbDatasourCeadaptor时用于配置能量模块的配置文件。它保留用于直接连接到Zabbix数据库的数据库连接设置。
energy.modeller.zabbix.db.driver = org.mariadb.jdbc.Driver
energy.modeller.zabbix.db.url = jdbc:mysql://192.168.3.199:3306/zabbix
energy.modeller.zabbix.db.user = zabbix
energy.modeller.zabbix.db.password = XXXXX
energy.modeller.host.group = Hypervisors
energy.modeller.vm.group = Virtual Machines
energy.modeller.dfs.group = DFS
energy.modeller.only.available.hosts = false
这包括指定数据库用户名和密码,以使能量建模器直接连接到Zabbix数据库。这还包括信息,例如连接URL,要使用的驱动程序,用户名和使用的密码。
能源模块符合以下组件: