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 :
-
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> -
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.
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"]}
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 :
-
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 -
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