# Azure Marketplace Deployment

This guide walks you through deploying LightBeam from the Azure Marketplace after purchase.

### Installing LightBeam from Azure Marketplace <a href="#id-7g7i9cp5eyjo" id="id-7g7i9cp5eyjo"></a>

This includes filing out some basic profile information to submit to Microsoft to install the application.<br>

1. Visit the[ LightBeam Azure listing](https://azuremarketplace.microsoft.com/en-us/marketplace/apps/lightbeam.lb_app?tab=Overview)<br>
2. Click on "**Get it Now**" and complete the profile information

<img src="/files/yGZ8cMuhr41tiiNR0gxB" alt="" width="375">

3. Select "**LightBeam Software Package**" plan and click "**Create**"

<img src="/files/Gp9zZ5tjQfUDTCADLFDv" alt="" width="563">

### Azure Deployment Configuration <a href="#ndkr0l990obm" id="ndkr0l990obm"></a>

#### **Basics** <a href="#g4shz63aop12" id="g4shz63aop12"></a>

* **Subscription**: Select your Azure subscription
* **Resource Group**: Choose existing or create new (must be empty)
* **Region**: Select Azure region for deployment

![](/files/svV8gPjk4hiwOw6rQmHF)

#### **JumpVM Setup** <a href="#kqr2co3emh5j" id="kqr2co3emh5j"></a>

* **VM Name**: Name for your JumpVM
* **Size**: Choose from supported sizes:
  * `Standard_DS1_v2`
  * `Standard_DS2_v2`
  * `Standard_DS3_v2`
  * `Standard_B1s`
* **Username**: JumpVM login username
* **Authentication**: Choose SSH Public Key or Password
* **Access IP**: Specify allowed IP range in CIDR format:
  * Corporate network: e.g., `10.0.0.0/16`
  * Single user: your IP with /32 (e.g., `203.0.113.1/32`)
  * Avoid using `0.0.0.0/0` for production environments

![](/files/DBpaCGkpdL66SnQxSHhw)

#### **LightBeam Cluster Configuration** <a href="#kff7igu6q0q7" id="kff7igu6q0q7"></a>

* **LightBeam Version**: Software version to deploy
* **Network**: Choose new or existing Azure VNET (/16) and Subnet (/20)
* **AKS Cluster Name**: Default or custom name
* **Node Pool VM Size**: Choose from supported sizes:
  * Standard\_D8s\_v3
* **Node Count**: Number of nodes (contact <support@lightbeam.ai> for sizing recommendations)
* **Setup Token**: Obtain from <support@lightbeam.ai> after purchase
* **License Key**: Obtain from <support@lightbeam.ai> after purchase

Complete the configuration, review, and click "**Create**".

![](/files/3nRlkO3BIy2e5nL0jd2E)

Deployment takes approximately 40 minutes.

### Accessing LightBeam <a href="#id-48tgvqsit34c" id="id-48tgvqsit34c"></a>

After the LightBeam cluster is installed, use the below instructions to access the LightBeam Web Interface.

#### **Connect to JumpVM** <a href="#vtfiexk944z" id="vtfiexk944z"></a>

1. Find JumpVM's public IP in Azure Portal
2. SSH into JumpVM:

```

# For password authentication:
ssh username@public_IP

# For SSH key authentication:
chmod 400 your_key_file
ssh -i your_key_file username@public_IP
```

#### **Get LightBeam Web UI Information** <a href="#d3486sy2w2ti" id="d3486sy2w2ti"></a>

1. Switch to root on JumpVM:

```
sudo su
```

2. Get the web UI address:

{% code overflow="wrap" %}

```
kubectl get ingress -n lightbeam -o jsonpath='{.items[0].status.loadBalancer.ingress[0].ip}' && echo
```

{% endcode %}

3. Retrieve admin password:

{% code overflow="wrap" %}

```
kubectl exec deploy/lightbeam-api-gateway -- printenv 2>/dev/null | grep AUTH_PASSWORD | awk -F= '{print $2}'
```

{% endcode %}

4. Access LightBeam at `http://<obtained_IP>` using:

* `Username: admin`
* `Password: <retrieved_password>`

### Troubleshooting <a href="#x58gaxn536l2" id="x58gaxn536l2"></a>

Connect to JumpVM as described [above](#vtfiexk944z) and check these log files:

* Main handler log:

{% code overflow="wrap" %}

```
cat /var/log/azure/custom-script/handler.log
```

{% endcode %}

This is the primary log file for the Azure VM extension that runs custom scripts during deployment. It records overall extension execution status, including when scripts start and finish, and any high-level errors.<br>

* Deployment stdout/stderr:

<pre data-overflow="wrap"><code><strong>cat /var/lib/waagent/custom-script/download/0/stdout
</strong>cat /var/lib/waagent/custom-script/download/0/stderr
</code></pre>

\
These files contain the actual console output from the deployment scripts:<br>

1. `stdout` shows the normal output of commands that ran successfully
2. `stderr` captures error messages and warnings from failed commands

These logs provide detailed information about what specific commands were executed and their results during the initial setup process.<br>

* Terraform and AKS deployment logs:

```
cat /root/lightbeam/lightbeam-tf-iac/aks/terraform_apply.log
```

This log specifically focuses on the infrastructure deployment stage using Terraform. It shows:

1. AKS (Azure Kubernetes Service) cluster creation
2. Node pool configuration and deployment<br>

* LightBeam application deployment logs:

```
cat /root/lightbeam/lightbeam-chart/lightbeam_install.log
```

This final log shows the deployment of the actual LightBeam application into the Kubernetes cluster.

### Uninstallation <a href="#id-89z6cef12sgt" id="id-89z6cef12sgt"></a>

1. Connect to JumpVM and switch to root:

```
sudo su
```

2. Clean up LightBeam cluster:

```
cd /root/lightbeam/lightbeam-chart
./installer/lb-cleanup.sh
```

3. Remove AKS infrastructure:

```
cd /root/lightbeam/lightbeam-tf-iac/aks
terraform destroy
```

Type "yes" when prompted and wait for completion

4. Complete cleanup:<br>

* Delete all resources from the Azure Resource Group
  * Network Security Group,Network Interface, Jump VM Public IP, VNET, Subnet, JumpVM etc.

![](/files/7qfzYYs5ebB9TtPDoHaI)

* Remove JumpVM role assignments (Network Contributor and AKS Service Contributor)

![](/files/OFIYEGcR06w9dsyPeA7p)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.lightbeam.ai/lxqobxw6ak7CTnsQjikH/getting-started/installer-guides/platform-specific/azure-marketplace-deployment.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
