Installing DevOps Velocity on Google Kubernetes Engine

You can install HCL DevOps Velocity (Velocity) by using Google Kubernetes Engine (GKE) service on Google Cloud Platform (GCP).

Before you begin

You must have completed the following tasks:
  • Completed the tasks provided in the Installation prerequisites section. See Installation prerequisites.
  • Scanned for any security vulnerabilities in the installation environment, if you have not done so already.
  • Ran the following command in the folder that contains installation file, If you are using Linux or macOS computers:

    sudo chmod +x <installation_file_name>

About this task

You must first run the downloaded installation file for your platform to generate a Helm chart. You need to provide your credentials and the path where you want to install Velocity, along with an encryption key. You must also provide the hostname and port of the computer which you want to use to access the web User Interface (UI) of Velocity.

If you do not use the defaults, you must store the custom values that you provide because the same values are required to be provided when you want to upgrade to a later version of Velocity.

You must then use the generated Helm chart to install Velocity in the Kubernetes cluster.

Procedure

  1. Perform the following steps to generate a Helm chart:
    1. On the Cloud Shell terminal, click ellipsis and then click Upload.
      Upload dialog opens.
    2. On the Upload dialog, click Choose Files and then select the downloaded installation file.

      You can also choose the destination directory in the step.

    3. Click Upload to upload the file to the Kubernetes cluster.
    4. Navigate to the location where the installation file is uploaded and run the file.
      The following prompt is displayed:
      Please enter your DevOps Velocity access key
    5. Type the access key, and then press Enter.
      The license agreement is displayed.
    6. Read the agreement and enter Y to accept the license agreement.
      The following prompt is displayed:
      Enter your encryption key or leave blank to use the default. Key must be at least 8 characters
    7. Perform any of the following actions to specify the encryption key:
      Note: The encryption key must be at least 8 characters. You must save the encryption key to use when you want to upgrade to a later version.
      • Type an encryption key, if you do not want to use the default key, and then press Enter.
      • To use the default encryption key, press Enter.
      The following prompts are displayed:
      For Velocity 5.1.0 and 5.1.1,
      Choose the platform
      For Velocity 5.1.2 and later,
       Enter the location where the DevOps Velocity files will be installed
    8. Select Helm from the list, and then press Enter.
      The following prompt is displayed:
      Enter the location where the DevOps Velocity files will be installed
    9. Perform any of the following actions to specify the location to save the helm chart that will be generated:
      • To save the Helm chart in a different location, type the location, and then press Enter.

        For example, C:\D

      • To save the Helm chart in the default location, press Enter.
        Note: The default location will be the location where the installation file is present.
      Note: The Helm chart and other configuration files are copied to the specified directory in a subdirectory named product_version_number.
      The following prompt is displayed:
      Enter the initial password for the admin user
    10. Type the password, and then press Enter. You must save the password for later use.
      The following prompt is displayed:
      What version of MongoDB are you using? 
    11. Select the version of the MongoDB that you want to use as the database for Velocity installation.
      The following prompt is displayed:
      Please enter the hostname where you will run DevOps Velocity
    12. Type the hostname or Ingress controller external IP address.
      Note: You cannot use localhost as the hostname. If you have not mapped your Ingress controller external IP address to your domain name then to use the Ingress controller external IP address directly you can enter the Ingress controller external IP address in the following format:<ingress_controller_external_IP>.nip.io.
      The following prompt is displayed:
      Enter the desired port where DevOps Velocity will run
    13. Perform any of the following actions to specify the port number for Web UI:
      • Type the port number, and then press Enter.
      • To use the default port number, press Enter.
        Note: The default port number is 443.
      (Applicable for offline installation file only) The following prompt is displayed:
      Enter the URL of a remote docker registry to push images, otherwise leave blank
    14. Perform any of the following actions:
      • If you have used the online installation file, a Helm chart customized for your environment is generated and saved in the location specified in step 1.f and go to step 2 to install the generated helm chart.
        Note: You can edit the values.yaml file to modify the Helm chart.
      • If you have used the offline installation file go to step 1.o.
    15. (Applicable for offline installation file only) Perform any of the following actions:
      • Enter the URL of the remote docker registry to push the images and store it in a remote registry, and then press Enter.
      • To store the images in the local computer, press Enter.
      The following prompt is displayed:
      Enter a username to authenticate to the remote docker registry with (leave blank to omit credentials or if docker client already authenticated against remote registry)
    16. (Applicable for offline installation file only) Perform any of the following actions to authenticate the remote docker registry:
      • To authenticate the remote docker registry, type the username, and then press Enter.
        The following prompt is displayed:
        Enter a password to authenticate to the remote docker registry with
      • To exclude credentials or if the docker client is already authenticated, press Enter and go to step 2.
    17. (Applicable for offline installation file only) Type the password, and then press Enter.
      A Helm chart customized for your environment is generated and saved in the location specified in step 1.f.
      Note: You can edit the values.yaml file to modify the Helm chart.
  2. Perform the following steps to install the Helm chart:
    1. On the Cloud Shell terminal, navigate to the directory where the helm chart has been uploaded.
    2. Optional: You can customize Helm chart as necessary for advanced configuration, such as node affinity or resource limit configuration.
    3. Run the following command to complete the installation of Velocity:
           helm install velocity -n <custom_namespace_name>\
           ./velocity-<version>-helm.tgz --set license=accept\
           -- set url.domain= <domain_name or I.P address>\
           -- set access.key=<access_key>\
           -- set mongo.url=<mongodb url>\
           -- set secret.tls=<tls_secrete_name>\
           -- loglevel= <log_level_value>
          

      The sample MongoDB URL is mongodb://<username>:<password>@<service_name>:<port>/<database_name>

      The following table describes the parameters in the helm install command:
      Table 1. Helm parameters
      Parameter Variable Description Required
      helm chart name <version> Version of the product. For example, 5.0.2 Yes
      url.domain <domain_name or I.P address> Domain name mapped to Ingress Controller external IP address or Ingress Controller external IP address. For example,104.198.205.71 or my-velocity.hcl.com Yes
      access.key <access_key> Product access key obtained from Fix Central. For example uackjcbdciydskbvdwlinm2o223en4n4nlk Yes
      mongo.url <username> User ID to authenticate with the MongoDB database. For example, mymongo. Yes
      <password> Password to authenticate with the MongoDB database. For example, mongopassword. Yes
      <port> Port number for the MongoDB database. Use the value shown in the example, which is 27017. Yes
      <service_name> MongoDB URL or the MongoDB service name if it is running within the Kubernetes cluster. For example, velocity-mongo. Yes
      <database_name> Name of the database to be used by Velocity. For example, velocity. Yes
      secret.tls <tls_secrete_name> Name of the TLS secret created during the configuration of SSL certificate. For example, velocity-custom-tls Yes
      loglevel <log_level_value> Level of Log4j messages to display in the log file. Possible values are ALL, DEBUG, INFO, WARN, ERROR, FATAL, OFF. The default value is ALL. Optional

      After running the command, Kubernetes displays the installation status.

    4. Wait for few minutes and run kubectl get pods command to see the status of pods. Installation is completed when the status of all pods is running.

Results

You have successfully installed Velocity on GKE.

What to do next

Access the web UI and log in to Velocity. See Logging in to the DevOps Velocity.