4 votes

Pourquoi Uchiwa n'est-il pas capable de surveiller le centre de données sous CentOS7 ?

Ce poste combiné avec Installer Sensu avec YUM a été utilisé afin d'installer, de configurer et de démarrer Sensu et les services associés :

sudo yum install -y erlang && \
sudo rpm -Uvh http://www.rabbitmq.com/releases/rabbitmq-server/v3.5.0/rabbitmq-server-3.5.0-1.noarch.rpm && \
sudo yum install -y redis && \
echo '[sensu]
name=sensu
baseurl=http://sensu.global.ssl.fastly.net/yum/$basearch/
gpgcheck=0
enabled=1' | sudo tee /etc/yum.repos.d/sensu.repo && \
sudo yum install -y sensu && \
sudo yum install -y uchiwa && \
for s in rabbitmq-server redis.service sensu-server sensu-api uchiwa; do sudo systemctl restart $s; done && \
sudo rabbitmqctl add_vhost /sensu && \
sudo rabbitmqctl add_user sensu secret && \
sudo rabbitmqctl set_permissions -p /sensu sensu ".*" ".*" ".*"

Analyse

  • Naviguer vers :3000 montre le tableau de bord uchiwa et indique Connection error. Is the Sensu API running?
  • /var/log/sensu/sensu-api.log indique

{"timestamp":"2016-07-03T22:58:58.532905+0000","level":"warn","message":"config file does not exist or is not readable","file":"/etc/sensu/config.json"}
{"timestamp":"2016-07-03T22:58:58.533069+0000","level":"warn","message":"ignoring config file","file":"/etc/sensu/config.json"}
{"timestamp":"2016-07-03T22:58:58.533137+0000","level":"warn","message":"loading config files from directory","directory":"/etc/sensu/conf.d"}
{"timestamp":"2016-07-03T22:58:58.712175+0000","level":"info","message":"api listening","protocol":"http","bind":"0.0.0.0","port":4567}

  • Le fichier config.json ne semble pas exister ( /etc/sensu/config.json: No such file or directory )
  • Téléchargement de l'exemple config.json et le redémarrage de sensu-api n'a pas résolu le problème

{
  "rabbitmq": {
    "host": "localhost",
    "vhost": "/sensu",
    "user": "sensu",
    "password": "secret"
  },
  "redis": {
    "host": "localhost",
    "port": 6379,
    "password": "secret"
  }
}

  • le port redis est en écoute :

LISTEN     0      128    127.0.0.1:6379                     *:*

  • le port rabbitmq aussi :

LISTEN     0      100          *:4567                     *:* 
  • Uchiwa ne peut pas se connecter aux centres de données.

{
  "sensu": [
    {
      "name": "Site 1",
      "host": "localhost",
      "port": 4567,
      "timeout": 10
    },
    {
      "name": "Site 2",
      "host": "localhost",
      "port": 4567,
      "ssl": false,
      "path": "",
      "user": "",
      "pass": "",
      "timeout": 10
    }
  ],
  "uchiwa": {
    "host": "0.0.0.0",
    "port": 3000,
    "refresh": 10
  }
}

{"timestamp":"2016-07-03T23:34:32.990067621Z","level":"warn","message":"GET http://localhost:4567/stashes returned: 500 Internal Server Error"}
{"timestamp":"2016-07-03T23:34:32.990102095Z","level":"warn","message":"Connection failed to the datacenter Site 1"}
{"timestamp":"2016-07-03T23:34:32.990115588Z","level":"info","message":"Updating the datacenter Site 2"}
{"timestamp":"2016-07-03T23:34:32.991462585Z","level":"warn","message":"GET http://localhost:4567/stashes returned: 500 Internal Server Error"}
{"timestamp":"2016-07-03T23:34:32.991492978Z","level":"warn","message":"Connection failed to the datacenter Site 2"}

  • naviguer vers <IPADDRESS>:4567 résulte en :

{"error":"redis and transport connections not initialized"}

  • réponses de redis

sudo redis-cli ping
PONG

  • le mot de passe redis a été défini, mais le problème persiste

sudo redis-cli
127.0.0.1:6379> auth secret
OK

3voto

Kelly Bang Points 101

J'ai d'abord réussi à faire fonctionner RabbitMQ en configurant correctement le SSL dans rabbitmq.json, en montrant un exemple sur le site Web de RabbitMQ. Site web de Sensu . Après cela, il a seulement dit : "erreur" : "non connecté à redis"

J'ai ensuite fait fonctionner Redis en passant de "localhost" dans la configuration de sensu à "127.0.0.1". Comme Redis n'écoutait pas sur IPv6 et que "localhost" résolvait à la fois ::1 et 127.0.0.1, cela n'a pas fonctionné correctement.

Il s'agit d'une nouvelle installation sur Debian 8.

1voto

Jaber Zare Points 26

Concise

El sensu-client semble nécessiter un fonctionnement rabbitmq-server . Comme ce courtier en messages ne semblait pas fonctionner, ni la sensu-client n'a pu démarrer, et le tableau de bord d'Uchiwa n'a pu le surveiller.

Verbose

Si l'erreur suivante se produit :

{"error":"redis and transport connections not initialized"}

est affiché et redis est en train d'écouter, veuillez vérifier que rabbitmq est en cours d'exécution et vérifiez le port rabbitmq en utilisant rabbitmq-status :

sudo systemctl status rabbitmq-server

Exemple

Aujourd'hui, l'erreur ci-dessus s'est affichée et lorsque le port rabbitmq a été vérifié, il est apparu qu'un certain port n'écoutait pas :

{listeners,[{clustering,25672,"::"},{amqp,5672,"::"}},

Comme SSL a été configuré, le port 5671 devrait être configuré dans /etc/rabbitmq.config . Une fois que le serveur messagebroker a été redémarré, le port ssl 5671 a commencé à écouter et le problème a été résolu :

{listeners,[{clustering,25672,"::"},{amqp,5672,"::"},{'amqp/ssl',5671,"::"}]},

ma configuration rabbitmq est :

[
{rabbit, [ 
{ssl_listeners, [5671]},
{ssl_options, [{cacertfile,"/etc/rabbitmq/ssl/cacert.pem"},
               {certfile,"/etc/rabbitmq/ssl/cert.pem"},
               {keyfile,"/etc/rabbitmq/ssl/key.pem"},
               {verify,verify_peer},
               {fail_if_no_peer_cert,true}]}
 ]}
  ].

-1voto

Dael Points 1

Vérifiez que sensu-api est configuré et fonctionne. Sur centos-7.x systemctl status sensu-api
pour commencer le service systemctl start sensu-api

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X