溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

OpenStack高性能監控工具Monasca怎么用

發布時間:2021-12-29 15:39:41 來源:億速云 閱讀:160 作者:小新 欄目:安全技術

小編給大家分享一下OpenStack高性能監控工具Monasca怎么用,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

介紹

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的指標管道以及所涉及組件的交互。

OpenStack高性能監控工具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插件

OpenStack高性能監控工具Monasca怎么用

除了直接向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節點。它們在同一子網中。

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

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

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

apt-get install -y mysql-server

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

mysql -uroot -ppassword < mon_mysql.sql

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

apt-get install -y zookeeper zookeeperd zookeeper-bin service zookeeper restart

安裝和配置kafka

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

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

useradd kafka -U -r

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

description "Kafka"  start on runlevel [2345] stop on runlevel [!2345]   respawn  limit nofile 32768 32768  # If zookeeper is running on this box also give it time to start up properly pre-start script   if [ -e /etc/init.d/zookeeper ]; then       /etc/init.d/zookeeper restart   fi end script  # Rather than using setuid/setgid sudo is used because the pre-start task must run as root 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,確保配置了以下內容:

host.name=localhost advertised.host.name=localhost log.dirs=/var/kafka

創建 kafka log目錄

mkdir /var/kafka mkdir /var/log/kafka chown -R kafka. /var/kafka/ chown -R kafka. /var/log/kafka/

啟動kafka服務

service kafka start

下一步就是創建 kafka topics

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

安裝和配置 influxdb

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

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

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

安裝與配置 storm

wget http://apache.mirrors.tds.net/storm/apache-storm-0.9.6/apache-storm-0.9.6.tar.gz mkdir /opt/storm cp apache-storm-0.9.6.tar.gz /opt/storm/ cd /opt/storm/ tar xzf apache-storm-0.9.6.tar.gz ln -s /opt/storm/apache-storm-0.9.6 /opt/storm/current  useradd storm -U -r mkdir /var/storm mkdir /var/log/storm chown -R storm. /var/storm/ chown -R storm. /var/log/storm/

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

### base java.library.path: "/usr/local/lib:/opt/local/lib:/usr/lib" storm.local.dir: "/var/storm"  ### zookeeper.* storm.zookeeper.servers:   - "localhost" storm.zookeeper.port: 2181 storm.zookeeper.retry.interval: 5000 storm.zookeeper.retry.times: 29 storm.zookeeper.root: "/storm" storm.zookeeper.session.timeout: 30000  ### supervisor.* configs are for node supervisors supervisor.slots.ports:   - 6701   - 6702   - 6703   - 6704 supervisor.childopts: "-Xmx1024m"  ### worker.* configs are for task workers worker.childopts: "-Xmx1280m -XX:+UseConcMarkSweepGC -Dcom.sun.management.jmxremote"  ### nimbus.* configs are for the masteri nimbus.host: "localhost" nimbus.thrift.port: 6627 mbus.childopts: "-Xmx1024m"  ### ui.* configs are for the master ui.host: 127.0.0.1 ui.port: 8078 ui.childopts: "-Xmx768m"  ### drpc.* configs  ### transactional.* configs transactional.zookeeper.servers:   - "localhost" transactional.zookeeper.port: 2181 transactional.zookeeper.root: "/storm-transactional"  ### topology.* configs are for specific executing storms topology.acker.executors: 1 topology.debug: false  logviewer.port: 8077 logviewer.childopts: "-Xmx128m"

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

# Startup script for Storm Supervisor  description "Storm Supervisor daemon" start on runlevel [2345]  console log respawn  kill timeout 240 respawn limit 25 5  setgid storm setuid storm chdir /opt/storm/current exec /opt/storm/current/bin/storm supervisor

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

# Startup script for Storm Nimbus  description "Storm Nimbus daemon" start on runlevel [2345]  console log respawn  kill timeout 240 respawn limit 25 5  setgid storm setuid storm chdir /opt/storm/current exec /opt/storm/current/bin/storm nimbus

啟動supervisor 與 nimbus

service storm-supervisor start service storm-nimbus start

安裝monasca api python軟件包

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

pip install monasca-common pip install gunicorn pip install greenlet  # Required for both pip install eventlet  # For eventlet workers pip install gevent    # For gevent workers pip install monasca-api pip install influxdb

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

[DEFAULT] name = monasca_api    [pipeline:main] # Add validator in the pipeline so the metrics messages can be validated. pipeline = auth keystonecontext api    [app:api] paste.app_factory = monasca_api.api.server:launch    [filter:auth] paste.filter_factory = keystonemiddleware.auth_token:filter_factory    [filter:keystonecontext] paste.filter_factory = monasca_api.middleware.keystone_context_filter:filter_factory    [server:main] use = egg:gunicorn#main host = 192.168.2.23 port = 8082 workers = 1 proc_name = monasca_api

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

[DEFAULT] # logging, make sure that the user under whom the server runs has permission # to write to the directory. log_file = monasca-api.log log_dir = /var/log/monasca/api/ debug=False region = RegionOne [security] # The roles that are allowed full access to the API. default_authorized_roles = admin, user, domainuser, domainadmin, monasca-user  # The roles that are allowed to only POST metrics to the API. This role would be used by the Monasca Agent. agent_authorized_roles = admin  # The roles that are allowed to only GET metrics from the API. read_only_authorized_roles = admin  # The roles that are allowed to access the API on behalf of another tenant. # For example, a service can POST metrics to another tenant if they are a member of the "delegate" role. delegate_authorized_roles = admin  [kafka] # The endpoint to the kafka server uri = localhost:9092  [influxdb] # Only needed if Influxdb database is used for backend. # The IP address of the InfluxDB service. ip_address = localhost  # The port number that the InfluxDB service is listening on. port = 8086  # The username to authenticate with. user = monasca  # The password to authenticate with. password = tyun  # The name of the InfluxDB database to use. database_name = mon  [database] url = "mysql+pymysql://monasca:tyun@127.0.0.1/mon"   [keystone_authtoken] identity_uri = http://192.168.1.11:35357 auth_uri = http://192.168.1.11:5000 admin_password = tyun admin_user = monasca admin_tenant_name = service cafile = certfile = keyfile = insecure = false

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

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

useradd monasca -U -r mkdir /var/log/monasca mkdir /var/log/monasca/api chown -R monasca. /var/log/monasca/

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

openstack user create --domain default --password tyun monasca  openstack role add --project service --user monasca admin  openstack service create --name monasca --description "Monasca monitoring service" monitoring  create endpoint  openstack endpoint create --region RegionOne monasca public http://192.168.1.143:8082/v2.0 openstack endpoint create --region RegionOne monasca internal http://192.168.1.143:8082/v2.0 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

# Startup script for the Monasca API  description "Monasca API Python app" start on runlevel [2345]  console log respawn  setgid monasca setuid monasca 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

# Startup script for the Monasca Persister  description "Monasca Persister Python app" start on runlevel [2345]  console log respawn  setgid monasca setuid monasca 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

service monasca-persister start

安裝monasca-notificatoin

pip install --upgrade monasca-notification apt-get install sendmail

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

# Startup script for the monasca_notification  description "Monasca Notification daemon" start on runlevel [2345]  console log respawn  setgid monasca setuid monasca exec /usr/bin/python /usr/local/bin/monasca-notification

啟動通知服務

service monasca-notification start

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

service monasca-thresh start

安裝monasca-agent

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

sudo pip install --upgrade monasca-agent

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

monasca-setup -u monasca -p tyun --user_domain_id e25e0413a70c41449d2ccc2578deb1e4 --project_domain_id e25e0413a70c41449d2ccc2578deb1e4 --user monasca \  --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的說明:

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

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

克隆DevStack代碼庫。

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

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

# BEGIN DEVSTACK LOCAL.CONF CONTENTS  [[local|localrc]] DATABASE_PASSWORD=secretdatabase RABBIT_PASSWORD=secretrabbit ADMIN_PASSWORD=secretadmin SERVICE_PASSWORD=secretservice SERVICE_TOKEN=111222333444  LOGFILE=$DEST/logs/stack.sh.log LOGDIR=$DEST/logs LOG_COLOR=False  # The following two variables allow switching between Java and Python for the implementations # of the Monasca API and the Monasca Persister. If these variables are not set, then the # default is to install the Python implementations of both the Monasca API and the Monasca Persister.  # Uncomment one of the following two lines to choose Java or Python for the Monasca API. MONASCA_API_IMPLEMENTATION_LANG=${MONASCA_API_IMPLEMENTATION_LANG:-java} # MONASCA_API_IMPLEMENTATION_LANG=${MONASCA_API_IMPLEMENTATION_LANG:-python}  # Uncomment of the following two lines to choose Java or Python for the Monasca Pesister. MONASCA_PERSISTER_IMPLEMENTATION_LANG=${MONASCA_PERSISTER_IMPLEMENTATION_LANG:-java} # MONASCA_PERSISTER_IMPLEMENTATION_LANG=${MONASCA_PERSISTER_IMPLEMENTATION_LANG:-python}  # Uncomment one of the following two lines to choose either InfluxDB or Vertica. # default "influxdb" is selected as metric DB MONASCA_METRICS_DB=${MONASCA_METRICS_DB:-influxdb} # MONASCA_METRICS_DB=${MONASCA_METRICS_DB:-vertica}  # This line will enable all of Monasca. enable_plugin monasca-api https://git.openstack.org/openstack/monasca-api  # END DEVSTACK LOCAL.CONF CONTENTS

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

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

disable_all_services enable_service rabbit mysql key

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

enable_service rabbit mysql key tempest

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

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的商業數據庫??梢韵螺d免費的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設置環境,請使用:

enable_service mysql

另外,對于PostgreSQL,請使用:

enable_service postgresql

3.使用ORM支持

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

enable_service postgresql

4.加強Apache鏡像

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

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

5.使用WSGI

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

MONASCA_API_USE_MOD_WSGI=False

使用

Monasca Dashboard

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

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

在該面板中,您可以:

  • 單擊OpenStack服務名稱,以查看服務告警。

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

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

  • 監控指標在Vertica中存儲7天。

  • 配置設置存儲在MySQL中。

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

OpenStack高性能監控工具Monasca怎么用

OpenStack高性能監控工具Monasca怎么用

OpenStack高性能監控工具Monasca怎么用

OpenStack高性能監控工具Monasca怎么用

查看監控信息

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

單擊Launch Monitoring Dashboard。

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

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

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

  • 點擊告警左側導航看到報警的所有服務和設備。

  • 在每行右側的“操作”菜單上,可以單擊“Graph  metrics”以查看告警明細,并且可以顯示告警的歷史記錄和告警定義。您還可以在該告警的圖形頂部看到指標名稱。

  • 點擊OpenStack服務名稱以查看服務告警。

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

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

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

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

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

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

可選:單擊Dashboard。

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

  • 單擊圖形標題(例如,CPU),然后單擊“編輯”。

  • 更改功能以查看圖中的其他類型的信息。

可選:單擊Monasca Health。

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

OpenStack高性能監控工具Monasca怎么用

以上是“OpenStack高性能監控工具Monasca怎么用”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女