source admin-openrc
yum install -y centos-release-openstack-train
创建user&添加到管理员角色中
openstack user create --domain default --password 123456 ceilometer
openstack role add --project service --user ceilometer admin
openstack user create --domain default --password 123456 gnocchi
openstack role add --project service --user gnocchi admin
创建gnocchi服务
openstack service create --name gnocchi --description "Metric Service" metric
创建MetricAPI
openstack endpoint create --region RegionOne metric public http://controller:8041
openstack endpoint create --region RegionOne metric internal http://controller:8041
openstack endpoint create --region RegionOne metric admin http://controller:8041
安装软件包
yum install -y openstack-gnocchi-api openstack-gnocchi-metricd python-gnocchiclient
创建数据库
mysql -uroot -p123456 -e "CREATE DATABASE gnocchi;"
mysql -uroot -p123456 -e "GRANT ALL PRIVILEGES ON gnocchi.* TO 'gnocchi'@'localhost' IDENTIFIED BY '123456';"
mysql -uroot -p123456 -e "GRANT ALL PRIVILEGES ON gnocchi.* TO 'gnocchi'@'%' IDENTIFIED BY '123456';"
修改gnocchi配置文件
/etc/gnocchi/gnocchi.conf
[DEFAULT]
debug = true
verbose = true
log_dir = /var/log/gnocchi
parallel_operations = 4
coordination_url = redis://controller:6379
[api]
auth_mode = keystone
host = 0.0.0.0
port = 8041
uwsgi_mode = http-socket
max_limit = 1000
[archive_policy]
default_aggregation_methods = mean,min,max,sum,std,count
[cors]
allowed_origin = http://controller:3000
[indexer]
url = mysql+pymysql://gnocchi:123456@controller/gnocchi
[metricd]
workers = 4
metric_processing_delay = 60
greedy = true
metric_reporting_delay = 120
metric_cleanup_delay = 300
[storage]
coordination_url = redis://controller:6379
file_basepath = /var/lib/gnocchi
driver = file
[keystone_authtoken]
region_name = RegionOne
www_authenticate_uri = http://controller:5000
auth_url = http://controller:5000/v3
memcached_servers = controller:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = gnocchi
password = 123456
安装&配置redis
yum -y install redis
vim /etc/redis.conf
daemonize yes
protected-mode no
bind controllerIP
启动服务
redis-server /etc/redis.conf
vim /etc/rc.d/rc.local
redis-server /etc/redis.conf
chmod +x /etc/rc.d/rc.local
安装uwsgi插件
yum -y install uwsgi-plugin-common uwsgi-plugin-python uwsgi
完成安装
gnocchi-upgrade
chmod -R 777 /var/lib/gnocchi
systemctl enable openstack-gnocchi-api openstack-gnocchi-metricd
systemctl start openstack-gnocchi-api openstack-gnocchi-metricd
源码修改
/usr/lib/python2.7/site-packages/gnocchiclient/shell.py 130行改为
os.environ["OS_AUTH_TYPE"] = "password"
验证
gnocchi status