---
title: Deployment of Litmus Edge Manager on Google Kubernetes Engine (GKE)
slug: edgemanager/deployment-of-litmus-edge-manager-on-google-kubernetes-engine-gke
docTags: 
createdAt: 2025-02-24T19:39:44.870Z
---

You can deploy Litmus Edge Manager on **Google Kubernetes Engine (GKE)**.

# Before You Begin

Before you begin, ensure that you have:

- A valid Google Cloud Platform (GCP) project with permissions to create and manage Kubernetes clusters. See [Creating and managing projects ](https://cloud.google.com/resource-manager/docs/creating-managing-projects)and [Access control in GKE ](https://cloud.google.com/kubernetes-engine/docs/concepts/access-control)for details.&#x20;
- Familiarity with the [Google Cloud Console ](https://console.cloud.google.com/)and [Cloud Shell](https://cloud.google.com/shell/docs).
- The Litmus Google registry credential key file (e.g., `LEM_pull_Key_file.json`) available and uploaded to your working environment

To manually deploy Litmus Edge Manager on Google Kubernetes Engine (GKE), you will need to do the following.&#x20;

- Step 1: Setup Your GKE Cluster in Your GCP Project
- Step 2: Connect to Your Cluster
- Step 3: Execute Kubectl and Helm Commands
- Step 4: Access the Litmus Edge Manager UI using the obtained IP address

# Step 1: Setup Your GKE Cluster in Your Google Cloud Platform (GCP) Project

**To set up your GKE cluster in your Google Cloud Platform (GCP) project:**

1. Log in to your **Google Cloud Console**.
   ![](https://api.archbee.com/api/optimize/SSUUxKZUk9bFTEPNn_6Zo/Ju4kS3-jpF8fdL3ztALkW_image.png "Google Cloud Console homepage")
2. Select your *GCP project*, then navigate to **Kubernetes Engine&#x20;**&#x66;rom the main menu.
   You will land on the *Overview&#x20;*&#x70;age of *Kubernetes Engine*.
   ![](https://api.archbee.com/api/optimize/SSUUxKZUk9bFTEPNn_6Zo/VwwpjlPiF6ITwuppBPdtc_image.png "Kubernetes Engine-Overview page")
3. Click on **Clusters&#x20;**&#x66;rom the side menu and then click **Create** to configure a new Kubernetes cluster.
   ![](https://api.archbee.com/api/optimize/SSUUxKZUk9bFTEPNn_6Zo/CIZkjCZhox70QwHsh57xm_image.png "Kubernetes Engine-Clusters page")
4. On the *Create an Autopilot cluster&#x20;*&#x70;age, configure the following.
   1. **Cluster basics:**
      - **Switch to Standard Cluster&#x20;**&#x6F;ption (if not already selected).
        ![](https://api.archbee.com/api/optimize/SSUUxKZUk9bFTEPNn_6Zo/rNIBVf1atvA9j9icxSk_0_image.png "Create an Autopilot cluster ")
      - Provide a **name&#x20;**&#x69;n lowercase (e.g., `gke-cluster`).
      - Choose an appropriate **region&#x20;**(e.g., `US-Central`) and select a **Zonal&#x20;**&#x6C;ocation type.
        ![](https://api.archbee.com/api/optimize/SSUUxKZUk9bFTEPNn_6Zo/bFFHSRbjJ3eGAF7FhNm5S_image.png "Create an Autopilot cluster ")
   2. **Default Pool Configuration:**
      - Keep the **default-pool&#x20;**&#x6E;ame or modify as needed.
      - Keep the Number of nodes at **2**.
        ![](https://api.archbee.com/api/optimize/SSUUxKZUk9bFTEPNn_6Zo/SYem56SX3QuDFXC0g2RXI_image.png "Default Pool Configuration")
      - For image type, select **Ubuntu with containerd** (**ubuntu\_containerd**).
        ![](https://api.archbee.com/api/optimize/SSUUxKZUk9bFTEPNn_6Zo/xhHC56E0b_gwTB79wYwwH_image.png "Default Pool Configuration")
      - Choose a machine type with at least **2 cores&#x20;**&#x61;nd **16 GB memory**.
        ![](https://api.archbee.com/api/optimize/SSUUxKZUk9bFTEPNn_6Zo/0_GXf6OSOkH_3R4shWY59_image.png "Default Pool Configuration")
   3. **Network & Security:**
      - Leave the default settings unless specific adjustments are required.
5. Once configured, click **Create** to initiate the cluster provisioning.&#x20;
   Cluster creation may take several minutes.
   ![](https://api.archbee.com/api/optimize/SSUUxKZUk9bFTEPNn_6Zo/eqDCtKQlSiSuJCtdISLg9_image.png "Clusters Configuration")

:::hint{type="info"}
**Note:&#x20;**&#x43;reating a cluster takes a few minutes, depending on the settings you choose. Please check the status or notifications for the latest information about your cluster.
:::

# Step 2: Connect to Your Cluster

**Once your cluster is successfully created:**

1. In the *GKE Clusters&#x20;*&#x70;age, click on the **Action&#x20;**&#x62;utton and then select **Connect**.
   ![](https://api.archbee.com/api/optimize/SSUUxKZUk9bFTEPNn_6Zo/pI9OXfmlaQTT4nOpwiiLa_image.png "GKE Clusters page")
2. You will be provided with the command-line instructions to connect your local **Terminal&#x20;**&#x6F;r use the **Cloud Shell&#x20;**&#x6F;ption in GKE.&#x20;
   Copy the provided command and run it in your terminal, or click **RUN IN CLOUD SHELL&#x20;**&#x74;o open the GKE.
   For this guide, we use the *Cloud Shell&#x20;*&#x69;n GKE.
   ![](https://api.archbee.com/api/optimize/SSUUxKZUk9bFTEPNn_6Zo/znGBBESHvCJxnrZrzCWn9_image.png "Connect to the cluster dialog box ")

# Step 3: Execute Kubectl and Helm Commands

With your connection established, use the following commands to deploy Litmus Edge Manager from GKE:

:::hint{type="info"}
**Note:&#x20;**&#x4B;eep your **Google Registry Credential Key** file in your workspace, as it's essential for authentication in deployment steps.

![](https://api.archbee.com/api/optimize/SSUUxKZUk9bFTEPNn_6Zo/a3n1SB58Iu28bL1-LMHLS_image.png "Cloud Shell")

If you don't have the *Google Registry Credential Key&#x20;*&#x66;ile in your workspace, click the **Action** button in the panel menu. Then select **Upload**.&#x20;
A dialog box will appear, prompting you to upload the file.

![](https://api.archbee.com/api/optimize/SSUUxKZUk9bFTEPNn_6Zo/OETZxiiLVYKXMwrBYSaVH_image.png "Cloud Shell")

Click on **File&#x20;**&#x61;nd then **Choose Files** to find the file on your computer.&#x20;

After that, click **Upload** to send it to GKE.

![](https://api.archbee.com/api/optimize/SSUUxKZUk9bFTEPNn_6Zo/2pN5MZUYHF27Jb7jtzRql_image.png "Cloud Shell")
:::

1\. Execute the following command to create a **namespace&#x20;**&#x66;or Litmus Edge Manager:

:::CodeblockTabs
shell

```bash
kubectl create namespace lem
```
:::

![](https://api.archbee.com/api/optimize/SSUUxKZUk9bFTEPNn_6Zo/VoLc_UC6jfZiDICFiWOIW_image.png "Cloud Shell")

2\. Create **Kubernetes secrets&#x20;**&#x75;sing *Helm&#x20;*&#x74;o securely store credentials. For example:

:::CodeblockTabs
shell

```bash
kubectl --namespace lem create secret docker-registry lem-helm-secret --docker-server=us-east1-docker.pkg.dev \
   --docker-username=_json_key --docker-password="$(cat lem-pull-key.json)" --docker-email=any@email.com
```
:::

![](https://api.archbee.com/api/optimize/SSUUxKZUk9bFTEPNn_6Zo/2GWHBOPsi3y12Jd4ghQn5_image.png "Cloud Shell")

3\. Install the Litmus Edge Manager using *Helm*. Adjust the version number (e.g., `2.25.0`) as needed:

:::CodeblockTabs
shell

```shell
helm install lem oci://us-east1-docker.pkg.dev/litmus-public/lem-chart-ga/lem --version 2.25.0 --namespace lem
```
:::

![](https://api.archbee.com/api/optimize/SSUUxKZUk9bFTEPNn_6Zo/0wh6NTD-n44OHdEM1YJLs_image.png "Cloud Shell")

:::hint{type="info"}
**Important Notes:**&#x20;

- The command initiates the pull of the necessary container images. This process may take several minutes.
- After the deployment is completed, wait approximately five minutes before applying the Litmus Edge Manager(LEM) URLs and credentials.&#x20;
- Instructions for accessing these URLs and credentials will be printed out for you.
:::

4\. To get the Litmus Edge Manager's **external IP**, run the following where `<release_name>-nginx` is your service name.

```shell
export LEM_URL=$(kubectl get svc litmus-edge-manager -n <release_name>-nginx -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
echo $LEM_URL
```

![](https://api.archbee.com/api/optimize/SSUUxKZUk9bFTEPNn_6Zo/lqoRUjJavhPTQINGLC5ju_image.png "Cloud Shell")

5\. To get the **Username** and **Password**, run:

![](https://api.archbee.com/api/optimize/SSUUxKZUk9bFTEPNn_6Zo/hGv7ZjRBwUU41Yyr0Csci_image.png "Cloud Shell")

# Step 4: Access the Litmus Edge Manager UI using the obtained IP address

See [Access Web User UI](docId\:w3uHZQ4tSrH7OLjhuLt0A) for details.

:::hint{type="info"}
**Note:** Obtain the Site License key from your Litmus account executive to activate your license.
:::

# Conclusion

Litmus Edge Manager is deployed and operational on your GKE cluster. You can now access the manager’s UI using the external IP address and proceed with any additional configuration, such as license activation, via the admin console.

Review the below documents to learn more:

- [User Profile Administration](docId\:xFOg2xRprqINGA9cLsZB-)&#x20;



