## Configure Halo Ec2 instance

### Step 1 - Health check

1. After launching the EC2 instance, wait 15 minutes for the Halo services to start.

2. Visit `https://<ip-address>` in a browser to check if the Glasswall Halo Portal is running.

3. Access Halo APIs via the Swagger portal at `https://<ip-address>/swagger/index.html`.

You are now ready to use the Glasswall Halo Portal and API.

### Step 2 - License Management

Set up a license by following the steps at [Glasswall License Management Guide](/halo/license-management-api-setup-guide).

### Step 3 - Troubleshooting

#### What should I do if the Halo Portal and API are not accessible?

1. If you receive timeout errors, verify that the instance security groups allow inbound access on the required ports.
2. For other errors, SSH into the instance using the `glasswall` username and the private key used during instance creation.
3. Run the following command to confirm that all pods are running.

```shell
kubectl get pods
```

#### What if the Embedded Engine pods aren't running as expected?

The `cloud-init` config sets the number of Engine pods based on the VM's CPU cores. If it doesn’t finish on time, run the commands below to retry.

```sh
sudo cloud-init clean
sudo reboot now
```

* * *

<!-- markdownlint-disable MD033 -->
<div class="text--center margin-top--lg">
  <a href="/halo/aws-ec2-step-3" class="button button--primary">
    Proceed to Step 3 →
  </a>
</div>
<!-- markdownlint-enable MD033 -->