ONYX - MMC - ONYX Mapping Management Console

Différence entre versions

De MappingDoc
Ligne 5 : Ligne 5 :
 
La console centralisée de MAPPING (Mapping Management Console : MMC) donne la possibilité de monitorer plusieurs serveurs MAPPING à la fois.
 
La console centralisée de MAPPING (Mapping Management Console : MMC) donne la possibilité de monitorer plusieurs serveurs MAPPING à la fois.
 
Pour installer la console centralisée, il faut installer :
 
Pour installer la console centralisée, il faut installer :
*Installer NODEJS en prérequis pour les APIs Spooler
+
*Installer NodeJS (v14 minimum) en prérequis pour les APIs Spooler
 
*les APIs Spooler sur la machine hébergeant un ou plusieurs environnements MAPPING (un API spooler par machine)
 
*les APIs Spooler sur la machine hébergeant un ou plusieurs environnements MAPPING (un API spooler par machine)
 
*la console centralisée
 
*la console centralisée

Version du 4 novembre 2021 à 10:33

Autres langues :
English • ‎français

Introduction

La console centralisée de MAPPING (Mapping Management Console : MMC) donne la possibilité de monitorer plusieurs serveurs MAPPING à la fois. Pour installer la console centralisée, il faut installer :

  • Installer NodeJS (v14 minimum) en prérequis pour les APIs Spooler
  • les APIs Spooler sur la machine hébergeant un ou plusieurs environnements MAPPING (un API spooler par machine)
  • la console centralisée

prérequis

  • Un (ou plusieurs) serveur Mapping Onyx installé(s) et configuré(s)
  • Installer NodeJS (v14 minimum) (Node.js )


Exemple d’installation de NodeJS sur centos :

curl -sL https://rpm.nodesource.com/setup_14.x | bash - &&  yum -y install nodejs

Installation

Installation sur une VM

Command de mapping-spooler-api

La commande s’installe avec npm (gestionnaire de paquet, installé avec NodeJS). Le registre npm utilisé est privé, et nécessite donc une authentification.

Authentification
npm login --registry http://npm-registry.mappingsuite.com:4873

username : partnermappingsuite
password : (voir sur LastPass : [M-S] IT> NPM Registry for Partner )
email : partner_mappingsuite@mappingsuite.com

Installation
npm install -g mapping-spooler-api --registry http://npm-registry.mappingsuite.com:4873


Configuration

Une fois la commande installée il faut configurer chaque serveur Onyx pour définir le port http utilisé par l’api Spooler.

Ceci peut se faire en ajoutant une entrée SPOOLER_API_PORT au mapping.conf de chacun des serveurs MAPPING à monitorer.

Cette valeur doit être unique pour chaque serveur Onyx présent sur la VM.


Exemple

<block name="WEB CONFIG">
 <group>
  <element>
   <info name="[SPOOLER_API_PORT]">8080</info>
  </element>
 </group>
</block>

Note:Ces numéros de port seront utiles lors de l’ajout du serveur dans l’interface de la MMC.


Démarrage

Pour démarrer l’api http il suffit de lancer la commande mapping-spooler-api, en ayant au préalable défini la variable d’environnement MAPPING_PATH correspondant au serveur Onyx désiré.

Cela peut se faire en appelant la commande mappingenv pour sélectionner l’environnement Onyx, puis lancer la commande mapping-spooler-api.


Note:La commande mapping-spooler-api ne rend pas la main et ne dispose pas d’option natives pour s’exécuter en arrière plan. Pour lancer la commande en arrière plan on peut utiliser ce genre de chose :

mapping-spooler-api > /dev/null 2>&1 &

(Ou utiliser un outils comme supervisor) L’option SPOOLER_API_PORTdu mapping.conf est optionnelle. Si l’entrée n’est pas trouvé l’api cherchera une variable d’environnement PORT.


Avec Docker

L’API Spooler doit absolument être installé sur le même hôte que le serveur Mapping Onyx.

Il faut donc ajouter l’installation de l’api spooler à l’image docker Mapping Onyx.


Exemple de Dockerfile
# Base Image Mapping Suite Server
FROM mappingsuite.azurecr.io/onyxserver:10.2.0
# NPM Registry Token for Authentication
ARG npm_token
# Update & Supervisor (for running Onyx + Rest API in parrallel)
RUN yum -y install epel-release && \ 
   yum -y update && \
   yum -y install supervisor
# Install NodeJS
RUN curl -sL https://rpm.nodesource.com/setup_14.x | bash - && \ 
   yum -y install nodejs	
# NPM Private Registry Authentication 
RUN npm set //npm-registry.mappingsuite.com:4873//:_authToken ${npm_token}
# NPM install mapping-spooler-api with private NPM Registry
RUN npm install -g mapping-spooler-api --registry http://npm-registry.mappingsuite.com:4873
# Required env var for API REST 
ENV PORT=8080
ENV MAPPING_PATH=/apps/mapping/data/conf/mapping.conf
# Supervisor Configuration
RUN echo "[supervisord]" > /etc/supervisord.conf  && \
 echo "nodaemon=true" >> /etc/supervisord.conf  && \
 echo "[program:spooler-api]" >> /etc/supervisord.conf  && \
 echo "command=bash -c 'sleep 5 && exec mapping-spooler-api'" >> /etc/supervisord.conf  && \
 echo "[program:onyx-server]" >> /etc/supervisord.conf  && \
 echo "command=/home/docker/scripts/init.sh"  >> /etc/supervisord.conf 
EXPOSE 8080
# Run Supervisor
ENTRYPOINT ["/usr/bin/supervisord"]


Ce Dockerfile utilise un paramètre “npm_token” pour s’authentifier sur notre registre npm.

Un token peut être obtenu par la commande suivante :

curl -s -H "Accept: application/json" -H "Content-Type:application/json" -X PUT --data '{"name": "mappingdev", "password": "PASSWORD"}'  --user mappingdev:PASSWORD http://npm-registry.mappingsuite.com:4873/-/user/org.couchdb.user:mappingdev

Construction de l’image :

docker build . -t onyxserver-api --build-arg npm_token=$TOKEN