Skip to main content

Install ProconTEL (from Linux)

note

Before you start make sure that:

  • Your Kubernetes cluster is up and running.
  • kubectl and helm commands are installed and have access to the cluster.
  • You have added ProconTEL Helm Registry to your Helm well-known registries list.
  • You have obtained your ProconTEL Docker Registry user credentials.

Install ProconTEL Helm chart​

In order to install ProconTEL distribution via Helm chart it is generally only required to run helm upgrade command providing all necessary configuration parameters.

Basic installation​

Following command will install latest stable ProconTEL version using default ProconTEL configuration.

helm upgrade procontel-release procontel/procontel \
--install \
--atomic \
--cleanup-on-fail \
--create-namespace \
--namespace procontel \
--set procontelHost=procontel.prod \
--set procontelDockerRegistryUrl="$PCT_DOCKER_URL" \
--set procontelDockerRegistryUserName="$PCT_DOCKER_USER" \
--set procontelDockerRegistryUserPassword="$PCT_DOCKER_PASSWORD"

Where:

  • procontel-release is Helm chart release name. This name is up to you and allows you to distinguish between multiple ProconTEL instances installed by Helm.
  • procontel.prod is the ProconTEL URL.
  • procontel/procontel is the Helm chart name. In this case it refers to the procontel chart in procontel repository.
  • $PCT_DOCKER_URL is the URL of ProconTEL Docker Registry.
  • $PCT_DOCKER_USER is your user name for ProconTEL Docker Registry.
  • $PCT_DOCKER_PASSWORD is your user password for ProconTEL Docker Registry.

Once the installation is finished you can access your ProconTEL instance at http://procontel.prod

Configuring ProconTEL installation​

Before you install ProconTEL a few decisions are to be made.

ProconTEL host name​

You need to define your ProconTEL installation host name. In this manual procontel.prod is used.

Kubernetes StorageClass name​

If your Kubernetes cluster has multiple storage classes or no default storage class is set, during installation you must provide name of the storage class to be used by ProconTEL persistent volume claims.

Kubernetes PersistentVolumeClaim storage size​

ProconTEL instance uses following storages:

  • Core Storage - is a storage space used exclusively by ProconTEL core services.
  • App Shared Storage - is a storage space that can be shared by all apps.

For the Core Storage it is recommended to use the default value provided by the Helm chart.

The size of App Shared Storage is up to you and depends on what your apps will use the shared storage. If you are not sure, you can use default value provided by the Helm chart.

Ingress TLS certificate​

In order to use SSL you have to configure TLS certificate. You can provide own TLS certificate during ProconTEL installation. Also, you can also create the TLS Secret manually in your cluster and provide its name during installation. The Secret will be used by ProconTEL Ingress.

If you do not have the certificate, there are following ways to obtain it:

  • You can use the cert-manager to automatically obtain TLS certificate after installation. This requires cert-manager to be installed and configured in your cluster, moreover ProconTEL instance must be accessible from the Internet.
  • You can generate the certificate at https://portal.procontel.eu.

Obtain ProconTEL TLS certificate from ProconTEL Customer Portal​

You can find out how to generate your TLS certificate here.

Now, download the generated certificate and extract both server certificate and certificate key from it. It is assumed your certificate file is named procontel.pfx.

Extract the certificate:

openssl pkcs12 -in procontel.pfx -passin "pass:$PASSWORD" -clcerts -nokeys -out - -passout "pass:$PASSWORD" -legacy | openssl x509 -out procontel.crt

Extract the cerfiticate key:

openssl pkcs12 -in procontel.pfx -passin "pass:$PASSWORD" -nocerts -nodes -out - -passout "pass:$PASSWORD" -legacy | openssl rsa -out procontel.key

Putting everything all together​

Following command will install ProconTEL with all discussed parameters.

helm upgrade procontel-release procontel/procontel \
--install \
--atomic \
--cleanup-on-fail \
--create-namespace \
--namespace procontel \
--set procontelHost=procontel.prod \
--set procontelDockerRegistryUrl="$PCT_DOCKER_URL" \
--set procontelDockerRegistryUserName="$PCT_DOCKER_USER" \
--set procontelDockerRegistryUserPassword="$PCT_DOCKER_PASSWORD" \
--set certificatePath=procontel.crt \
--set certificatePathKey=procontel.key \
--set coreStorageClassName=my-storage \
--set coreStorageSize=10Gi \
--set appSharedStorageClassName=my-storage \
--set appSharedStorageSize=20Gi

Installing older ProconTEL release​

If you wish to install older ProconTEL release, you should find the Helm chart version that you are interested in.

helm search repo procontel --versions
NAME                    CHART VERSION   APP VERSION     DESCRIPTION        
procontel/procontel 0.1.0 4.0.12 ProconTEL 4 Runtime
procontel/procontel 0.0.16 4.0.10 ProconTEL 4 Runtime
procontel/procontel 0.0.15 4.0.10 ProconTEL 4 Runtime
procontel/procontel 0.0.6 4.0.8 ProconTEL 4 Runtime
procontel/procontel 0.0.4 4.0.8 ProconTEL 4 Runtime
note

Helm chart version (CHART VERSION) is not the same as ProconTEL version (APP VERSION). Make sure you provide Helm chart version to helm upgrade command.

To install selected ProconTEL version provide the CHART VERSION to helm upgrade by --version parameter.