©利茲大學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,要使用的驅動程序,用戶名和使用的密碼。
能源模塊符合以下組件: