Skip to content

Commit

Permalink
Merge pull request #32 from netboxlabs/nbe-kots-install
Browse files Browse the repository at this point in the history
KOTS install doc
  • Loading branch information
rboucher-me authored Aug 2, 2024
2 parents b44180e + 64eff75 commit 3ec0601
Show file tree
Hide file tree
Showing 4 changed files with 72 additions and 15 deletions.
Binary file modified docs/images/.DS_Store
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
83 changes: 69 additions & 14 deletions docs/netbox-enterprise/nbe-kots-installation.md
Original file line number Diff line number Diff line change
@@ -1,47 +1,102 @@
# NetBox Enterprise KOTS Installation

### Deploying NetBox
### Kubernetes dependencies

Access the NetBox Enterprise admin console and configure NetBox
Ensure you have the following Kubernetes dependencies installed. Please refer to the instructions for your operating system to install them.

Open the provided URL in a browser. A prompt will require the password created in Step 2:
- **kubectl**: general tool for interacting with Kubernetes clusters
- **helm**: a "package manager" for Kubernetes

![enterprise-admin-console](../images/netbox-enterprise/admin-console.png)
### Install KOTS

A wizard will guide the configuration of NetBox for the environment:
KOTS is a kubectl plugin and admin console to help manage Kubernetes Off-The-Shelf software from one or more Helm charts. To install, run the following command:

![configure-netbox-enterprise](../images/netbox-enterprise/configure-netbox-enterprise.png)
```bash
curl https://kots.io/install | bash
```

### Install the NetBox Enterprise Helm chart

Install the chart into the cluster:
```bash
kubectl kots install netbox-enterprise
```

You will be prompted to create a namespace to deploy to:
```{.txt .no-copy}
Enter the namespace to deploy to:
```

You will also be prompted to create a password for the Admin Console:
```{.txt .no-copy}
Enter a new password for the admin console (6+ characters):
```

The helm chart was successfully installed when you see this:
```{.txt .no-copy}
• Deploying Admin Console
• Creating namespace ✓
• Waiting for datastore to be ready ✓
• Waiting for Admin Console to be ready ✓
• Press Ctrl+C to exit
• Go to http://localhost:8800 to access the Admin Console
```

### Deploy NetBox

#### Connect to the Admin Console

Access the NetBox Enterprise Admin Console by opening the provided URL in a browser.

!!! Tip
If you are connecting to the cluster over the network, you might need to configure port forwarding to connect to the Admin Console: `kubectl port-forward -n <namespace> svc/kotsadm --address 0.0.0.0 3000:3000`


Once connected, you will be prompted for the password you created earlier:

<img src="/images/netbox-enterprise/admin-console.png" alt="enterprise-admin-console" width="500"/>

You will then be prompted to provide your license file. Your license file should have been provided to you by NetBox Labs.

<img src="/images/netbox-enterprise/netbox-enterprise-upload-license.png" alt="enterprise-upload-license" width="500"/>

#### Configure NetBox

A wizard will now guide you through the configuration of NetBox for the environment:

<img src="/images/netbox-enterprise/configure-netbox-enterprise.png" alt="configure-netbox-enterprise" width="500"/>

Required configuration information includes:

- Version of NetBox to deploy:

![netbox-enterprise-version](../images/netbox-enterprise/netbox-enterprise-version.png)
<img src="/images/netbox-enterprise/netbox-enterprise-version.png" alt="netbox-enterprise-version" width="500"/>

- Built-in or external PostgreSQL:

![netbox-enterprise-postgres](../images/netbox-enterprise/netbox-enterprise-postgres.png)
<img src="/images/netbox-enterprise/netbox-enterprise-postgres.png" alt="netbox-enterprise-postgres" width="500"/>

- Built-in or external S3-Compatible object store:

![netbox-enterpise-storage](../images/netbox-enterprise/netbox-enterprise-s3.png)
<img src="/images/netbox-enterprise/netbox-enterprise-s3.png" alt="etbox-enterpise-storage" width="500"/>

- Advanced settings to configure plugins and SSO remote authentication:

![netbox-enterprise-overides](../images/netbox-enterprise/netbox-enterprise-overides.png)
<img src="/images/netbox-enterprise/netbox-enterprise-overides.png" alt="netbox-enterprise-overides" width="500"/>

The deployment of NetBox Enterprise will then proceed:

![netbox-enterprise-deploy](../images/netbox-enterprise/netbox-enterprise-deploy.png)
<img src="/images/netbox-enterprise/netbox-enterprise-deploy.png" alt="netbox-enterprise-deploy" width="500"/>

The `Unavailable` status will change to `Ready` once the deployment is complete and NetBox has fully initialized:

![netbox-enterprise-ready](../images/netbox-enterprise/netbox-enterprise-ready.png)
<img src="/images/netbox-enterprise/netbox-enterprise-ready.png" alt="netbox-enterprise-ready" width="500"/>

### Verify

NetBox Enterprise should now be fully deployed.

![netbox-enterprise-login](../images/netbox-enterprise/netbox-enterprise-login.png)
<img src="/images/netbox-enterprise/netbox-enterprise-login.png" alt="netbox-enterprise-login" width="300"/>

![netbox-enterprise-home](../images/netbox-enterprise/netbox-enterprise-app-home.png)
<img src="/images/netbox-enterprise/netbox-enterprise-app-home.png" alt="netbox-enterprise-home" width="500"/>
4 changes: 3 additions & 1 deletion docs/netbox-enterprise/nbe-overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,4 +17,6 @@ See the [NetBox Enterprise Embedded Cluster Installation](nbe-ec-installation.md

### KOTS installation

The Kubernetes Off-The-Shelf (KOTS) installation provides a more customizable installation experience of NetBox Enterprise. For organizations that are operating their own Kubernetes environments, the KOTS installation enables them to deploy NetBox in their own k8s cluster. KOTS deployments include all the necessary components and take care of all the dependencies just like the Embedded Cluster deployments. They also provide the same flexibility in leveraging external components, such as a PostgreSQL cluster or an S3 Object Store.
The Kubernetes Off-The-Shelf (KOTS) installation provides a more customizable installation experience of NetBox Enterprise. For organizations that are operating their own Kubernetes environments, the KOTS installation enables them to deploy NetBox in their own k8s cluster. KOTS deployments include all the necessary components and take care of all the dependencies just like the Embedded Cluster deployments. They also provide the same flexibility in leveraging external components, such as a PostgreSQL cluster or an S3 Object Store.

See the [NetBox Enterprise KOTS Installation](nbe-kots-installation.md) guide for more details.

0 comments on commit 3ec0601

Please sign in to comment.