Outils pour utilisateurs

Outils du site


all:bibles:linux:serveur:emqx

Broker EMQX


Installation

Installation en ligne Redhat

curl -s https://assets.emqx.com/scripts/install-emqx-rpm.sh | sudo bash
sudo dnf install emqx -y
sudo systemctl start emqx

Source

Installation Redhat en mode déconnecté

sur machine avec accès internet

curl -s https://assets.emqx.com/scripts/install-emqx-rpm.sh | sudo bash
sudo dnf --downloadonly --downloaddir=/home/ec2-user/pkg install emqx

sur machine en mode déconnecté

sudo dnf install emqx-5.7.0-1.el9.x86_64.rpm -y

Configuration

Cluster

Modifier le fichier /etc/emqx/emqx.conf pour mettre à jour certains paramètres :

node {
  name = "emqx@<FQDN du serveur>"
  cookie = "emqxsecretcookie"
  data_dir = "/var/lib/emqx"
}
  • name : renseigner le nom du noeud à emqx@<FQDN du serveur local>
  • cookie : renseigner la même valeur sur les différents nœuds devant joindre le cluster. Sert juste à éviter une erreur d'adressage.

clustering manuel

  • Vérifier que le paramètre discovery_strategy est à « manual »
  • Sur le node 1 chercher à joindre le node 2 :
sudo /usr/lib/emqx/bin/emqx ctl cluster join emqx@node2

Commandes

  • Vérifier l'état du cluster
sudo /usr/lib/emqx/bin/emqx ctl cluster status
  • Retrait d'un noeud
sudo /usr/lib/emqx/bin/emqx ctl cluster leave emqx@node2
  • Retrait forcé d'un nœud
sudo /usr/lib/emqx/bin/emqx ctl cluster force-leave emqx@node2

Dashboard

Par défaut

Port 18083

admin/public

Source

https

dashboard {
    listeners.http {
        bind = 18083
    }
    listeners.https {
        bind = 18084
    }
}

Traces

logs

Les fichiers de log se trouvent dans le répertoire /var/log/emqx

Niveau de logs

  • debug : Informations détaillées pour le débogage
  • info : Informations générales sur le fonctionnement
  • notice : Événements normaux mais significatifs
  • warning : Avertissements (fonctionnement normal mais attention requise)
  • error : Erreurs de fonctionnement
  • critical : Erreurs critiques
  • alert : Actions immédiates requises
  • emergency : Système inutilisable

Modification verbosité

via fichier de configuration

Modifier le fichier /etc/emqx/emqx.conf :

log {
     file {
         level = debug
     }
     console {
         level = debug
     }
}

via interface d'administration

  • Allez dans « Management / Logging »
  • Modifiez le niveau de log

via API REST

  • Pour changer le niveau de log global :
curl -X PUT "http://localhost:8081/api/v4/log/level" -H "Content-Type: application/json" -d '{"level": "debug"}' -u admin:public
  • Pour un handler spécifique
curl -X PUT "http://localhost:8081/api/v4/log/handlers/console" -H "Content-Type: application/json" -d '{"level": "debug"}' -u admin:public

Dépannage

emqx ne démarre pas

Problème

Après avoir mis les traces en mode debug on observe l'info suivante :

Creating new mnesia schema, result: {error,{'emqx@node1',{already_exists,'emqx@node1'}}}

Explication

EMQX essaye de créer un nouveau schéma Mnesia qui existe déjà pour le nœud emqx@node1

Solution

Supprimer le schéma, redémarrer EMQX et joindre à nouveau le nœud en question

sudo rm -rf /var/lib/emqx/mnesia/*
sudo systemctl restart emqx
sudo emqx_ctl cluster join emqx@node1

Haut de page

all/bibles/linux/serveur/emqx.txt · Dernière modification : de omeylhoc