Skip to main content

Cluster wide resources

caution

Admin permissions are required to deploy cluster-wide resources. You may ask your cluster administrator to execute the following tasks if you don't have such permission.

The following resources need to be deployed:

  • a Namespace
  • ClusterRoles, ClusterRoleBindings, Webhook, CustomResourceDefinitions of required third-party operators and controllers.
  • PriorityClass, StorageClass and IngressClass required for the Thingpark Enterprise deployment

Namespace

Create the namespace communicated to license manager at registration time

kubectl create ns $NAMESPACE

Priority Class

Helm Charts use default PriorityClass names described in prerequisites. The following manifest should be used to create the corresponding PriorityClasses:

kubectl -n $NAMESPACE apply -f $CONFIG_REPO_BASEURL/examples/priority-class/default.yaml
tip

The PriorityClass values may be customized to define the priority of ThingPark Wireless with other workloads of the Kubernetes cluster.

ThingPark Wireless may be deployed using already existing PriorityClasses. In this case, this step should be skipped.

Storage Class

Recommended StorageClasses for Amazon Web Services or Azure are created using the following manifest:

kubectl -n $NAMESPACE apply -f $CONFIG_REPO_BASEURL/examples/storage/storage-class-$HOSTING.yaml

For other hosting options, review the storage prerequisites to create appropriate StorageClasses.

Container registry authentication

Prepare the container registry access by creating the Secret used as imagePullSecret. Basic deployment use Actility container registry authenticated by using InstallationID

kubectl -n $NAMESPACE create secret docker-registry thingpark-image-pull-secret \
--docker-server=repository.thingpark.com \
--docker-username=<InstallationID> \
--docker-password=<InstallationID>

Install third-parties operators and controllers

Deploy the thingpark-data-controllers chart using your customization:

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

Deploy the thingpark-application-controllers chart:

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