Skip to main content Skip to complementary content

Implementing Dynamic Engine on a minikube

Install and configure Dynamic Engines on a minikube cluster for a quick hands-on before implementing them in your organization.

Prerequisites:
  • You must have Docker and minikube installed.
  • Ensure that the Docker daemon is running.
  • The minikube tool has been installed and configured to use a Kubernetes version supported by Dynamic Engines. For further information about the supported Kubernetes versions, see Kubernetes specifications.

    For further information, see minikube installation.

Add a Dynamic Engine on your minikube cluster

Procedure

  1. Run the following command in your terminal to start a minikube instance:
    minikube start -p QlikDE --cpus=4 --memory=8000
    This command will start an instance named QlikDE and allocate 4 CPUs and 8 GB of memory. You can use any name for the instance.
  2. Go to the Processing page in Talend Management Console, select the Dynamic Engines tab, and add a new Dynamic Engine.
    This is only the logical entity of your Dynamic Engine.
  3. Download the manifest file to the minikube machine to set up the physical entity of the engine.
    For detailed instructions, see this procedure.
  4. Unzip the downloaded manifest file and run the following commands to apply the manifests:
    • kubectl apply -f {download_dir}/qlik/custom-resource-definitions.yaml

      This manifest file creates two custom Kubernetes resource definitions in your cluster: qlikruntimeinfras.qlik.com for Dynamic Engine resources and qlikruntimes.qlik.com for Dynamic Engine environment resources.

    • kubectl apply -f {download_dir}/qlik/resources.yaml

      This manifest file creates the Dynamic Engine resources to register your cluster, deploy your Dynamic Engine, and assign the engine to its logical entity in Talend Management Console. These resources belong to a kind of QlikRuntimeInfra.

  5. Verify if the manifest files were successfully applied by running this command:
    kubectl get crd
    You should see entries like this, indicating that custom resources have been successfully defined.
    NAME                               CREATED AT
    qlikruntimeinfras.qlik.com         2024-08-15T14:51:37Z
    qlikruntimes.qlik.com              2024-08-15T14:51:37Z

Results

Deploying and starting the engine can take some time. When complete, its logic entity in Talend Management Console shows as active.
To monitor the process, run this command:
kubectl wait --for=condition=Ready pod -l app.qlik.com/name=engine-operator -n qlik-dynamic-engine --timeout=10m
This command returns a message like pod/engine-operator-dp-{id} condition met, where {id} is a random alphanumeric identifier.

Add a Dynamic Engine environment for the Dynamic Engine

Procedure

  1. In Talend Management Console, create a Dynamic Engine environment logical entity. For further information, see Adding a Dynamic Engine environment.
  2. Go to the Processing page and open the Dynamic Engines tab.
  3. Select the Dynamic Engine you created previously in Talend Management Console.
  4. Click the plus button to open the environment assignment page.
  5. Select the environment you created and click Assign.
  6. Download the manifest file of this environment.
  7. Apply the manifest file in your minikube machine by running:
    kubectl apply -f {download_dir}/qlik/resources-<environment_id>.yaml
    The entire process takes 3 to 4 minutes depending on the capacity of your minikube machine. You can use the following commands to verify the progress:
    • kubectl wait --for=condition=Ready pod -l app.talend.com/part-of=data-processing-engine -A --timeout=10m
      This command verifies if all environment related pods are all set up and running. Upon completion, a message like this is returned:
      pod/dpe-di-job-deployer-{id} condition met
      pod/dpe-di-job-restore-orphans-{id} condition met
      Pod/dpe-di-job-controller-{id} condition met
      Pod/dpe-remote-engine-agent-{id} condition met
      Pod/dpe-remote-engine-client-{id} condition met
    • kubectl get namespaces

      This command lists all the namespaces, allowing you to identify the namespace of the Dynamic Engine environment, which groups all associated services, such as qlik-processing-env-66f2c0bb3e063d3518122259.

    • kubectl get pods --namespace qlik-processing-env-66f2c0bb3e063d3518122259

      This command lists all the service of the environment being deployed. When all their statuses show Running, the installation of your Dynamic Engine environment is completed. In Talend Management Console, the status of this environment changes to Ready, indicating that it is ready to run tasks or plans.

Results

Follow this procedure to run tasks in this Dynamic Engine environment.

What to do next

If you want to delete the minikube instance, use the following command:

minikube delete --profile QlikDE
This will remove the minikube instance and all its associated files.

Did this page help you?

If you find any issues with this page or its content – a typo, a missing step, or a technical error – please let us know!