1 修改ceilometer.conf文件
在ceilometer.conf文件中配置允许重新加载pipeline.yaml的选项,以及每次对pipeline.yaml轮询的时间间隔,是在[DEFAULT]下面添加,如下所示
[DEFAULT] ….. refresh_pipeline_cfg = true pipeline_polling_interval = 20 ….. |
2 修改pipeline.yaml文件
以cpu采样频率修改为例,修改pipeline.yaml文件中cpu采样频率以及添加文件发布方式。如下面红色部分所示
sources: - name: meter_source interval: 600 meters: - "*" sinks: - meter_sink - name: cpu_source interval: 10 meters: - "cpu" sinks: - cpu_sink - cpu_delta_sink …….. |
sinks: - name: meter_sink transformers: publishers: - notifier:// - name: cpu_sink transformers: - name: "rate_of_change" parameters: target: name: "cpu_util" unit: "%" type: "gauge" scale: "100.0 / (10**9 * (resource_Metadata.cpu_number or 1))" publishers: - notifier:// - file:///home/devstack/mycpu.txt ……… |
3重新启动ceilometer的轮询服务和计算节点服务
由于是在devstack环境下。因此通过screen(一种多重视窗窗口管理程序,可用于在单一窗口执行多个长时间运行的任务)来先暂停服务,然后启动。
执行如下命令查看screen任务,得到任务id
screen -ls
执行如下命令,将detached离线的screen运行起来
screen –rscreenId
screenId就是通过screen-ls得到的id
如果执行screen –r screenId发生错误
就执行如下命令来解决不能启动screen的问题
script /dev/null
然后按住
ctrl a p (向前切换)
或
ctrl a n(向后切换)
【1】 、切换到“ceilometer-acentral* ” 窗口下,按下 ctrl + c 来终止ceilometer-central-agent服务,然后按 向上箭头,出现执行ceilometer-central-agent服务的命令,按下enter就再次启动该服务,发现读取的cpu的采样频率已经改变。
按照上述【1】中同样的方法,分别重启:
ceilometer-anotifica, ceilometer-aipmi , ceilometer-acompute ,
之所以只重启这4个服务,是因为这四个服务是通过读取pipeline.yaml进行采样的。
而ceilometer-api服务是用于处理ceilometer命令行,ceilometer-collector服务是对经过pipeline处理后的数据存储到数据库或其他地方,均不涉及读取pipeline.yaml做相应处理。