OpenStack Ocata Telemetry 数据收集服务
1 安装配置计算服务
在所有计算节点上:
1.1 安装配置组件
安装包:
# yum install -y openstack-ceilometer-compute
编辑配置文件/etc/ceilometer/ceilometer.conf:
[DEFAULT]
...
transport_url = rabbit://openstack:pass123456@controller3
auth_strategy = keystone
[keystone_authtoken]
...
auth_uri = http://controller3:5000
auth_url = http://controller3:35357
memcached_servers = controller3:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = ceilometer
password = pass123456
[service_credentials]
...
auth_url = http://controller3:5000
project_domain_id = default
user_domain_id = default
auth_type = password
username = ceilometer
project_name = service
password = pass123456
interface = internalURL
region_name = RegionOne
1.2 配置计算节点使用Telemetry
编辑配置文件/etc/nova/nova.conf:
[DEFAULT]
...
instance_usage_audit = True
instance_usage_audit_period = hour
notify_on_state_change = vm_and_task_state
[oslo_messaging_notifications]
...
driver = messagingv2
1.3 完成安装
开启代理和配置开机启动,并重启计算服务:
# systemctl enable openstack-ceilometer-compute.service
# systemctl start openstack-ceilometer-compute.service
# systemctl restart openstack-nova-compute.service
2 安装配置控制服务
以下操作在控制节点上进行:
2.1 Ceilometer服务:
2.1.1 创建gnocchi数据库
# 用root用户登录数据库
$ mysql -u root -p
# 创建gnocchi数据库
MariaDB [(none)]> CREATE DATABASE gnocchi;
# 赋予用户操作数据库最高权限
MariaDB [(none)]> GRANT ALL PRIVILEGES ON gnocchi.* TO 'gnocchi'@'controller3' IDENTIFIED BY 'pass123456';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON gnocchi.* TO 'gnocchi'@'%' IDENTIFIED BY 'pass123456';
MariaDB [(none)]> exit
2.1.2 配置Ceilometer服务
2.1.2.1 创建ceilometer用户
$ . admin-openrc
$ openstack user create --domain default --password-prompt ceilometer
User Password:
Repeat User Password:
$ openstack role add --project service --user ceilometer admin
2.1.2.2 创建ceilometer服务实体
$ openstack service create --name ceilometer \
--description "Telemetry" metering
2.1.3 配置Gnocchi服务
2.1.3.1 创建gnocchi用户
$ openstack user create --domain default --password-prompt gnocchi
User Password:
Repeat User Password:
$ openstack role add --project service --user gnocchi admin
2.1.3.2 创建gnocchi服务实体
$ openstack service create --name gnocchi \
--description "Metric Service" metric
2.1.3.3 创建gnocchi API端点
$ openstack endpoint create --region RegionOne \
metric public http://controller3:8041
$ openstack endpoint create --region RegionOne \
metric internal http://controller3:8041
$ openstack endpoint create --region RegionOne \
metric admin http://controller3:8041
2.1.4 安装组件
2.1.4.1 安装gnocchi组件
首先安装编译所需要的工具和开发包:
# yum install -y gcc python-devel
# pip install lz4
安装包:
$ pip install gnocchi[file,postgresql,keystone]
2.1.4.2 安装ceilometer组件
安装包:
# yum install -y openstack-ceilometer-collector openstack-ceilometer-notification \
openstack-ceilometer-central python-ceilometerclient
2.1.5 配置组件
创建一些会使用到的文件夹
$ mkdir /etc/gnocchi
$ mkdir /var/log/gnocchi
2.1.5.1 配置ceilometer服务
编辑配置文件/etc/ceilometer/ceilometer.conf:
[DEFAULT]
debug = true
verbose = true
meter_dispatchers=gnocchi
event_dispatchers=gnocchi
transport_url = rabbit://openstack:pass123456@controller3
[dispatcher_gnocchi]
filter_service_activity = False
archive_policy = low
[service_credentials]
...
auth_type = password
auth_url = http://controller3:5000/v3
project_domain_name = default
user_domain_name = default
project_name = service
username = ceilometer
password = pass123456
interface = internalURL
region_name = RegionOne
2.1.5.2 配置gnocchi服务
编辑/etc/gnocchi/gnocchi.conf文件
[DEFAULT]
debug = true
verbose = true
log_dir = /var/log/gnocchi
[api]
workers = 4
auth_mode = keystone
middlewares = oslo_middleware.cors.CORS
[indexer]
url = mysql+pymysql://gnocchi:pass123456@controller3/gnocchi?charset=utf8
[keystone_authtoken]
auth_type = password
auth_url = http://controller3:5000/v3
auth_uri = http://controller3:35357/v3
memcached_servers = controller3:11211
project_domain_name = Default
user_domain_name = Default
project_name = service
username = gnocchi
password = pass123456
interface = internalURL
region_name = RegionOne
[statsd]
host = controller3
resource_id = 83746b69-87e8-4ee2-b9af-39769cc32b75
archive_policy_name = low
初始化gnocchi的indexer和storage
$ gnocchi-upgrade
编辑启动脚本/usr/bin/gnocchi-api, ,将默认的8000 API服务端口改为8041:
parser.add_argument('--port', '-p', type=int, default=8041,
help='TCP port to listen on')
运行gnocchi:
$ gnocchi-api
$ gnocchi-statsd
$ gnocchi-metricd
在admin-openrc用户权限环境脚本里添加:
export OS_AUTH_TYPE=password
创建在gnocchi中Ceilometer资源:
# ceilometer-upgrade --skip-metering-database
2.1.3 完成安装
开启Telemetry服务并且配置随系统启动:
# systemctl enable openstack-ceilometer-notification.service \
openstack-ceilometer-central.service \
openstack-ceilometer-collector.service
# systemctl start openstack-ceilometer-notification.service \
openstack-ceilometer-central.service \
openstack-ceilometer-collector.service
2.2 块服务
2.2.1 配置Cinder使用Telemetry
编辑配置文件/etc/cinder/cinder.conf:
[oslo_messaging_notifications]
...
driver = messagingv2
$ cinder-volume-usage-audit --start_time='YYYY-MM-DD HH:MM:SS' \
--end_time='YYYY-MM-DD HH:MM:SS' --send_actions
2.2.2 完成安装
在控制节点重启块存储服务:
# systemctl restart openstack-cinder-api.service openstack-cinder-scheduler.service
在存储节点重启块服务:
# systemctl restart openstack-cinder-volume.service
2.3 镜像服务
2.3.1 配置Glance使用Telemetry
编辑配置文件/etc/glance/glance-api.conf 和/etc/glance/glance-registry.conf:
[DEFAULT]
...
transport_url = rabbit://openstack:pass123456@controller3
[oslo_messaging_notifications]
...
driver = messagingv2
2.3.2 完成安装
重启镜像服务:
# systemctl restart openstack-glance-api.service openstack-glance-registry.service
2.4 网络服务
2.4.1 配置Neutron使用Telemetry
编辑配置文件 /etc/neutron/neutron.conf:
[oslo_messaging_notifications]
...
driver = messagingv2
2.4.2 完成安装
重启网络服务:
# systemctl restart neutron-server.service
3 验证操作
$ . admin-openrc
$ gnocchi resource list --type image
+--------------------------------------+-------+----------------------------------+---------+--------------------------------------+----------------------------------+----------+----------------------------------+--------------+
| id | type | project_id | user_id | original_resource_id | started_at | ended_at | revision_start | revision_end |
+--------------------------------------+-------+----------------------------------+---------+--------------------------------------+----------------------------------+----------+----------------------------------+--------------+
| a6b387e1-4276-43db-b17a-e10f649d85a3 | image | 6fd9631226e34531b53814a0f39830a9 | None | a6b387e1-4276-43db-b17a-e10f649d85a3 | 2017-01-25T23:50:14.423584+00:00 | None | 2017-01-25T23:50:14.423601+00:00 | None |
+--------------------------------------+-------+----------------------------------+---------+--------------------------------------+----------------------------------+----------+----------------------------------+--------------+
$ gnocchi resource show a6b387e1-4276-43db-b17a-e10f649d85a3
+-----------------------+-------------------------------------------------------------------+
| Field | Value |
+-----------------------+-------------------------------------------------------------------+
| created_by_project_id | aca4db3db9904ecc9c1c9bb1763da6a8 |
| created_by_user_id | 07b0945689a4407dbd1ea72c3c5b8d2f |
| creator | 07b0945689a4407dbd1ea72c3c5b8d2f:aca4db3db9904ecc9c1c9bb1763da6a8 |
| ended_at | None |
| id | a6b387e1-4276-43db-b17a-e10f649d85a3 |
| metrics | image.download: 839afa02-1668-4922-a33e-6b6ea7780715 |
| | image.serve: 1132e4a0-9e35-4542-a6ad-d6dc5fb4b835 |
| | image.size: 8ecf6c17-98fd-446c-8018-b741dc089a76 |
| original_resource_id | a6b387e1-4276-43db-b17a-e10f649d85a3 |
| project_id | 6fd9631226e34531b53814a0f39830a9 |
| revision_end | None |
| revision_start | 2017-01-25T23:50:14.423601+00:00 |
| started_at | 2017-01-25T23:50:14.423584+00:00 |
| type | image |
| user_id | None |
+-----------------------+-------------------------------------------------------------------+
$ IMAGE_ID=$(glance image-list | grep 'cirros' | awk '{ print $2 }')
$ glance image-download $IMAGE_ID > /tmp/cirros.img
$ gnocchi measures show 839afa02-1668-4922-a33e-6b6ea7780715
+---------------------------+-------------+-----------+
| timestamp | granularity | value |
+---------------------------+-------------+-----------+
| 2017-01-26T15:35:00+00:00 | 300.0 | 3740163.0 |
+---------------------------+-------------+-----------+
$ rm /tmp/cirros.img
OpenStack Ocata Telemetry 数据收集服务的更多相关文章
- OpenStack Ocata Telemetry 警告服务部署
下列操作在控制节点上进行: 1 准备条件 在配置OpenStack Telemetry服务之前,你必须创建数据库.服务凭证和API端点. 1.1 数据库 以root用户连接数据库服务器,创建glanc ...
- 探索 OpenStack 之(17):计量模块 Ceilometer 中的数据收集机制
本文将阐述 Ceilometer 中的数据收集机制.Ceilometer 使用三种机制来收集数据: Notifications:Ceilometer 接收 OpenStack 其它服务发出的 noti ...
- Openstack Ocata 公共服务端(三)
Openstack Ocata 公共服务端 mysql 安装: yum install mariadb mariadb-server mysql 安装过程省略 rabbit-server 安装包: # ...
- [译] OpenStack Ocata 版本中的 53 个新功能盘点
原文链接:https://www.mirantis.com/blog/53-new-things-to-look-for-in-openstack-ocata/ 原文作者:Nick Chase, Ra ...
- 云计算之openstack ocata 项目搭建详细方法
之前写过一篇<openstack mitaka 配置详解>然而最近使用发现阿里不再提供m版本的源,所以最近又开始学习ocata版本,并进行总结,写下如下文档 OpenStack ocata ...
- Centos7上部署openstack ocata配置详解
之前写过一篇<openstack mitaka 配置详解>然而最近使用发现阿里不再提供m版本的源,所以最近又开始学习ocata版本,并进行总结,写下如下文档 OpenStack ocata ...
- (转)Centos7上部署openstack ocata配置详解
原文:http://www.cnblogs.com/yaohong/p/7601470.html 随笔-124 文章-2 评论-82 Centos7上部署openstack ocata配置详解 ...
- 网站统计中的数据收集原理及实现(share)
转载自:http://blog.codinglabs.org/articles/how-web-analytics-data-collection-system-work.html 网站数据统计分析工 ...
- 使用nginx lua实现网站统计中的数据收集
导读网站数据统计分析工具是各网站站长和运营人员经常使用的一种工具,常用的有 谷歌分析.百度统计和腾讯分析等等.所有这些统计分析工具的第一步都是网站访问数据的收集.目前主流的数据收集方式基本都是基于ja ...
随机推荐
- linux下将编译错误输出到一个文本文件
linux下将编译错误输出到一个文本文件 command > filename 把把标准输出重定向到一个新文件中 command > > filename 把把标准输出重定向到一个文 ...
- Spring开发环境搭建
----------------siwuxie095 Spring 是运行在 Java 环境下的开发框架,因此在开发前需要 准备以下相关软件: JDK 7 或者以上版本 Eclipse 4 或以上版本 ...
- qboimathtest1 t1 魔法串
题目 小 N 最近在沉迷数学问题. 对于一个数字串 S,如果可以将它划分成两个数字 A.B,满足: 1. S=AB. 2. A.B 均不包含前导 0. 3. B 是 A 的倍数,且B / A是完全立方 ...
- vue前端+java后端 vue + vuex + koa2开发环境搭建及示例开发
vue + vuex + koa2开发环境搭建及示例开发 https://segmentfault.com/a/1190000012918518 vue前端+java后端 https://blog.c ...
- JavaScript学习系列6 -- JavaScript中的垃圾回收(内存释放)
程序开发中,涉及到的内存生命周期基本是一样的,分为以下三步 1. 分配需要的内存 2. 使用分配到的内存 3. 释放其内存 ----什么时候释放内存,以及需要释放哪些变量的内存, 就是垃圾回收机 ...
- 25. CTF综合靶机渗透(17)
靶机链接 https://www.vulnhub.com/entry/the-ether-evilscience,212 运行环境 本靶机提供了VMware的镜像,从Vulnhub下载之后解压,运行v ...
- 【mybatis在控制台打印sql语句配置】
导入jar包:http://pan.baidu.com/s/1sl8RU37 <strong>############################################### ...
- 【leetcode 76. 最小覆盖子串】解题报告
思路:滑动窗口思想 方法一:滑动窗口 string minWindow(string s, string t) { // 1.tdict记录T中每个字母与字母个数 // 2.维护一个滑动窗口字母的计数 ...
- 2018宁夏邀请赛G(DFS,动态规划【VECTOR<PAIR>】)
//代码跑的很慢四秒会超时,结尾附两秒代码(标程) #include<bits/stdc++.h>using namespace std;typedef long long ll;cons ...
- cmd与bat脚本的使用
零. bat cmd 命令大全 bat命令大全学习 一..定位到当前路径 1.定位到当前路径 2.方法二 3.win10下面 通解: %windir%\system32\cmd.exe 二 .使用命令 ...