Network Security Internet Technology Development Database Servers Mobile Phone Android Software Apple Software Computer Software News IT Information

In addition to Weibo, there is also WeChat

Please pay attention

WeChat public account

Shulou

Introduction to Openstack+Monasca (1)

2025-04-06 Update From: SLTechnology News&Howtos shulou NAV: SLTechnology News&Howtos > Database >

Share

Shulou(Shulou.com)06/01 Report--

Since there is not much introduction to Monasca in Chinese, this series of articles mainly introduces the workflow and principle of Monsca components in openstack:

Introduction to Openstack+Monasca (1)

The Monasca component describes what Monasca is:

A high-performance, scalable, highly available monitoring as a service (MONaas) solution.

Use Rest API interface to store and query performance and historical data, unlike other monitoring tools that use special protocols and transmission methods, such as nagios's NSCA,Monasca only uses http.

Multi-tenant authentication, metrics submission and authentication use Keystone components. Store associated tenant ID

Metrics are defined using the key value of (key,value), which is called dimensions.

Real-time threshold and alarm for system indicators

The compound alarm setting uses a simple syntax and consists of child alarm expressions and logical operators.

The monitoring agent supports built-in system and service check results, and only nagios checks and statsd

Open source monitoring scheme based on open source technology

Monasca architecture diagram

Monasca-agent: monitoring agent, written by python, including multiple sub-components, supporting various cpu utilization, available memory, nagios plug-ins, statsd, and many services such as mysql, rabbitMQ, etc.

Monasca-api: a RESTful API interface for monitoring, targeted at the following concepts and areas:

Metrics: storage and query of a large number of metrics in real time

Statistics: query statistics for metrics

Alarm definition: addition, deletion, query and modification of alarm definition

Alarms: query and delete alarm history

Notification method: create and delete notification methods. When the alarm status changes, you can notify the user by email only.

-monasca API can be implemented through python or JAVA

Manasca-persister: consumer of message queuing delivery metrics or alarms (conceptual consumer in RPC transport), and stores metrics and alarms in the corresponding database

Monasca-transform: a transformation aggregation engine that converts the names and values of metrics, generates new metrics and passes them to the message queue, which is currently unavailable

Anomaly and Prediction Engine: it is still in the prototype stage.

Monasca-thresh: calculate the metrics and issue an alarm to the message queue when the threshold is exceeded, based on the Apache storm project (open source real-time distributed computing system)

Monasca-notification: accepts alarms from message queues and sends notifications, such as sending alarm messages. Notification Engine is based on Python.

Monasca-analytics: analysis engine that accepts alarms from message queues, detects anomalies and correlates alarms. I don't know why it's not in the architecture diagram.

Message queuing: RabbitMQ was previously supported, but moved to Kafka due to performance, scale, persistence, and high availability limitations.

Metrics and Alarms Database: support for Vertica and infuxDB, support for Cassandra is in progress

Config Database: configuration information database, currently using Mysql, support for PostgreSQL is in progress

Command line client implemented by python-monascaclient:python to manipulate monasca API

Visualization of Monitoring UI:Horizon dashboard

Ceilometer publisher: the multi-publisher plug-in provided to Ceilometer, not shown in the figure, used to convert and publish samples to monasca API. * * this piece will be added after the study of ceilometer+monasca

Except for third-party components, such as storm, most other components can go to their respective sources to view descriptions.

Message template

Monasca/Message Schema

Message queue

Based on kafka

All kinds of messages are sent or received through messageQ in Monasca. Check the message template above.

Indicator and alarm database

Vertica and influxDB are currently supported

The tables used in Vertica are as follows:

MonMetrics.Measurements: Stores the actual measurements that are sent.

MonMetrics.DefinitionDimensions

MonMetrics.Definitions

MonMetric.Dimensions

Configuration database

Mysql is currently used to store configuration information for Monasca

The SQL table used in it:

Alarm

Alarm_action

Notification_method

Sub_alarm

Sub_alarm_dimension

Posted on: blog.bobozhu.cn

Welcome to subscribe "Shulou Technology Information " to get latest news, interesting things and hot topics in the IT industry, and controls the hottest and latest Internet news, technology news and IT industry trends.

Views: 0

*The comments in the above article only represent the author's personal views and do not represent the views and positions of this website. If you have more insights, please feel free to contribute and share.

Share To

Database

Wechat

© 2024 shulou.com SLNews company. All rights reserved.

12
Report