在控制节点上执行

#!/bin/bash
MYSQL_ROOT_PASSWD='m4r!adbOP'
GNOCCHI_PASSWD='gnocchi1234!'
CEILOMETER_PASSWD='ceilometer1234!'
RABBIT_PASSWD='0penstackRMQ'
AODH_PASSWD='aodh1234!'
controllerHost='controller'
OPENSTACK_RELEASE='queens'
controller-gnocchi(){
mysql -uroot -p${MYSQL_ROOT_PASSWD} << EOF
      DROP DATABASE IF EXISTS gnocchi;
      CREATE DATABASE gnocchi;
      GRANT ALL PRIVILEGES ON gnocchi.* TO 'gnocchi'@'localhost' IDENTIFIED BY '${GNOCCHI_PASSWD}';
      GRANT ALL PRIVILEGES ON gnocchi.* TO 'gnocchi'@'%' IDENTIFIED BY '${GNOCCHI_PASSWD}';
EOF
source ~/admin-openrc
openstack user create --domain default --password ${GNOCCHI_PASSWD} gnocchi
openstack role add --project service --user gnocchi admin
openstack service create --name gnocchi --description "Metric Service" metric
openstack endpoint create --region RegionOne metric public http://${controllerHost}:8041
openstack endpoint create --region RegionOne metric internal http://${controllerHost}:8041
openstack endpoint create --region RegionOne metric admin http://${controllerHost}:8041
yum -y install openstack-gnocchi-api openstack-gnocchi-metricd python2-gnocchiclient
cp /etc/gnocchi/gnocchi.conf /etc/gnocchi/gnocchi.conf_bak
openstack-config --set /etc/gnocchi/gnocchi.conf DEFAULT log_dir /var/log/gnocchi
openstack-config --set /etc/gnocchi/gnocchi.conf api auth_mode keystone
openstack-config --set /etc/gnocchi/gnocchi.conf database backend sqlalchemy
openstack-config --set /etc/gnocchi/gnocchi.conf indexer url mysql+pymysql://gnocchi:${GNOCCHI_PASSWD}@${controllerHost}/gnocchi
openstack-config --set /etc/gnocchi/gnocchi.conf storage driver file
openstack-config --set /etc/gnocchi/gnocchi.conf storage file_basepath /var/lib/gnocchi
openstack-config --set /etc/gnocchi/gnocchi.conf keystone_authtoken auth_uri http://${controllerHost}:5000
openstack-config --set /etc/gnocchi/gnocchi.conf keystone_authtoken auth_url http://${controllerHost}:35357
openstack-config --set /etc/gnocchi/gnocchi.conf keystone_authtoken memcached_servers ${controllerHost}:11211
openstack-config --set /etc/gnocchi/gnocchi.conf keystone_authtoken auth_version 3
openstack-config --set /etc/gnocchi/gnocchi.conf keystone_authtoken interface internalURL
openstack-config --set /etc/gnocchi/gnocchi.conf keystone_authtoken region_name RegionOne
openstack-config --set /etc/gnocchi/gnocchi.conf keystone_authtoken project_domain_name default
openstack-config --set /etc/gnocchi/gnocchi.conf keystone_authtoken user_domain_name default
openstack-config --set /etc/gnocchi/gnocchi.conf keystone_authtoken project_name service
openstack-config --set /etc/gnocchi/gnocchi.conf keystone_authtoken auth_type password
openstack-config --set /etc/gnocchi/gnocchi.conf keystone_authtoken username gnocchi
openstack-config --set /etc/gnocchi/gnocchi.conf keystone_authtoken password ${GNOCCHI_PASSWD}
gnocchi-upgrade
cat <<EOF> /etc/httpd/conf.d/10-gnocchi_wsgi.conf
Listen 8041
<VirtualHost *:8041>
    ServerName controller
    DocumentRoot "/var/www/cgi-bin/gnocchi"
    <Directory "/var/www/cgi-bin/gnocchi">
      Options Indexes FollowSymLinks MultiViews
      AllowOverride None
      Require all granted
    </Directory>
    ErrorLog "/var/log/httpd/gnocchi_wsgi_error.log"
    ServerSignature Off
    CustomLog "/var/log/httpd/gnocchi_wsgi_access.log" combined
    SetEnvIf X-Forwarded-Proto https HTTPS=1
    WSGIApplicationGroup %{GLOBAL}
    WSGIDaemonProcess gnocchi display-name=gnocchi_wsgi group=gnocchi processes=8 threads=8 user=gnocchi
    WSGIProcessGroup gnocchi
    WSGIScriptAlias / "/var/www/cgi-bin/gnocchi/app"
</VirtualHost>
EOF
mkdir /var/www/cgi-bin/gnocchi/
separateversion='queens'
echo $OPENSTACK_RELEASE $separateversion | awk '$OPENSTACK_RELEASE >= $separateversion {/usr/bin/cp -a /usr/lib/python2.7/site-packages/gnocchi/rest/wsgi.py /var/www/cgi-bin/gnocchi/app}'
echo $OPENSTACK_RELEASE $separateversion | awk '$OPENSTACK_RELEASE <  $separateversion {/usr/bin/cp -a /usr/lib/python2.7/site-packages/gnocchi/rest/app.wsgi /var/www/cgi-bin/gnocchi/app}'chown -R gnocchi.gnocchi /var/www/cgi-bin/gnocchi
systemctl restart httpd
systemctl enable openstack-gnocchi-metricd
systemctl restart openstack-gnocchi-metricd && systemctl status openstack-gnocchi-metricd
}

安装gnocchi的更多相关文章

  1. OpenStack Ocata Telemetry 数据收集服务

    1 安装配置计算服务 在所有计算节点上: 1.1 安装配置组件 安装包: # yum install -y openstack-ceilometer-compute 编辑配置文件/etc/ceilom ...

  2. OpenStack Telemetry系统架构及实践

    1. 概述 早期OpenStack的计量功能由Ceilometer项目负责,后来Ceilometer一分为四,每个项目负责一个方面的工作.不得不说这是OpenStack开发中的一个特色,比如Cinde ...

  3. packstack安装ironic

    KVM Centos7.3虚机 安装openstack Pike版本, 其它版本安装方法类似. packstack目前对NetworkManager 还不支持,我们修改下配置: systemctl d ...

  4. ansible无网络安装openstack(Newton)

    概要 apt使用本地源,pip使用本地源 网络环境 物理机环境 网络名 网络地址 VLAN br-ex 192.168.200.250/24 90 br-mgmt 92.0.0.100/24 92 a ...

  5. 使用packstack安装pike版本的openstack

    最近由于工作需要,需要调研安装pike版本的gnocchi.由于ceilometer与gnocchi版本的强相关性,所以需要部署一个同一版本的openstack环境,在同事的推荐下使用了packsta ...

  6. 如何一步步使用国内yum源一键安装openstack-ocata版本基于centos7

    写在前面的话,在网上看了一个国外的一键安装视频,我也照着做,结果出现很多错误,现在把坑解决了,照着做肯定能安装成功的 环境 virtualhost 下的centos7 配置 双网卡 一个10网段,na ...

  7. docker——容器安装tomcat

    写在前面: 继续docker的学习,学习了docker的基本常用命令之后,我在docker上安装jdk,tomcat两个基本的java web工具,这里对操作流程记录一下. 软件准备: 1.jdk-7 ...

  8. 网络原因导致 npm 软件包 node-sass / gulp-sass 安装失败的处理办法

    如果你正在构建一个基于 gulp 的前端自动化开发环境,那么极有可能会用到 gulp-sass ,由于网络原因你可能会安装失败,因为安装过程中部分细节会到亚马逊云服务器上获取文件.本文主要讨论在不变更 ...

  9. Sublime Text3安装JsHint

    介绍 Sublime Text3使用jshint依赖Nodejs,SublimeLinter和Sublimelinter-jshint. NodeJs的安装省略. 安装SublimeLinter Su ...

随机推荐

  1. esxi克隆虚拟机

    1.->选中虚拟机->导出(需要关闭虚拟机电源) 此时会下载下两个文件: 2.新建虚拟机 ->从OVF或OVA文件部署虚拟机 然后创建虚拟机,选择第二项 然后填入新虚拟机名称,并把下 ...

  2. python--openCV--图像处理

    安装 pip3 install opencv-python 图像处理: import cv2 #导入opencv库 import numpy as np img = cv2.imread(" ...

  3. MFC 类内线程函数

    线程函数必须是全局函数或静态成员函数. 非静态成员函数都有一个隐含的参数用于接收所属类的this指针,一般情况下调用时参数不匹配.所以static可以干掉隐含的参数. 但是没有了this,类内的函数就 ...

  4. trigger(type,[data]) 在每一个匹配的元素上触发某类事件。

    trigger(type,[data]) 概述 在每一个匹配的元素上触发某类事件.大理石平台价格表 这个函数也会导致浏览器同名的默认行为的执行.比如,如果用trigger()触发一个'submit', ...

  5. prevAll([expr]) 查找当前元素之前所有的同辈元素

    prevAll([expr]) 概述 查找当前元素之前所有的同辈元素 可以用表达式过滤.大理石构件维修 参数 exprStringV1.2 用于过滤的表达式 示例 描述: 给最后一个之前的所有div加 ...

  6. sourceinsight 头文件和函数注释的宏实现

    插入文件注释代码实现 macro InsertFileComment() { hbuf = GetCurrentBuf() ln = szName = "pengchao" szC ...

  7. 互联网上最可怕的搜索引擎:shodan

    互联网上最可怕的搜索引擎:shodan 介绍:http://tech.qq.com/a/20130410/000013.htm

  8. Mac下Tomcat安装&配置&80默认端口设置

    序言: 在学习Tomcat时, 部署虚拟服务主机时,遇到了无响应的情况.原以为是应为Tomcat默认端口8080在调整至(进行端口转发设置)默认端口80会和Mac自带Apache起冲突.但是也有同学使 ...

  9. Ubuntu16.04下安装多版本cuda和cudnn

    Ubuntu16.04下安装多版本cuda和cudnn 原文 https://blog.csdn.net/tunhuzhuang1836/article/details/79545625 前言 因为之 ...

  10. Transformer模型总结

    Transformer改进了RNN最被人诟病的训练慢的缺点,利用self-attention机制实现快速并行. 它是由编码组件.解码组件和它们之间的连接组成. 编码组件部分由一堆编码器(6个 enco ...