--tenant nommant la même instance aux deux installateurs, et ce que --vhost apporte. Cette page
est la même information rassemblée en une seule exécution, pour le moment où vous avez réellement un
second client à ajouter.
Rien ici n’est partagé avec les tenants déjà présents sur l’hôte à l’exception des paquets,
Java, Node et PostgreSQL eux-mêmes — voir Ce dont chaque instance a besoin en
propre. Un nouveau tenant
obtient sa propre base de données, ses propres ports, ses propres jetons opérationnels et son
propre choix de compte de service.
1
Choisir le nom et la disposition
Un mot, utilisé identiquement sur les deux installateurs — c’est ce qui permet à Deux dispositions, choisissez-en une :
update
de retrouver la bonne instance plus tard sans que vous ayez à retaper les chemins.Optez pour
--vhost lorsque le compte SSH ou SFTP propre au tenant existe déjà sous /home —
c’est ce qui isole la passerelle des fichiers de ce compte, et pas seulement un chemin
différent. Voir Un hôte virtuel.2
Réserver les ports
Chaque tenant existant sur l’hôte détient déjà un port SMPP, un port HTTP et un port ops.
Choisissez une plage avec laquelle le nouveau ne peut pas entrer en collision :
3
Sa propre base de données
Un tenant, une base de données — jamais un schéma partagé avec les lignes d’un autre tenant.Un rôle séparé par tenant n’est pas requis — un seul rôle
fireflo peut posséder plusieurs
bases — mais cela signifie qu’un identifiant divulgué pour un tenant ne peut pas lire ceux d’un
autre. Voir La base de données.4
Installer la passerelle
--vhost /home/$TENANT --user $TENANT — les deux,
conformément aux avertissements de l’étape 1.Il demande d’abord et vous montre chaque décision avant d’écrire quoi que ce soit — ajoutez
--yes uniquement une fois que vous avez confiance dans la réponse qu’il imprimerait.
--bootstrap écrit le minimum dont a besoin une base de données neuve : une table de routage
default, une table MESSAGE vide, un écouteur SMPP, un identifiant. Le mot de passe qu’il
génère s’affiche une seule fois ; capturez-le.Les drapeaux prennent des valeurs séparées par un espace.
--vhost=/home/$TENANT est rejeté
comme option inconnue plutôt qu’analysé, sur les deux installateurs.fireflo-install.5
Vérifier avant d'ajouter quoi que ce soit
Le code de sortie 4 ici est attendu et correct : le déploiement est sain, il n’a
simplement encore rien vers quoi router. Il devient 0 une fois qu’un fournisseur et une règle
existent, à la suite de l’étape suivante — voir Première
configuration.
6
Installer le panneau
--vhost /home/$TENANT --user $TENANT et pointez
--gateway-conf-dir vers /home/$TENANT/gateway/conf. Installez le panneau après la
passerelle — il lit ce répertoire.Trois choses qu’il détermine tout seul à partir de --gateway-conf-dir : les deux jetons
opérationnels, le METRICS_DATABASE_URL en lecture seule, et l’URL ops — qu’il construit à
partir du FIREFLO_OPS_PORT enregistré de cette passerelle, de sorte qu’un --ops-port
non par défaut ne nécessite aucun deuxième drapeau ici.7
TLS en amont, une origine par tenant
Le panneau parle HTTP en clair sur
--port (par défaut 3000, et il doit être unique par
tenant sur un hôte partagé — passez-en un explicitement pour chaque tenant après le
premier). Placez nginx ou équivalent devant, terminant TLS sur un nom d’hôte propre à ce
tenant :--public-url ci-dessus doit correspondre exactement à server_name — il est écrit comme
AUTH_URL, et sans lui une déconnexion redirige vers localhost peu importe ce que le proxy
transmet. Voir TLS en amont.8
Terminer la configuration
bootstrap laisse délibérément de côté un fournisseur et un tarif — personne d’autre ne peut
deviner les identifiants d’un fournisseur, et un prix inventé facturerait silencieusement
alors qu’un prix absent apparaît comme non tarifé. Ajoutez les deux, puis une règle de routage
nommant le fournisseur, puis le premier identifiant client de ce tenant — dans cet ordre, et
pourquoi, à Première configuration.9
Envoyer un message, comme le ferait un client
200 signifie accepté, facturé et mis en file — surveillez l’enregistrement d’appel dans
le panneau de ce tenant pour le résultat de la livraison.Ce qui est vraiment nouveau, versus partagé
Voir aussi
Plusieurs instances sur un même hôte
Le mécanisme que
--tenant et --vhost implémentent, et la garantie « la mise à jour est une recherche ».Première configuration, dans l'ordre
Ce que
bootstrap écrit, et l’ordre qui donne un sens au reste.