精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

OpenStack 高性能監控工具:Monasca

安全 應用安全 OpenStack
Monasca 是一個多租戶監控即服務工具,可以幫助IT團隊分析日志數據并設置告警和通知。

[[378345]]

介紹

Monasca 是一個多租戶監控即服務工具,可以幫助IT團隊分析日志數據并設置告警和通知。

OpenStack環境中的監控需求是巨大,多樣且高度復雜的。Monasca的項目任務是提供一種多租戶,高度可擴展,高性能和容錯的監控即服務解決方案。

Monasca為高級監控提供了可擴展的平臺,運營商和租戶均可使用該平臺來獲取有關其基礎架構和應用的運行狀態。

Monasca使用REST API進行高速的日志處理和查詢。它集成了流告警引擎,通知引擎和聚合引擎。

您可以使用Monasca實現的用例非常多樣。Monasca遵循微服務架構,其中幾個服務分布在多個存儲庫中。每個模塊旨在為整個監控解決方案提供離散服務,并且可以根據運營商/客戶的需求進行部署。

  • 使用Rest API接口來存儲、查詢性能和歷史數據,不同于其他監控工具使用特殊的協議和傳輸方法,如nagios的NSCA,Monasca只利用了http
  • 多租戶認證,指標的提交和認證使用Keystone組件。存儲關聯租戶ID
  • 指標使用(key,value)的鍵值來定義,稱作量度(dimensions)
  • 對系統指標進行實時閾值和告警
  • 復合告警設置使用簡單的語法,由子告警表達式和邏輯操作器組成
  • 監控代理支持內置的系統和服務的檢查結果,同時也只nagios的checks和statsd
  • 根據開源技術搭建的開源監控方案

架構

下圖概述了Monasca的指標管道以及所涉及組件的交互。

核心組件

  • monasca-agent:監控代理,python編寫,包含了多個子組件,支持各種cpu使用率、可用內存、nagios插件、statsd、以及許多服務如mysql、rabbitMQ等監控
  • monasca-api::一個用于監控的RESTful API接口,針對在以下概念和區域:
    • 指標:對于實時的大量指標的存儲和查詢
    • 統計:查詢指標的統計數據
    • 告警定義:告警定義的增刪查改
    • 告警:查詢和刪除告警歷史
    • 通知方式:創建和刪除通知方式,當告警狀態改變時可以直接郵件通知用戶—monasca API可以通過python或JAVA來實現
  • manasca-persister:消息隊列傳送指標或告警的消費者(RPC傳輸中的概念consumer),并將指標和告警存入對應的數據庫
  • monasca-transform:一個轉換聚合引擎,轉換指標的名字和值,生成新的指標傳遞給消息隊列
  • Anomaly and Prediction Engine:目前還是原型階段
  • monasca-thresh:對指標進行計算,當超過閾值是發布告警給消息隊列,基于Apache storm項目(開源實時分布式計算系統)
  • monasca-notification:接受從消息隊列傳來的告警,并發送通知,如發送告警郵件,Notification Engine基于Python
  • monasca-analytics:分析引擎,接受從消息隊列傳來的告警,進行異常檢測和告警關聯
  • 消息隊列:以前是支持RabbitMQ的,由于性能、規模、持續性和高可用的限制,轉向了Kafka
  • Metrics and Alarms Database:支持Vertica和infuxDB,對Cassandra的支持正在進行中
  • Config Database:配置信息數據庫,目前使用Mysql,對PostgreSQL的支持正在進程中
  • python-monascaclient:python實現的命令行客戶端,對monasca API進行操控
  • Monitoring UI:Horizon dashboard的可視化
  • Ceilometer publisher:提供給Ceilometer的multi-publisher插件

除了直接向API發送請求之外,還可以使用以下工具與Monasca進行交互:

  • Monasca client:CLI和Python客戶端
  • Horizon plugin:該插件將監控面板添加到Horizon
  • Grafana app:Grafana插件可查看和配置告警定義,告警和通知

Libraries:

  • monasca-common:Monasca組件中使用的通用代碼
  • monasca-statsd:StatsD兼容的庫,用于從已檢測的應用程序發送指標

Grafana集成:

  • monasca-grafana-datasource:用于Grafana的多租戶Monasca數據源
  • grafana:Grafana 4.1.2的分支版本,添加了Keystone身份驗證

第三方技術與工具

Monasca使用多種第三方技術:

  • 內部處理和中間件
    • Apache Kafka(http://kafka.apache.org):是一個分布式、分區的、多副本的、多訂閱者,基于zookeeper協調的分布式日志系統(也可以當做MQ系統),常見可以用于web/nginx日志、訪問日志,消息服務等等
    • Apache Storm(http://storm.incubator.apache.org/):Apache Storm是一個免費的開源分布式實時計算系統。通過Storm,可以輕松可靠地處理無限數據流,從而可以進行實時處理,而Hadoop可以進行批處理
    • ZooKeeper(http://zookeeper.apache.org/):由Kafka和Storm使用
    • Apache Spark:由Monasca Transform用作聚合引擎
  • 配置數據庫:
    • MySQL:支持將MySQL作為配置數據庫
    • PostgreSQL:通過Hibernate和SQLAlchemy支持Config數據庫的POSTgres
  • Vagrant(http://www.vagrantup.com/):Vagrant提供了易于配置,可重復的便攜式工作環境,該環境建立在行業標準技術之上,并由一個一致的工作流程控制,可幫助您最大程度地提高生產力和靈活性
  • Dropwizard(https://dropwizard.github.io/dropwizard/):Dropwizard將Java生態系統中穩定,成熟的庫匯集到一個簡單,輕巧的程序包中,使您可以專注于完成自身的工作任務中。Dropwizard對復雜的配置,應用程序指標,日志記錄,操作工具等提供了開箱即用的支持,使您和您的團隊可以在最短的時間內發布高質量的Web服務
  • 時間序列數據庫:
    • InfluxDB(http://influxdb.com/):一個沒有外部依賴性的開源分布式時間序列數據庫。Metrics數據庫支持InfluxDB
    • Vertica(http://www.vertica.com):具有高度可擴展性的商業企業級SQL分析數據庫。它提供了內置的自動高可用性功能,并且擅長數據庫內分析以及壓縮和存儲大量數據。提供了Vertica的免費社區版本,該版本可以存儲最大1 TB的數據,沒有時間限制,網址為https://my.vertica.com/community/。雖然不再經常用Vertrica,但Metrics數據庫支持它
    • Cassandra(https://cassandra.apache.org):Mestrics數據庫支持Cassandra

安裝

手工安裝

monasca的所有組件都可以安裝在一個節點上,例如openstack控制器節點上,也可以將其部署在多節點上。本文中,將在我的openstack集群中創建的新VM中安裝monasca-api,該VM具有關聯的浮動ip。Monasca-agent已安裝在控制器節點上。代理節點通過浮動ip將指標發布到api節點。它們在同一子網中。

安裝我們需要的軟件包和工具

  1. apt-get install -y git 
  2. apt-get install openjdk-7-jre-headless python-pip python-dev 

安裝mysql數據庫如果您在openstack控制器節點中安裝了monasca-api,則可以跳過安裝,將已安裝的msyql用于openstack服務。

  1. apt-get install -y mysql-server 

創建monasca數據庫架構,在此處下載mon.sql( https://raw.githubusercontent.com/stackforge/cookbook-monasca-schema/master/files/default/mysql/mon.sql)

  1. mysql -uroot -ppassword < mon_mysql.sql 

安裝Zookeeper安裝Zookeeper并重新啟動它。我使用本地主機接口,并且只有一個Zookeeper,因此默認配置文件不需要配置。

  1. apt-get install -y zookeeper zookeeperd zookeeper-bin 
  2. service zookeeper restart 

安裝和配置kafka

  1. wget http://apache.mirrors.tds.net/kafka/0.8.1.1/kafka_2.9.2-0.8.1.1.tgz 
  2. mv kafka_2.9.2-0.8.1.1.tgz /opt 
  3. cd /opt 
  4. tar zxf kafka_2.9.2-0.8.1.1.tgz 
  5. ln -s /opt/kafka_2.9.2-0.8.1.1/ /opt/kafka 
  6. ln -s /opt/kafka/config /etc/kafka 

創建kafka系統用戶,kafka服務將以該用戶身份啟動。

  1. useradd kafka -U -r 

在/etc/init/kafka.conf中創建kafka啟動腳本,將以下內容復制 到/etc/init/kafka.conf中并保存。

  1. description "Kafka" 
  2.  
  3. start on runlevel [2345] 
  4. stop on runlevel [!2345] 
  5.   
  6. respawn 
  7.  
  8. limit nofile 32768 32768 
  9.  
  10. # If zookeeper is running on this box also give it time to start up properly 
  11. pre-start script 
  12.   if [ -e /etc/init.d/zookeeper ]; then 
  13.       /etc/init.d/zookeeper restart 
  14.   fi 
  15. end script 
  16.  
  17. # Rather than using setuid/setgid sudo is used because the pre-start task must run as root 
  18. exec sudo -Hu kafka -g kafka KAFKA_HEAP_OPTS="-Xmx1G -Xms1G" JMX_PORT=9997 /opt/kafka/bin/kafka-server-start.sh /etc/kafka/server.properties 

配置kafka,vim /etc/kafka/server.properties,確保配置了以下內容:

  1. host.name=localhost 
  2. advertised.host.name=localhost 
  3. log.dirs=/var/kafka 

創建 kafka log目錄

  1. mkdir /var/kafka 
  2. mkdir /var/log/kafka 
  3. chown -R kafka. /var/kafka/ 
  4. chown -R kafka. /var/log/kafka/ 

啟動kafka服務

  1. service kafka start 

下一步就是創建 kafka topics

  1. /opt/kafka/bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 64 --topic metrics 
  2. /opt/kafka/bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 12 --topic events 
  3. /opt/kafka/bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 12 --topic raw-events 
  4. /opt/kafka/bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 12 --topic transformed-events 
  5. /opt/kafka/bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 12 --topic stream-definitions 
  6. /opt/kafka/bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 12 --topic transform-definitions 
  7. /opt/kafka/bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 12 --topic alarm-state-transitions 
  8. /opt/kafka/bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 12 --topic alarm-notifications 
  9. /opt/kafka/bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 12 --topic stream-notifications 
  10. /opt/kafka/bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 3 --topic retry-notifications 

安裝和配置 influxdb

  1. curl -sL https://repos.influxdata.com/influxdb.key | apt-key add - 
  2. echo "deb https://repos.influxdata.com/ubuntu trusty stable" > /etc/apt/sources.list.d/influxdb.list 
  3. apt-get update 
  4. apt-get install -y apt-transport-https 
  5. apt-get install -y influxdb 
  6.  
  7. service influxdb start 

創建 influxdb database, user, password, retention policy, 同時修改密碼。

  1. influx 
  2. CREATE DATABASE mon 
  3. CREATE USER monasca WITH PASSWORD 'tyun' 
  4. CREATE RETENTION POLICY persister_all ON mon DURATION 90d REPLICATION 1 DEFAULT 
  5. exit 

安裝與配置 storm

  1. wget http://apache.mirrors.tds.net/storm/apache-storm-0.9.6/apache-storm-0.9.6.tar.gz 
  2. mkdir /opt/storm 
  3. cp apache-storm-0.9.6.tar.gz /opt/storm/ 
  4. cd /opt/storm/ 
  5. tar xzf apache-storm-0.9.6.tar.gz 
  6. ln -s /opt/storm/apache-storm-0.9.6 /opt/storm/current 
  7.  
  8. useradd storm -U -r 
  9. mkdir /var/storm 
  10. mkdir /var/log/storm 
  11. chown -R storm. /var/storm/ 
  12. chown -R storm. /var/log/storm/ 

修改storm.yaml, vim current/storm/conf/storm.yaml

  1. ### base 
  2. java.library.path: "/usr/local/lib:/opt/local/lib:/usr/lib" 
  3. storm.local.dir: "/var/storm" 
  4.  
  5. ### zookeeper.* 
  6. storm.zookeeper.servers: 
  7.   - "localhost" 
  8. storm.zookeeper.port: 2181 
  9. storm.zookeeper.retry.interval: 5000 
  10. storm.zookeeper.retry.times: 29 
  11. storm.zookeeper.root: "/storm" 
  12. storm.zookeeper.session.timeout: 30000 
  13.  
  14. ### supervisor.* configs are for node supervisors 
  15. supervisor.slots.ports: 
  16.   - 6701 
  17.   - 6702 
  18.   - 6703 
  19.   - 6704 
  20. supervisor.childopts: "-Xmx1024m" 
  21.  
  22. ### worker.* configs are for task workers 
  23. worker.childopts: "-Xmx1280m -XX:+UseConcMarkSweepGC -Dcom.sun.management.jmxremote" 
  24.  
  25. ### nimbus.* configs are for the masteri 
  26. nimbus.host: "localhost" 
  27. nimbus.thrift.port: 6627 
  28. mbus.childopts: "-Xmx1024m" 
  29.  
  30. ### ui.* configs are for the master 
  31. ui.host: 127.0.0.1 
  32. ui.port: 8078 
  33. ui.childopts: "-Xmx768m" 
  34.  
  35. ### drpc.* configs 
  36.  
  37. ### transactional.* configs 
  38. transactional.zookeeper.servers: 
  39.   - "localhost" 
  40. transactional.zookeeper.port: 2181 
  41. transactional.zookeeper.root: "/storm-transactional" 
  42.  
  43. ### topology.* configs are for specific executing storms 
  44. topology.acker.executors: 1 
  45. topology.debug: false 
  46.  
  47. logviewer.port: 8077 
  48. logviewer.childopts: "-Xmx128m" 

創建storm supervisor 啟動腳本,vim /etc/init/storm-supervisor.conf

  1. # Startup script for Storm Supervisor 
  2.  
  3. description "Storm Supervisor daemon" 
  4. start on runlevel [2345] 
  5.  
  6. console log 
  7. respawn 
  8.  
  9. kill timeout 240 
  10. respawn limit 25 5 
  11.  
  12. setgid storm 
  13. setuid storm 
  14. chdir /opt/storm/current 
  15. exec /opt/storm/current/bin/storm supervisor 

創建Storm nimbus 啟動腳本。vim /etc/init/storm-nimbus.conf

  1. # Startup script for Storm Nimbus 
  2.  
  3. description "Storm Nimbus daemon" 
  4. start on runlevel [2345] 
  5.  
  6. console log 
  7. respawn 
  8.  
  9. kill timeout 240 
  10. respawn limit 25 5 
  11.  
  12. setgid storm 
  13. setuid storm 
  14. chdir /opt/storm/current 
  15. exec /opt/storm/current/bin/storm nimbus 

啟動supervisor 與 nimbus

  1. service storm-supervisor start 
  2. service storm-nimbus start 

安裝monasca api python軟件包

一些monasca組件同時提供python和java代碼,主要是我選擇python代碼進行部署。

  1. pip install monasca-common 
  2. pip install gunicorn 
  3. pip install greenlet  # Required for both 
  4. pip install eventlet  # For eventlet workers 
  5. pip install gevent    # For gevent workers 
  6. pip install monasca-api 
  7. pip install influxdb 

vim /etc/monasca/api-config.ini,將主機修改為您的IP地址

  1. [DEFAULT
  2. name = monasca_api 
  3.    
  4. [pipeline:main] 
  5. Add validator in the pipeline so the metrics messages can be validated. 
  6. pipeline = auth keystonecontext api 
  7.    
  8. [app:api] 
  9. paste.app_factory = monasca_api.api.server:launch 
  10.    
  11. [filter:auth] 
  12. paste.filter_factory = keystonemiddleware.auth_token:filter_factory 
  13.    
  14. [filter:keystonecontext] 
  15. paste.filter_factory = monasca_api.middleware.keystone_context_filter:filter_factory 
  16.    
  17. [server:main] 
  18. use = egg:gunicorn#main 
  19. host = 192.168.2.23 
  20. port = 8082 
  21. workers = 1 
  22. proc_name = monasca_api 

vim /etc/monasca/api-config.conf,修改以下內容

  1. [DEFAULT
  2. # logging, make sure that the user under whom the server runs has permission 
  3. to write to the directory. 
  4. log_file = monasca-api.log 
  5. log_dir = /var/log/monasca/api/ 
  6. debug=False 
  7. region = RegionOne 
  8. [security] 
  9. # The roles that are allowed full access to the API. 
  10. default_authorized_roles = admin, user, domainuser, domainadmin, monasca-user 
  11.  
  12. # The roles that are allowed to only POST metrics to the API. This role would be used by the Monasca Agent. 
  13. agent_authorized_roles = admin 
  14.  
  15. # The roles that are allowed to only GET metrics from the API. 
  16. read_only_authorized_roles = admin 
  17.  
  18. # The roles that are allowed to access the API on behalf of another tenant. 
  19. For example, a service can POST metrics to another tenant if they are a member of the "delegate" role. 
  20. delegate_authorized_roles = admin 
  21.  
  22. [kafka] 
  23. # The endpoint to the kafka server 
  24. uri = localhost:9092 
  25.  
  26. [influxdb] 
  27. Only needed if Influxdb database is used for backend. 
  28. # The IP address of the InfluxDB service. 
  29. ip_address = localhost 
  30.  
  31. # The port number that the InfluxDB service is listening on
  32. port = 8086 
  33.  
  34. # The username to authenticate with
  35. user = monasca 
  36.  
  37. # The password to authenticate with
  38. password = tyun 
  39.  
  40. # The name of the InfluxDB database to use. 
  41. database_name = mon 
  42.  
  43. [database
  44. url = "mysql+pymysql://monasca:tyun@127.0.0.1/mon" 
  45.  
  46.  
  47. [keystone_authtoken] 
  48. identity_uri = http://192.168.1.11:35357 
  49. auth_uri = http://192.168.1.11:5000 
  50. admin_password = tyun 
  51. admin_user = monasca 
  52. admin_tenant_name = service 
  53. cafile = 
  54. certfile = 
  55. keyfile = 
  56. insecure = false 

注釋掉[mysql]部分,其他部分保持默認。

創建monasca系統用戶并進入目錄

  1. useradd monasca -U -r 
  2. mkdir /var/log/monasca 
  3. mkdir /var/log/monasca/api 
  4. chown -R monasca. /var/log/monasca/ 

在openstack控制器節點上,創建monasca用戶密碼,為租戶服務中的用戶monasca分配管理員角色。

  1. openstack user create --domain default --password tyun monasca  
  2. openstack role add --project service --user monasca admin 
  3.  
  4. openstack service create --name monasca --description "Monasca monitoring service" monitoring 
  5.  
  6. create endpoint  
  7. openstack endpoint create --region RegionOne monasca public http://192.168.1.143:8082/v2.0 
  8. openstack endpoint create --region RegionOne monasca internal http://192.168.1.143:8082/v2.0 
  9. openstack endpoint create --region RegionOne monasca admin http://192.168.1.143:8082/v2.0 

192.168.1.143是我的api虛擬機地址的浮動IP,請將其更改為您的IP。

創建monasca api啟動腳本,vim /etc/init/monasca-api.conf

  1. # Startup script for the Monasca API 
  2.  
  3. description "Monasca API Python app" 
  4. start on runlevel [2345] 
  5.  
  6. console log 
  7. respawn 
  8.  
  9. setgid monasca 
  10. setuid monasca 
  11. exec /usr/local/bin/gunicorn -n monasca-api -k eventlet --worker-connections=2000 --backlog=1000 --paste /etc/monasca/api-config.ini 

安裝monasca-persister

創建monasca-persister啟動腳本

vim /etc/init/monasca-persister.conf

  1. # Startup script for the Monasca Persister 
  2.  
  3. description "Monasca Persister Python app" 
  4. start on runlevel [2345] 
  5.  
  6. console log 
  7. respawn 
  8.  
  9. setgid monasca 
  10. setuid monasca 
  11. exec /usr/bin/java -Dfile.encoding=UTF-8 -cp /opt/monasca/monasca-persister.jar monasca.persister.PersisterApplication server /etc/monasca/persister-config.yml 

啟動monasca-persister

  1. service monasca-persister start 

安裝monasca-notificatoin

  1. pip install --upgrade monasca-notification 
  2. apt-get install sendmail 

將notification.yaml復制到/etc/monasca/創建啟動腳本,vim /etc/init/monasca-notification.conf

  1. # Startup script for the monasca_notification 
  2.  
  3. description "Monasca Notification daemon" 
  4. start on runlevel [2345] 
  5.  
  6. console log 
  7. respawn 
  8.  
  9. setgid monasca 
  10. setuid monasca 
  11. exec /usr/bin/python /usr/local/bin/monasca-notification 

啟動通知服務

  1. service monasca-notification start 

安裝monasca-thresh復制monasca-thresh到/etc/init.d/復制monasca-thresh.jar到/opt/monasca-thresh/復制thresh-config.yml到/etc/monasca /并修改主機以及數據庫信息啟動monasca-thresh

  1. service monasca-thresh start 

安裝monasca-agent

在openstack控制器節點上安裝monasca-agent,以便它可以監控openstack服務進程。

  1. sudo pip install --upgrade monasca-agent 

設置monasca-agent,將用戶域ID和項目域ID更改為默認值。

  1. monasca-setup -u monasca -p tyun --user_domain_id e25e0413a70c41449d2ccc2578deb1e4 --project_domain_id e25e0413a70c41449d2ccc2578deb1e4 --user monasca \ 
  2.  --project_name service -s monitoring --keystone_url http://192.168.1.11:35357/v3 --monasca_url http://192.168.1.143:8082/v2.0 --config_dir /etc/monasca/agent --log_dir /var/log/monasca/agent --overwrite 

加載認證腳本admin-rc.sh,然后運行monasca metric-list。

DevStack安裝

運行Monasca DevStack至少需要一臺具有10GB RAM的主機。

可在此處找到安裝和運行Devstack的說明:

  1. https://docs.openstack.org/devstack/latest/ 

要在DevStack中運行Monasca,請執行以下三個步驟。

克隆DevStack代碼庫。

  1. git clone https://git.openstack.org/openstack-dev/devstack 

將以下內容添加到devstack目錄根目錄中的DevStack local.conf文件中。如果local.conf不存在,則可能需要創建它。

  1. BEGIN DEVSTACK LOCAL.CONF CONTENTS 
  2.  
  3. [[local|localrc]] 
  4. DATABASE_PASSWORD=secretdatabase 
  5. RABBIT_PASSWORD=secretrabbit 
  6. ADMIN_PASSWORD=secretadmin 
  7. SERVICE_PASSWORD=secretservice 
  8. SERVICE_TOKEN=111222333444 
  9.  
  10. LOGFILE=$DEST/logs/stack.sh.log 
  11. LOGDIR=$DEST/logs 
  12. LOG_COLOR=False 
  13.  
  14. # The following two variables allow switching between Java and Python for the implementations 
  15. of the Monasca API and the Monasca Persister. If these variables are not setthen the 
  16. default is to install the Python implementations of both the Monasca API and the Monasca Persister. 
  17.  
  18. # Uncomment one of the following two lines to choose Java or Python for the Monasca API. 
  19. MONASCA_API_IMPLEMENTATION_LANG=${MONASCA_API_IMPLEMENTATION_LANG:-java} 
  20. # MONASCA_API_IMPLEMENTATION_LANG=${MONASCA_API_IMPLEMENTATION_LANG:-python} 
  21.  
  22. # Uncomment of the following two lines to choose Java or Python for the Monasca Pesister. 
  23. MONASCA_PERSISTER_IMPLEMENTATION_LANG=${MONASCA_PERSISTER_IMPLEMENTATION_LANG:-java} 
  24. # MONASCA_PERSISTER_IMPLEMENTATION_LANG=${MONASCA_PERSISTER_IMPLEMENTATION_LANG:-python} 
  25.  
  26. # Uncomment one of the following two lines to choose either InfluxDB or Vertica. 
  27. default "influxdb" is selected as metric DB 
  28. MONASCA_METRICS_DB=${MONASCA_METRICS_DB:-influxdb} 
  29. # MONASCA_METRICS_DB=${MONASCA_METRICS_DB:-vertica} 
  30.  
  31. # This line will enable all of Monasca. 
  32. enable_plugin monasca-api https://git.openstack.org/openstack/monasca-api 
  33.  
  34. END DEVSTACK LOCAL.CONF CONTENTS 

從devstack目錄的根目錄運行“ ./stack.sh”。

如果要使用最少的OpenStack組件運行Monasca,可以將以下兩行添加到local.conf文件中。

  1. disable_all_services 
  2. enable_service rabbit mysql key 

如果您還希望安裝Tempest測試,請添加 tempest

  1. enable_service rabbit mysql key tempest 

要啟用Horizon和Monasca UI,請添加 horizon

  1. enable_service rabbit mysql key horizon tempest 

使用Vagrant

Vagrant可用于使用Vagrantfile部署運行有Devstack和Monasca的VM。安裝Vagrant后,只需在../monasca-api/devstack目錄中運行vagrant up命令。

要在devstack安裝中使用本地代碼庫,請將更改提交到本地存儲庫的master分支,然后在配置文件中修改與要使用的本地存儲庫相對應的變量file://my/local/repo/location。要使用monasca-api repo的本地實例,請將更改enable_plugin monasca-api https://git.openstack.org/openstack/monasca-api為enable_plugin monasca-api file://my/repo/is/here。這兩個設置僅在重建devstack VM時生效。

1.使用Vagrant將Vertica啟用為Metrics DB

Monasca支持同時使用InfluxDB和Vertica來存儲指標和告警狀態歷史記錄。默認情況下,在DevStack環境中啟用InfluxDB。

Vertica是Hewlett Packard Enterprise的商業數據庫。可以下載免費的Community Edition(CE)安裝程序,要啟用Vertica,請執行以下操作:

  • 注冊并下載Vertica Debian安裝程序https://my.vertica.com/download/vertica/community-edition/,并將其放在您的主目錄中。不幸的是,DevStack安裝程序沒有可以自動使用的URL,因此必須單獨下載該URL,并將其放置在安裝程序運行時可以找到它的位置。安裝程序假定此位置是您的主目錄。使用Vagrant時,您的主目錄通常將以“ /vagrant_home”掛載在VM內。
  • 修改local.conf中MONASCA_METRICS_DB變量,配置Vertica的支持,如下所示:

MONASCA_METRICS_DB=${MONASCA_METRICS_DB:-vertica}

2.使用PostgreSQL或MySQL

Monasca支持使用PostgreSQL和MySQL,因此該devstack插件也支持。啟用postgresql或mysql。

要使用MySQL設置環境,請使用:

  1. enable_service mysql 

另外,對于PostgreSQL,請使用:

  1. enable_service postgresql 

3.使用ORM支持

ORM支持可以通過MONASCA_DATABASE_USE_ORM變量來控制。但是,如果啟用了PostgreSQL(也稱為數據庫后端),則將強制提供ORM支持

enable_service postgresql

4.加強Apache鏡像

如果由于某種原因APACHE_MIRROR而無法使用,則可以通過以下方式強制執行:

  1. APACHE_MIRROR=http://www-us.apache.org/dist/ 

5.使用WSGI

Monasca-api可以使用uwsgi和gunicorn與Apache一起部署。默認情況下,monasca-api在uwsgi下運行。如果您想使用Gunicorn,請確保其中devstack/local.conf包含:

  1. MONASCA_API_USE_MOD_WSGI=False 

使用

Monasca Dashboard

安裝完成Monasca Dashboard Plugin后,可以通過web控制臺進行查看以及管理相應的監控與告警。

在操作控制臺的“Monitoring”欄,單擊“Launch Monitoring Dashboard“,這將打開在管理節點上運行的專用OpenStack Horizon門戶。

在該面板中,您可以:

  • 單擊OpenStack服務名稱,以查看服務告警。
  • 單擊服務器名稱以查看相關設備的告警。

監控信息存儲在兩個數據庫中(Vertica/influxdb與mysql)。備份監控數據時,將同時備份兩個數據庫。看到

  • 監控指標在Vertica中存儲7天。
  • 配置設置存儲在MySQL中。
  • 如果監控節點上的服務在高負載(例如15個控制網絡和200個計算節點)下停止,則消息隊列將在大約6個小時內開始清除。

 

查看監控信息

在操作控制臺中,通過從主菜單中選擇Monitoring Dashboard來打開監控UI 。

單擊Launch Monitoring Dashboard。

將打開管理設備上OpenStack Horizon中的“Monitoring”儀表板。

使用您在首次安裝過程中為操作控制臺設置的用戶名和密碼登錄。

查看告警。您可以在屏幕上過濾結果。

  • 點擊告警左側導航看到報警的所有服務和設備。
  • 在每行右側的“操作”菜單上,可以單擊“Graph metrics”以查看告警明細,并且可以顯示告警的歷史記錄和告警定義。您還可以在該告警的圖形頂部看到指標名稱。
  • 點擊OpenStack服務名稱以查看服務告警。
  • 單擊服務器名稱以查看有關設備的告警。

單擊左側導航中的”Alarm Definitions “以查看和編輯已啟用的告警的類型。

注意:請勿更改或刪除任何默認告警定義。但是,您可以添加新的告警定義。

您可以更改告警的名稱,表達式和其他詳細信息。

如果收到過多或不足的告警,則可能需要提高或降低告警閾值。

有關編寫告警表達式的信息。

可選:單擊Dashboard。

OpenStack儀表板(Grafana)打開。從該儀表板中,您可以看到OpenStack服務的運行狀況以及每個節點的CPU和數據庫使用情況的圖形表示。

  • 單擊圖形標題(例如,CPU),然后單擊“編輯”。
  • 更改功能以查看圖中的其他類型的信息。

可選:單擊Monasca Health。

將打開“ Monasca服務儀表板”。在此儀表板上,您可以看到Monasca服務運行狀況的圖形表示。

總結

Monasca作為Openstack的monitoring-as-a-service組件,目前社區和網上的資料還是比較少。本文通過作者的實踐,記錄了Monasca相關的安裝和配置以及使用的方法,

Monasca是一個可以實現IAAS到PAAS的高擴展,高性能的監控系統,其體系架構決定了它能夠輕松駕馭大集群,高負載的監控。當前我們已經逐步擯棄了ceilometer+gnocchi+aodh的組合,全面轉向Monasca。當前監控的不僅僅是云主機,云網絡,同時也監控著我們Openstack集群內部的Kubernetns集群,數據庫集群,對象存儲等PAAS軟件。

參考文章:

https://docs.openstack.org/monasca-api/latest/

https://wiki.openstack.org/wiki/Monasca

 

責任編輯:武曉燕 來源: 新鈦云服
相關推薦

2024-09-06 07:55:42

2011-04-07 13:53:25

Web工具

2009-12-23 10:29:01

WPF應用程序

2023-11-01 11:40:46

Linux高性能網絡編程工具

2009-03-31 16:41:38

網絡性能網絡監控開源

2023-12-01 07:06:14

Go命令行性能

2019-06-18 10:24:23

開源技術 趨勢

2020-05-06 07:26:55

容器性能監控云計算

2019-11-01 08:49:07

JVM監控性能

2019-08-01 09:52:46

LinuxNetData性能監控工具

2017-06-01 13:21:23

OpenStack云平臺監控

2019-03-01 11:03:22

Lustre高性能計算

2017-11-28 17:14:16

華為云

2022-03-21 14:13:22

Go語言編程

2020-07-16 08:06:53

網關高性能

2017-07-07 16:36:28

BIOIO模型 NIO

2025-05-06 01:00:00

Excel高性能內存

2020-01-07 16:16:57

Kafka開源消息系統

2017-08-07 21:10:55

MySQLUbuntusysbench

2024-12-25 14:03:03

點贊
收藏

51CTO技術棧公眾號

中文字幕日本精品| 日本一区二区不卡视频| 欧美极品美女电影一区| 国产资源中文字幕| 日韩网红少妇无码视频香港| 天堂精品久久久久| 欧美午夜久久久| 亚洲国产精品综合| 午夜精品久久久久久久96蜜桃| 影音先锋中文字幕一区| 亚洲人成在线观看| 91丨porny丨九色| 成人免费看视频网站| 国产精品久久久99| 久草精品电影| 国产免费高清av| 亚洲综合三区| 久久777国产线看观看精品| 日韩人妻一区二区三区 | 91高清免费视频| 天堂网av2018| 亚洲区小说区| 精品精品欲导航| 九九九九九国产| 最近高清中文在线字幕在线观看1| 国产精品成人在线观看| 久久综合毛片| 欧性猛交ⅹxxx乱大交| 免费成人你懂的| 欧美整片在线观看| 麻豆一区产品精品蜜桃的特点| 精品日韩一区| 日韩久久精品电影| 97中文字幕在线观看| 日本午夜精品久久久久| 色婷婷av久久久久久久| 999一区二区三区| 看黄网站在线| 国产精品―色哟哟| 欧洲精品亚洲精品| 青青草手机在线| 北岛玲一区二区三区四区| 成人免费淫片视频软件| 中文字幕精品一区二| 久久av最新网址| 91大神福利视频在线| 精品自在线视频| 欧洲精品在线播放| а√天堂资源地址在线下载| 国产无遮挡一区二区三区毛片日本| 成人久久18免费网站漫画| 亚洲一区二区天堂| 青青草精品视频| 国产精品久久久| 中国a一片一级一片| 久久一区亚洲| 人九九综合九九宗合| 日韩 欧美 中文| 亚洲中午字幕| 国产91露脸中文字幕在线| 国产区在线观看视频| 99热免费精品| 欧美最顶级的aⅴ艳星| 国产精品黄色大片| 午夜一区不卡| 国产精品极品尤物在线观看| 最近中文字幕在线免费观看| 免费美女久久99| 国产精品一区av| 这里只有精品6| 国模少妇一区二区三区| 5566中文字幕一区二区| 精品黑人一区二区三区在线观看 | 午夜视频久久久久久| 久久人人爽人人爽人人av| 高潮在线视频| 色屁屁一区二区| 亚洲xxxx2d动漫1| 亚洲青青久久| 精品国产91乱码一区二区三区 | 91猫先生在线| 国产精品高清乱码在线观看 | 91sao在线观看国产| 中文字幕在线播| 另类小说一区二区三区| 91香蕉电影院| 天天干,夜夜操| 久久精品欧美一区二区三区麻豆 | 大地资源二中文在线影视观看| 色老板在线视频一区二区| 亚洲视频777| www深夜成人a√在线| 欧美午夜在线视频| 欧洲永久精品大片ww免费漫画| 中文字幕视频免费观看| 国产精品夜夜嗨| 热舞福利精品大尺度视频| 黄色av电影在线播放| 调教+趴+乳夹+国产+精品| av五月天在线| h视频久久久| 国产一区二区三区在线观看网站 | 国产精品视频播放| 亚洲免费视频网| 欧美激情在线观看视频免费| 在线观看17c| 国产精品久久亚洲不卡| 日韩欧美电影在线| 免费看污片的网站| 亚洲午夜黄色| 国产精品自产拍在线观看| 亚洲成人第一区| 欧美激情一区二区| 精品欧美一区免费观看α√| 99精品视频在线免费播放| 日韩激情视频在线播放| 欧美成人精品欧美一| 日日夜夜精品视频免费| 国产伦精品一区二区三区四区免费| 搞黄视频免费在线观看| 欧美日韩国产激情| 韩国av中国字幕| 久久亚洲影视| 国产精品女主播视频| 少妇一区二区三区四区| 亚洲欧美日韩在线| 色婷婷成人在线| 国产成人黄色| 2018中文字幕一区二区三区| www.久久久久久| **欧美大码日韩| 午夜激情在线观看视频| 婷婷精品在线| 久久久久久一区二区三区| 国产日韩欧美中文字幕| 欧美—级在线免费片| 毛葺葺老太做受视频| 日韩一级电影| 午夜精品久久17c| 亚洲国产成人一区二区| 中文字幕一区日韩精品欧美| 香蕉视频网站入口| av中字幕久久| 国产精品a久久久久久| 偷拍自拍在线| 一本久久精品一区二区| 韩国无码一区二区三区精品| 一区在线观看| 国产一区二区中文字幕免费看| 18加网站在线| 精品嫩草影院久久| 久久久久久天堂| 东方欧美亚洲色图在线| 日韩成人手机在线| 红杏aⅴ成人免费视频| 欧美高清自拍一区| 亚洲精品一区二区三区四区| 亚洲综合色区另类av| 手机在线播放av| 国产综合网站| 国产亚洲福利社区| 亚洲精品福利电影| 国产亚洲免费的视频看| 在线观看中文字幕2021| 国产精品高清亚洲| 99国产精品免费视频| 一区二区视频欧美| 欧美精品亚洲| 国产亚洲欧美日韩精品一区二区三区| 中文字幕亚洲国产| 国产免费一区二区三区免费视频| 亚洲视频一二三区| 精品国产免费久久久久久婷婷| 亚洲免费观看| 日韩啊v在线| 精品国产不卡一区二区| 欧美激情日韩图片| 欧美日本韩国一区二区| 欧美日韩你懂得| 青娱乐国产在线视频| 成人精品在线视频观看| 成人午夜视频免费在线观看| 日韩av免费大片| 91久久精品一区| 激情黄产视频在线免费观看| 亚洲一区二区福利| 国产喷水福利在线视频| 午夜在线电影亚洲一区| 成人黄色a级片| 国产一区啦啦啦在线观看| 无码人妻少妇伦在线电影| 国产精品一区2区3区| 91在线免费网站| 波多野结衣亚洲| 麻豆一区二区在线观看| 日本亚洲一区| 欧美一区三区二区| 天天干天天干天天操| 1000精品久久久久久久久| yy1111111| 激情六月婷婷久久| 成人久久久久久久久| 中文字幕亚洲精品乱码| 农村寡妇一区二区三区| 香蕉免费一区二区三区在线观看| 国产v综合v亚洲欧美久久| 手机在线免费看av| 中文字幕在线日韩| 亚洲欧美日韩免费| 日韩欧美激情一区| 亚洲午夜精品久久久| 欧美日韩在线免费观看| √天堂中文官网8在线| 国产亚洲欧洲一区高清在线观看| www.色.com| 麻豆精品视频在线观看免费 | 日韩精品1区2区3区| 欧美一区二区激情| 亚洲一区二区三区无吗| 亚洲春色在线视频| 亚洲春色h网| 国产精品乱码视频| 国产麻豆精品| 国产欧美日韩最新| 日韩欧美精品一区二区综合视频| 久久久久久国产精品| av软件在线观看| 在线精品高清中文字幕| 黄色大片在线免费观看| 亚洲国产高清高潮精品美女| 国产精品亚洲欧美在线播放| 在线观看91精品国产入口| 国产成人在线免费视频| 亚洲国产成人精品视频| 欧美日韩精品一区二区三区视频播放 | 亚洲大全视频| 一区二区在线不卡| jvid福利在线一区二区| 欧美极品日韩| 爽爽窝窝午夜精品一区二区| 国产精品一区免费观看| 在线精品自拍| 91一区二区三区| 91精品尤物| 国产伦精品一区二区三| 国内自拍欧美| 国模精品一区二区三区| 国产主播性色av福利精品一区| 国产欧美一区二区三区另类精品| 一区二区三区四区高清视频| 成人av网站观看| 国产精品流白浆在线观看| 国产日韩久久| 欧美人与动xxxxz0oz| 欧美日本亚洲| 欧美在线观看视频一区| 亚洲一区三区| 国产精品久久久久蜜臀| 欧美大片免费播放| 欧美日韩一视频区二区| 亚洲熟妇无码一区二区三区| 99热这里只有精品8| 色婷婷综合久久久久中文字幕| 日日噜噜夜夜狠狠视频欧美人| 日韩av片网站| 国产综合久久久久久鬼色| 在线成人免费av| av资源站一区| 蜜桃无码一区二区三区| 久久久久久99久久久精品网站| 最新中文字幕av| 亚洲欧美日本韩国| 在线免费日韩av| 亚洲aaa精品| 免费视频网站在线观看入口| 欧美视频一区在线| 亚洲精品国产精| 亚洲精品少妇网址| 精品国产白色丝袜高跟鞋| 欧美区在线播放| 免费日韩电影| 91久久夜色精品国产网站| 精品国内亚洲2022精品成人| 欧美日韩在线播放一区二区| 91亚洲一区| 久久久久久久久久久视频| 麻豆免费精品视频| 久久免费精品国产| 国产精品欧美久久久久一区二区| 欧美三根一起进三p| 色综合久久久久久久| 91精品国自产| 亚洲经典中文字幕| 日本在线免费看| 亚州国产精品久久久| 国产一区二区精品调教| 97se视频在线观看| 黑人操亚洲人| 成人黄色大片网站| 麻豆久久一区二区| 日本japanese极品少妇| 日韩码欧中文字| 台湾佬中文在线| 欧美电视剧在线看免费| 在线观看免费高清完整| 午夜精品久久17c| 精品一区二区三区视频在线播放 | 亚洲a在线视频| 欧美一级片中文字幕| 岛国一区二区在线观看| 国产精品免费在线视频| 色一情一乱一乱一91av| 欧美在线 | 亚洲| 欧美精品在线第一页| h1515四虎成人| 免费一区二区三区| 亚洲网站啪啪| 一级做a爱视频| 国产精品国产三级国产有无不卡 | 亚洲免费网址| 人妻激情偷乱频一区二区三区 | 欧美日韩午夜爽爽| 久久精品国产免费| 国产一区二区三区四区在线| 黑人狂躁日本妞一区二区三区 | 国产精品麻豆| 永久免费精品视频网站| 久久久久久网| 欧美 变态 另类 人妖| 性感美女极品91精品| 亚洲欧美另类日韩| 久久99热精品| 日韩在线亚洲| 免费观看国产视频在线| 激情五月婷婷综合网| 黄色av片三级三级三级免费看| 91福利资源站| 国产综合在线观看| 国产激情综合五月久久| 欧美人与牛zoz0性行为| 日本精品一区二区三区四区| 9久草视频在线视频精品| 国产一级特黄视频| 亚洲电影免费观看高清| heyzo高清中文字幕在线| 成人在线看片| 在线日韩视频| 日韩精品视频一区二区| 亚州成人在线电影| 日本久久一级片| 欧美性受xxxx白人性爽| 国产精品自拍区| 99免费视频观看| 国产精品毛片高清在线完整版| 最近中文字幕免费观看| 日韩一区二区三区xxxx| 国产精品熟妇一区二区三区四区| 男男成人高潮片免费网站| 蜜桃av免费在线观看| 91精品国产综合久久国产大片| 久热国产在线| www.成人av.com| 免费亚洲一区| 亚洲色图 激情小说| 欧美精品久久一区二区三区| 伊人222成人综合网| 国产欧美亚洲日本| 久久精品亚洲一区二区| 欧美视频一区二区在线| 欧美一区在线视频| 川上优av中文字幕一区二区| 欧美日韩一区二区三| 精品一区二区日韩| 久久久久久久久久一区二区三区| 亚洲精品mp4| 久久天堂影院| www.亚洲视频.com| 久久综合久久综合九色| 在线观看你懂的网站| 欧美成人午夜激情在线| 欧美freesex8一10精品| 精品久久久久久中文字幕2017| 亚洲女子a中天字幕| 天堂中文字幕在线| 国产一区二区丝袜| 亚洲黄色成人| 久久精品色妇熟妇丰满人妻| 日韩欧美一区二区免费| 三妻四妾完整版在线观看电视剧 | 欧美中文字幕亚洲一区二区va在线| 欧美激情二区| 精品999在线观看| 久久99国内精品| 亚洲精品男人天堂| 久久中国妇女中文字幕| 亚洲国产欧美日韩在线观看第一区 | 日韩亚洲一区在线播放| 国产精品中文欧美| 午夜精品一区二| 欧美国产日产韩国视频|