Passer au contenu principal

Tâches d'administration

Mettre à jour un paramètre de configuration

Chaque reconfiguration de ThingPark enterprise nécessite l'exécution d'une mise à niveau helm de la version tpe. Après la mise à jour de vos fichiers de personnalisation Helm :

  1. Recharger les paramètres d'environnement

    # Use your release tag name to be sure to use appropriate configuration
    export RELEASE=<tag name>
    export CONFIG_REPO_BASEURL=https://raw.githubusercontent.com/actility/thingpark-enterprise-kubernetes/$RELEASE
    eval $(curl $CONFIG_REPO_BASEURL/VERSIONS)
    # Set the deployment namespace as an environment variable
    export NAMESPACE=thingpark-enterprise
    # Set the ThingPark segment chosen at capacity planning step
    # Value in l,xl,xxl
    export SEGMENT=<segment>
    # Set the targeted environment
    # Value azure,amazon
    export HOSTING=<hosting>
  2. Appliquer la configuration mise à jour

    helm upgrade -i tpe --debug --timeout 20m -n $NAMESPACE \
    actility/thingpark-enterprise --version $THINGPARK_ENTERPRISE_VERSION \
    -f values-thingpark-stack-all.yaml

Les composants impactés par les paramètres seront redémarrés progressivement.

information

De plus, si la reconfiguration implique un paramètre sous ingress-nginx, les contrôleurs tpe doivent également être mis à jour :

helm upgrade -i tpe-controllers -n $NAMESPACE \
actility/thingpark-application-controllers --version $THINGPARK_APPLICATION_CONTROLLERS_VERSION \
-f values-thingpark-stack-all.yaml

Lister les déploiements / ensembles répliqués

Lister les ensembles répliqués de ThingPark Enterprise :

$ kubectl get sts -n $NAMESPACE -l 'app.kubernetes.io/instance in (tpe,tpe-data,mongo-replicaset,kafka-cluster)'
NAME READY AGE
kafka-cluster-kafka 2/2 4d6h
kafka-cluster-zookeeper 3/3 4d6h
lrc 2/2 4d5h
mariadb-galera 3/3 4d6h
mongo-replicaset-rs0 3/3 4d6h
zookeeper 3/3 4d6h

Lister les déploiements de ThingPark Enterprise :

$ kubectl get deploy -n $NAMESPACE -l 'app.kubernetes.io/instance in (tpe)'
NAME READY UP-TO-DATE AVAILABLE AGE
locsolver 1/1 1 1 4d5h
lrc-proxy 2/2 2 2 4d5h
nssa-network-survey 1/1 1 1 4d5h
nssa-spectrum-analysis 1/1 1 1 4d5h
shellinabox 1/1 1 1 4d5h
smp-tpe 2/2 2 2 44h
sql-proxy 2/2 2 2 4d5h
support 1/1 1 1 4d5h
task-notif-ws 1/1 1 1 4d5h
thingpark-enterprise-controller 1/1 1 1 4d5h
tp-dx-admin 2/2 2 2 4d5h
tp-dx-core 2/2 2 2 4d5h
tp-gui 2/2 2 2 4d5h
tpx-flow-api 2/2 2 2 4d5h
tpx-flow-bridge 1/1 1 1 4d5h
tpx-flow-engine 2/2 2 2 4d5h
tpx-flow-hub 2/2 2 2 4d5h
tpx-flow-supervisor 1/1 1 1 4d5h
twa-admin 2/2 2 2 44h
twa-alarm-notif 1/1 1 1 4d5h
twa-core 2/2 2 2 44h
twa-dev 2/2 2 2 4d5h
twa-ran 2/2 2 2 4d5h
twa-task-res 2/2 2 2 4d5h
wireless-pki 2/2 2 2 44h
wlogger 2/2 2 2 4d5h

Tous les déploiements et ensembles répliqués doivent être PRÊTS. Sinon, consultez le guide de dépannage.

Certains autres services sont démarrés uniquement en fonction des fonctionnalités activées sur la configuration Cockpit TPE :

  • Si la fonction "DX API" est désactivée, le service suivant est arrêté : tpdx-core.
  • Si la fonction "IoT Flow" est désactivée, les services suivants sont arrêtés : tpx-flow-hub, tpx-flow-bridge, tpx-flow-api et tpx-flow-supervisor.
  • Si les fonctions "DX API" et "IoT Flow" sont désactivées, les services suivants sont arrêtés : tpdx-core, tpdx-admin, tpx-flow-hub, tpx-flow-bridge, tpx-flow-api et tpx-flow-supervisor.
  • Si la fonction "Node-RED" est désactivée, le service suivant est arrêté : node-red.

Connexion à un conteneur de pod

Pour se connecter à un conteneur en utilisant le nom du pod, par exemple pour le lrc principal :

kubectl exec -n $NAMESPACE -it lrc-0 -c lrc -- bash

Activer le mode débuggage service

Non disponible pour le moment

Affichage des journaux de conteneur

Pour afficher les journaux des conteneurs pods lrc :

# Main container logs
kubectl logs lrc-0 lrc
# Sftp serving rfregions
kubectl logs lrc-0 sftp

Affichage des journaux de déploiements ou d'ensembles répliqués

Pour afficher les journaux d'un déploiement, par exemple twa :

kubectl logs deploy/twa-core

Pour afficher les journaux d'un ensemble répliqué, par exemple lrc :

kubectl logs sts/lrc lrc

Arrêter et démarrer un déploiement ou un ensemble répliqué

Pour arrêter un ensemble répliqué, par exemple lrc :

$ kubectl scale sts lrc --replicas=0
statefulset.apps/lrc scaled

Pour démarrer un ensemble répliqué avec deux réplicas, par exemple lrc :

$ kubectl scale sts lrc --replicas=2
statefulset.apps/lrc scaled

Pour arrêter un déploiement, par exemple twa :

$ kubectl scale deploy twa-core --replicas=0
deployment.apps/twa-core scaled

Pour démarrer un déploiement avec deux réplicas, par exemple twa :

$ kubectl scale deploy twa-core --replicas=2
deployment.apps/twa-core scaled

Vérification de l'accès au Dépôt

Pour vérifier l'accès du cluster Kubernetes au registre TPE, exécutez un pod de débuggage sur l'un des nœuds de travail :

$ kubectl debug node/<node-name> -it --image=curlimages/curl -- curl -X GET -u <InstallationID>:<InstallationID> https://repository.thingpark.com/v2/thingpark-kubernetes/tpe-controller/tags/list
Creating debugging pod node-debugger-<node-name> with container debugger on node .
{"name":"thingpark-kubernetes/tpe-controller","tags":["0.3.0-1","0.3.1-1","0.3.2-1"]}
information

Mettez à jour le nom de l'image en fonction des registres autorisés à partir de votre cluster.

Si une erreur est levée, vérifiez la configuration réseau.

Si le problème persiste, contactez votre support.

Synchronisation de ThingPark Exchange (TEX)

ThingPark Exchange (TEX) est le hub d'Itinérance/peering hébergé par Actility. Il est utilisé pour interconnecter votre plateforme ThingPark avec vos partenaires d'Itinérance, ainsi qu'avec des join servers externes utilisés pour activer les capteurs LoRaWAN OTAA.
L'Itinérance doit être activée si votre instance ThingPark Enterprise va connecter des capteurs provisionnés sur des réseaux tiers ("roam-in"), ou si certains de vos capteurs provisionnés localement peuvent se connecter via des réseaux tiers ("roam-out").

Pour offrir une intégration transparente entre ThingPark Enterprise et ThingPark Exchange, une interface de plan de contrôle est prise en charge entre les deux extrémités pour mettre à jour dynamiquement la configuration TPE de son réseau peer et des join servers.
De plus, cette interface de plan de contrôle entre TPE et TEX permet la synchronisation en bande des plans de canaux RF (aussi appelés RF Regions) entre les différentes plateformes de peering disposant d'un accord d'itinérance commun.

Le statut de synchronisation TEX avec LRC peut être surveillé en invoquant la commande suivante :

kubectl exec -it lrc-0 -c lrc -- get-tex-sync-status.sh

La synchronisation TEX se fait automatiquement chaque jour mais elle peut être forcée en invoquant la commande suivante :

kubectl exec -it lrc-0 -c lrc -- force-tex-resync.sh

Vous pouvez également exporter les RF regions. Cela permet de télécharger un fichier tgz contenant toutes les RF regions correspondant à la ou les bandes ISM configurées :

  1. Depuis une première console shell, démarrez un transfert de port :

    $ kubectl port-forward svc/twa-admin 8080
    Forwarding from 127.0.0.1:8080 -> 8080
  2. Et dans une deuxième, utilisez la commande curl suivante :

    curl -o rfRegions.tgz http://localhost:8080/thingpark/wirelessAdmin/rest/systems/operators/1/rfRegions/export