Passer au contenu principal

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-system du 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.

astuce

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 Chartes thingpark-data-controllers et thingpark-data
  • values-thingpark-stack.yaml : ce fichier doit être rempli pour être utilisé lors de l'installation des Chartes thingpark-application-controllers et thingpark-enterprise
  1. 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
  2. Préparez votre déploiement en suivant les directives en ligne des fichiers values-data-stack.yaml et values-thingpark-stack.yaml. Des informations supplémentaires peuvent être trouvées dans la section configuration.

  3. Configurez le répertoire Helm en vous authentifiant avec l'InstallationID

    helm repo add --username <InstallationID> --password <InstallationID> actility https://repository.thingpark.com/charts
    helm repo update
  4. 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)
astuce

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