Install ProconTEL (from Linux)
Before you start make sure that:
- Your Kubernetes cluster is up and running.
kubectlandhelmcommands 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-releaseis Helm chart release name. This name is up to you and allows you to distinguish between multiple ProconTEL instances installed by Helm.procontel.prodis the ProconTEL URL.procontel/procontelis the Helm chart name. In this case it refers to theprocontelchart inprocontelrepository.$PCT_DOCKER_URLis the URL of ProconTEL Docker Registry.$PCT_DOCKER_USERis your user name for ProconTEL Docker Registry.$PCT_DOCKER_PASSWORDis 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-managerto automatically obtain TLS certificate after installation. This requirescert-managerto 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
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.