- Beautify, re-indent, format code in a lot of doc files
- Use relative URLs instead of absolute github URLs
- Some absolute github urls are not corrected yet:
+ URL for enabling vitrage in devstack
+ URL for enabling vitrage in horizon
- Update year number in doc/source/config.py from 2013 to 2016
My thought: We should have a blueprint
to create more concise and easy to access like other project
(nova: http://docs.openstack.org/developer/nova/).
Currently, that site for vitrage has not existed yet.
Notes: Change github URLs to relative URLs
(or absolute URLs in docs.openstack.org/developers)
will not work correctly
if we do not have official documentation site.
Hence, other people cannot follow the link to html page
if they read vitrage documentation in github mirror.
Change-Id: Ifff8355c7e5291f68a7592d1617644053d790d5e
3.6 KiB
Zabbix-Vitrage Gateway
Consolidate Zabbix alerts from across multiple sites into a single "at-a-glance" console by using a custom Zabbix [alertscript](https://www.zabbix.com/documentation/3.0/manual/config/notifications/media/script).
Installation
Note: Don't try to use zabbix with docker image to
test, because zabbix_vitrage.py requires some openstack
libraries (oslo.messaging and
oslo.config).
Copy the zabbix_vitrage.py script into the Zabbix
servers' AlertScriptsPath directory which is by default
/usr/lib/zabbix/alertscripts and make it executable:
$ wget https://raw.githubusercontent.com/openstack/vitrage/master/vitrage/datasources/zabbix/auxiliary/zabbix_vitrage.py
$ cp zabbix_vitrage.py /usr/lib/zabbix/alertscripts/
$ chmod 755 /usr/lib/zabbix/alertscripts/zabbix_vitrage.pyInstall oslo.messaging and oslo.config to
zabbix host (may require root):
$ pip install oslo.messaging oslo.configZabbix web ui configuration
To forward zabbix events to Vitrage a new media script needs to be created and associated with a user. Follow the steps below as a Zabbix Admin user:
Create a new media type [Admininstration > Media Types > Create Media Type]
Name: Vitrage Notifications
Type: Script
Script name: zabbix_vitrage.py
Script parameters:
*1st line:* {ALERT.SENDTO}
*2nd line:* {ALERT.SUBJECT}
*3rd line:* {ALERT.MESSAGE}Modify the Media for the Admin user [Administration > Users]
Type: Vitrage Notifications
Send to:rabbit://rabbit_user:rabbit_pass@127.0.0.1:5672/<--- Vitrage message bus url
When active: 1-7,00:00-24:00
Use if severity: tick all options
Status: EnabledNote: Default
rabbit_user/rabbit_passfor devstack rabbitmq isstackrabbit/secretConfigure Action [Configuration > Actions > Create Action > Action]
Name: Forward to Vitrage
Default Subject: {TRIGGER.STATUS}Add an operation:
*Send to Users:* Admin
*Send only to:* Vitrage NotificationsDefault Message:
host={HOST.NAME1}
hostid={HOST.ID1}
hostip={HOST.IP1}
triggerid={TRIGGER.ID}
description={TRIGGER.NAME}
rawtext={TRIGGER.NAME.ORIG}
expression={TRIGGER.EXPRESSION}
value={TRIGGER.VALUE}
priority={TRIGGER.NSEVERITY}
lastchange={EVENT.DATE} {EVENT.TIME}To send events add under the Conditions tab:
(A) Maintenance status not in maintenance
For a full list of trigger macros see https://www.zabbix.com/documentation/3.0/manual/appendix/macros/supported_by_location
To test zabbix events and vitrage alarms, please see zabbix trigger documentation: https://www.zabbix.com/documentation/3.2/manual/config/triggers/trigger
Vitrage configuration
- Add zabbix to list of datasources in
/etc/vitrage/vitrage.conf
[datasources]
types = zabbix,nova.host,nova.instance,nova.zone,static_physical,aodh,cinder.volume,neutron.network,neutron.port,heat.stack
- Add following section to
/etc/vitrage/vitrage.conf
[zabbix]
url = http://<ip>/zabbix # URL to zabbix
password = zabbix
user = admin
config_file = /etc/vitrage/zabbix_conf.yaml
- Create
/etc/vitrage/zabbix_conf.yamlwith this content
zabbix: - zabbix_host: Zabbix server type: nova.host name: Zabbix server
- Restart vitrage service in devstack/openstack