Inhalt

Einführung

Voraussetzungen

Anforderungen

Verwendete Komponenten

Hintergrundinformationen

Konfigurieren

Epel-Repository installieren

Erlang installieren

Installation von Redis, RabbitMQ und Konfiguration von RabbitMQ

Sensu Repository registrieren

Installation und Konfiguration von Sensor

Aktivierung von Sensu-Services

Installieren und Konfigurieren von Uchiwa

Überprüfen, ob der Server ausgeführt wird

Checks konfigurieren

Restart Sensu

Skripts für Aktionen aktualisieren

Erstellen von Sensordaktionen

Zugehörige Informationen

Einführung

In diesem Dokument wird beschrieben, wie Sie einen Sensoren und andere Aktionen auf CloudCenter konfigurieren, um virtuelle Systeme (VMs) von Mitarbeitern zum Server hinzuzufügen oder zu entfernen.

Voraussetzungen

Anforderungen

Cisco empfiehlt, über Kenntnisse in folgenden Bereichen zu verfügen:

- CloudCenter-Aktionen

- Sensu

Verwendete Komponenten

Dieses Dokument ist nicht auf bestimmte Software- und Hardwareversionen beschränkt.

Die Informationen in diesem Dokument wurden von den Geräten in einer bestimmten Laborumgebung erstellt. Alle in diesem Dokument verwendeten Geräte haben mit einer leeren (Standard-)Konfiguration begonnen. Wenn Ihr Netzwerk in Betrieb ist, stellen Sie sicher, dass Sie die potenziellen Auswirkungen eines Befehls verstehen.

Hintergrundinformationen

Sensu ist ein Programm, das entwickelt wurde, um verschiedene Aspekte einer Maschine zu überwachen. Sie kann in CloudCenter integriert werden, um eine bessere Überwachung aller bereitgestellten VMs zu ermöglichen. Diese exemplarische Vorgehensweise wurde als Beispiel dafür entwickelt, wie Sie Sensu in CloudCenter mithilfe von Aktionen integrieren können.

Konfigurieren

Diese Funktion wurde für die Ausführung auf einer CentOS 7 VM entwickelt, die direkten Zugriff auf das Internet hat. Wenn Sie eine Verbindung zu einem Proxy herstellen müssen, führen Sie diese Konfiguration aus, bevor Sie fortfahren.

Öffnen Sie diese Ports für ein- und ausgehende Anrufe: 3000, 3030, 4567, 5671, 5672, 6379.

Stellen Sie sicher, dass der Sensu-Server über eine statische IP-Adresse verfügt.

Hinweis: Alle Codeblöcke sind so konzipiert, dass sie kopiert und in das Terminal eingefügt werden.

Epel-Repository installieren

sudo yum -y install epel-release

Erlang installieren

sudo yum -y install erlang

Installation von Redis, RabbitMQ und Konfiguration von RabbitMQ

sudo rpm --import http://www.rabbitmq.com/rabbitmq-signing-key-public.asc

sudo rpm -Uvh http://www.rabbitmq.com/releases/rabbitmq-server/v3.4.1/rabbitmq-server-3.4.1-1.noarch.rpm

sudo rabbitmq-plugins enable rabbitmq_management

sudo yum -y install redis

sudo chkconfig redis on

sudo service redis start

sudo chkconfig rabbitmq-server on

sudo /etc/init.d/rabbitmq-server start

sudo rabbitmqctl add_vhost /sensu

sudo rabbitmqctl add_user sensu secret

sudo rabbitmqctl set_permissions -p /sensu sensu ".*" ".*" ".*"

Sensu Repository registrieren

echo '[sensu]

name=sensu-main

baseurl=http://repositories.sensuapp.org/yum/el/7/x86_64/

gpgcheck=0

enabled=1' |sudo tee /etc/yum.repos.d/sensu.repo

Installation und Konfiguration von Sensor

sudo yum -y install sensu

sudo rm -f /etc/sensu/config.json.example

echo '{

"api": {

"host": "localhost",

"bind": "0.0.0.0",

"port": 4567

}

}' |sudo tee /etc/sensu/conf.d/api.json

echo '{

"client": {

"name": "sensu-server",

"address": "127.0.0.1",

"environment": "sensu",

"subscriptions": [ "linux"],

"keepalive":

{

"handler": "mailer",

"thresholds": {

"warning": 250,

"critical": 300

}

},

"socket": {

"bind": "127.0.0.1",

"port": 3030

}

}

}' |sudo tee /etc/sensu/conf.d/client.json

echo '{

"rabbitmq": {

"host": "127.0.0.1",

"port": 5672,

"vhost": "/sensu",

"user": "sensu",

"password": "secret"

}

}' |sudo tee /etc/sensu/conf.d/rabbitmq.json

echo '{

"redis": {

"host": "127.0.0.1",

"port": 6379

}

}' |sudo tee /etc/sensu/conf.d/redis.json

echo '{

"transport": {

"name": "rabbitmq",

"reconnect_on_error": true

}

}' |sudo tee /etc/sensu/conf.d/transport.json

Aktivierung von Sensu-Services

sudo chkconfig sensu-server on

sudo chkconfig sensu-client on

sudo chkconfig sensu-api on

sudo service sensu-server start

sudo service sensu-client start

sudo service sensu-api start

Installieren und Konfigurieren von Uchiwa

sudo yum -y install uchiwa

echo '{

"sensu": [

{

"name": "sensu",

"host": "localhost",

"port": 4567,

"timeout": 10

}

],

"uchiwa": {

"host": "0.0.0.0",

"port": 3000,

"refresh": 10

}

}' |sudo tee /etc/sensu/uchiwa.json

sudo chown uchiwa:uchiwa /etc/sensu/uchiwa.json

sudo chmod 664 /etc/sensu/uchiwa.json

sudo chkconfig uchiwa on

sudo service uchiwa start

Überprüfen, ob der Server ausgeführt wird

Navigieren Sie zu IPAddress: 3000/#/events

An diesem Punkt sollte ein Client namens Sensu-Server vorhanden sein.

Checks konfigurieren

echo '{

"checks": {

"check-cpu-linux": {

"handlers": ["mailer"],

"command": "/opt/sensu/embedded/bin/check-cpu.rb -w 80 -c 90 ",

"interval": 60,

"occurrences": 5,

"subscribers": [ "linux" ]

}

}

}' |sudo tee /etc/sensu/conf.d/check_cpu_linux.json

echo '{

"checks": {

"check-disk-usage-linux": {

"handlers": ["mailer"],

"type": "metric",

"command": "/opt/sensu/embedded/bin/check-disk-usage.rb",

"interval": 60,

"occurrences": 5,

"subscribers": [ "linux" ]

}

}

}' |sudo tee /etc/sensu/conf.d/check_disk_usage_linux.json

echo '{

"checks": {

"check_memory_linux": {

"handlers": ["mailer"],

"command": "/opt/sensu/embedded/bin/check-memory-percent.rb -w 80 -c 90 ",

"interval": 60,

"occurrences": 5,

"refresh": 1800,

"subscribers": [ "linux" ]

}

}

}' |sudo tee /etc/sensu/conf.d/check_memory_linux.json

sudo sensu-install -p cpu-checks

sudo sensu-install -p disk-checks

sudo sensu-install -p memory-checks

Restart Sensu

sudo service sensu-client restart && sudo service sensu-server restart && sudo service sensu-api restart

Nach einer Minute sollten drei Schecks aufgelistet sein.

Wenn Sie auf den Sensu-Server-Client klicken, werden detaillierte Informationen aus den drei Prüfungen für dieses Gerät angezeigt.

Skripts für Aktionen aktualisieren

1. Laden Sie Sensu.zip herunter.

2. Entpacken Sie die Datei.

3. Bearbeiten Sie sensuinstall.sh.

4. Ändern Sie den Leitungshost in"SensuServerIP", um die IP-Adresse des Sensu-Servers zu erhalten.

5. Bearbeiten Sie sensuuninstall.sh.

6. Ändern Sie die Zeile curl -s -i -X DELETE http://SensuServerIP:4567/clients/$cliqrNodeHostname, um die IP-Adresse des Sensu-Servers anzugeben.

7. Zippen Sie die geänderten Dateien zurück in Sensu.zip.

8. Upload in ein Repository, das der CloudCenter Manager (CCM) konfiguriert hat.

Erstellen von Sensordaktionen

Navigieren Sie zu Aktionsbibliothek, und wählen Sie Neue Aktion aus.

Typ: Befehl oder Skript

Aktionsname: Sensu registrieren

Beschreibung: Installiert den Sensu-Client und registriert ihn beim Server

Aktion ausführen: Auf virtuellem System

Objektzuordnung:

Ressourcentyp: CloudCenter bereitgestellte VMs

Anwendungsprofil: Alle

Cloud-Region: Alle

Cloud-Konto: Alle

Alle Services

Ressourcentyp: Importierte VMs (mit installiertem Agent)

Cloud-Region: Alle

Cloud-Konto: Alle

Betriebssystemtypen: Alle

Aktionsdefinition:

Aus Paket ausführen: Ja

Standort: Die von Ihnen hochgeladene Antwort und der Pfad zur Sensu.zip-Datei

Skript aus Paket: sensuinstall.sh

Speichern der Aktion und Erstellen einer weiteren neuen Aktion

Typ: Befehl oder Skript

Aktionsname: Sensu aufheben

Beschreibung: Stoppt den Sensu-Client und hebt dessen Registrierung beim Server auf

Aktion ausführen: Auf virtuellem System

Objektzuordnung:

Ressourcentyp: CloudCenter bereitgestellte VMs

Anwendungsprofil: Alle

Cloud-Region: Alle

Cloud-Konto: Alle

Alle Services

Ressourcentyp: Importierte VMs (mit installiertem Agent)

Cloud-Region: Alle

Cloud-Konto: Alle

Betriebssystemtypen: Alle

Aktionsdefinition:

Aus Paket ausführen: Ja

Standort: Die von Ihnen hochgeladene Antwort und der Pfad zur Sensu.zip-Datei

Skript aus Paket: sensuuninstall.sh

Aktion speichern

Sie können diese Aktionen jetzt auf jeder bereitgestellten VM verwenden, um sie auf Ihrem Sensu-Server zu registrieren und die Registrierung aufzuheben. Beachten Sie, dass bei der Deinstallation des Sensu-Clients der Dienst nicht deinstalliert wird, sondern er lediglich beendet und aus der Datenbank des Servers entfernt wird.

Zugehörige Informationen

- Sensu

- Aktionsbibliothek

- Technischer Support und Dokumentation - Cisco Systems