Inscription et configuration
Inscription d'instance
L'inscription de l'instance consiste à obtenir un ID d'installation valide et la licence correspondante. Cela vous permettra de :
- Accéder aux Dépôts de logiciels ThingPark Enterprise.
- Obtenez le fichier de licence conformément à la configuration achetée en termes de nombre de capteurs et de passerelles autorisés à provisionner, ainsi que la date de validité.
Entrées
Pour obtenir votre ID d'installation et la licence correspondante, fournissez à votre gestionnaire de licences :
-
l'identifiant de l'objet de l'espace de noms
kube-systemdu cluster Kubernetes en utilisant la commande suivante :kubectl get ns kube-system -o jsonpath='{.metadata.uid}' -
le nom de l'espace de noms Kubernetes dans lequel vous allez déployer ThingPark Enterprise
Obtenez l'identifiant d'installation et la licence
En plus des identifiants de cluster et d'espace de noms, veuillez partager avec votre gestionnaire de licences les détails de l'offre commandée. Les détails sont de type :
- nombre d'années,
- nombre de passerelles pour le modèle tarifaire par passerelle,
- nombre de capteurs pour le modèle de tarification par capteur,
- version d'essai,
- etc. ..
Votre gestionnaire de licences générera à son tour la licence correspondante sur l'outil de gestion des licences Actility Central et vous l'enverra pour poursuivre votre installation.
Votre gestionnaire de licences est un membre de votre organisation qui a été formé et a accès à l'outil de gestion des licences Actility Central. Si votre entreprise n'est pas un partenaire de canal Actility mais un client direct d'Actility, veuillez contacter votre gestionnaire de compte Actility pour obtenir votre licence.
Configuration
Créer les valeurs Helm
Des exemples de fichiers de valeurs Helm sont fournis pour configurer le déploiement ThingPark :
values-data-stack.yaml: ce fichier doit être rempli pour être utilisé lors de l'installation des Chartesthingpark-data-controllersetthingpark-datavalues-thingpark-stack.yaml: ce fichier doit être rempli pour être utilisé lors de l'installation des Chartesthingpark-application-controllersetthingpark-enterprise
-
Récupérez les exemples comme point de départ (Utilisez le nom de tag de la Version de Thingpark Enterprise pour définir la variable
RELEASE) :export NAMESPACE=thingpark-enterprise
export RELEASE=<release name>
export CONFIG_REPO_BASEURL=https://raw.githubusercontent.com/actility/thingpark-enterprise-kubernetes/v$RELEASE
eval $(curl $CONFIG_REPO_BASEURL/VERSIONS)
curl -O $CONFIG_REPO_BASEURL/examples/customization/values-data-stack.yaml
curl -O $CONFIG_REPO_BASEURL/examples/customization/values-thingpark-stack.yaml -
Préparez votre déploiement en suivant les directives en ligne des fichiers
values-data-stack.yamletvalues-thingpark-stack.yaml. Des informations supplémentaires peuvent être trouvées dans la section configuration. -
Configurez le répertoire Helm en vous authentifiant avec l'
InstallationIDhelm repo add --username <InstallationID> --password <InstallationID> actility https://repository.thingpark.com/charts
helm repo update -
Validez la cohérence de la configuration de ThingPark à l'aide d'un dry-run :
helm template tpe actility/thingpark-enterprise --version $THINGPARK_ENTERPRISE_VERSION \
-f values-thingpark-stack.yaml
Options de déploiement
Stockage
Le déploiement ThingPark utilise le provisionnement dynamique du stockage. Pour déployer sur Azure ou Amazon Web Services, utilisez les valeurs Helm fournies :
# Set the targeted environment
# Value azure,amazon
export HOSTING=<hosting>
curl -O $CONFIG_REPO_BASEURL/examples/hosting/$HOSTING/values-storage.yaml
Pour d'autres environnements d'hébergement, le fichier values-storage.yaml doit être adapté pour définir les noms de StorageClass correspondants.
Équilibreur de charge entrant
L'Équilibreur de charge entrant peut être configuré en annotant le service de l'ingress-nginx controller. Pour déployer sur Azure ou Amazon Web Services, utilisez les valeurs Helm fournies :
# Set the targeted environment
# Value azure,amazon
curl -O $CONFIG_REPO_BASEURL/examples/hosting/$HOSTING/values-lb.yaml
Planification de capacité
Définissez la variable SEGMENT pour sélectionner le dimensionnement d'instance approprié
# Value in s,m,l,xl,xxl
export SEGMENT=l
curl -O $CONFIG_REPO_BASEURL/values/sizing/values-$SEGMENT-segment.yaml
Classe de priorité
Si votre déploiement n'utilise pas les noms de PriorityClass décrits dans les Prérequis, personnalisez le fichier de valeurs suivant :
curl -O $CONFIG_REPO_BASEURL/examples/priority-class/values-default-priority-class.yaml
Registre de conteneurs
Le déploiement de base utilise le registre de conteneurs Actility authentifié en utilisant InstallationID. Alternativement, un registre privé peut être utilisé. Cela implique de :
- Synchroniser les images de conteneurs vers le privé
- Si l'authentification est utilisée, créez un secret de pull d'image nommé
thingpark-image-pull-secret - Configurez la version helm comme documentée dans l'exemple d'utilisation du répertoire interne (TO-DO)
Utilisez yq pour fusionner les fichiers de configuration :
yq eval-all '. as $item ireduce ({}; . * $item)' values-storage.yaml \
values-default-priority-class.yaml values-$SEGMENT-segment.yaml values-data-stack.yaml \
| tee values-data-stack-all.yaml
yq eval-all '. as $item ireduce ({}; . * $item)' values-storage.yaml \
values-lb.yaml values-default-priority-class.yaml values-$SEGMENT-segment.yaml \
values-thingpark-stack.yaml | tee values-thingpark-stack-all.yaml