diff --git a/docs/netbox-enterprise/nbe-ec.md b/docs/netbox-enterprise/nbe-ec-installation.md similarity index 91% rename from docs/netbox-enterprise/nbe-ec.md rename to docs/netbox-enterprise/nbe-ec-installation.md index 8277959..3a5bbe3 100644 --- a/docs/netbox-enterprise/nbe-ec.md +++ b/docs/netbox-enterprise/nbe-ec-installation.md @@ -1,20 +1,4 @@ -# Embedded Cluster - -### Requirements - -#### Host system requirements - -- 4 Virtual CPU (vCPU) -- 8 GB Memory (RAM) -- 40 GB SSD free disk space - -#### Host operating system - -- Linux (Kernel versions 4.3 and above) - -#### Architecture - -- x86-64 +# NetBox Enterprise Embedded Cluster Installation ### Deploying the cluster diff --git a/docs/netbox-enterprise/nbe-ec-requirements.md b/docs/netbox-enterprise/nbe-ec-requirements.md new file mode 100644 index 0000000..9acd385 --- /dev/null +++ b/docs/netbox-enterprise/nbe-ec-requirements.md @@ -0,0 +1,17 @@ +# NetBox Enterprise Embedded Cluster Requirements + +### Host system requirements + +The following are the _minimum_ system requirements for a deployment of NetBox Enterprise running two replicas. For larger environments with more replicas, additional resources should be allocated. + +- 4 Virtual CPU (vCPU) +- 8 GB Memory (RAM) +- 40 GB SSD free disk space + +### Host operating system + +- Linux (Kernel versions 4.3 and above) + +### Architecture + +- x86-64 \ No newline at end of file diff --git a/docs/netbox-enterprise/nbe-kots-installation.md b/docs/netbox-enterprise/nbe-kots-installation.md new file mode 100644 index 0000000..e024237 --- /dev/null +++ b/docs/netbox-enterprise/nbe-kots-installation.md @@ -0,0 +1,47 @@ +# NetBox Enterprise KOTS Installation + +### Deploying NetBox + +Access the NetBox Enterprise admin console and configure NetBox + +Open the provided URL in a browser. A prompt will require the password created in Step 2: + +![enterprise-admin-console](../images/netbox-enterprise/admin-console.png) + +A wizard will guide the configuration of NetBox for the environment: + +![configure-netbox-enterprise](../images/netbox-enterprise/configure-netbox-enterprise.png) + +Required configuration information includes: + +- Version of NetBox to deploy: + +![netbox-enterprise-version](../images/netbox-enterprise/netbox-enterprise-version.png) + +- Built-in or external PostgreSQL: + +![netbox-enterprise-postgres](../images/netbox-enterprise/netbox-enterprise-postgres.png) + +- Built-in or external S3-Compatible object store: + +![netbox-enterpise-storage](../images/netbox-enterprise/netbox-enterprise-s3.png) + +- Advanced settings to configure plugins and SSO remote authentication: + +![netbox-enterprise-overides](../images/netbox-enterprise/netbox-enterprise-overides.png) + +The deployment of NetBox Enterprise will then proceed: + +![netbox-enterprise-deploy](../images/netbox-enterprise/netbox-enterprise-deploy.png) + +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) + +### Verify + +NetBox Enterprise should now be fully deployed. + +![netbox-enterprise-login](../images/netbox-enterprise/netbox-enterprise-login.png) + +![netbox-enterprise-home](../images/netbox-enterprise/netbox-enterprise-app-home.png) diff --git a/docs/netbox-enterprise/nbe-kots-requirements.md b/docs/netbox-enterprise/nbe-kots-requirements.md new file mode 100644 index 0000000..b002e68 --- /dev/null +++ b/docs/netbox-enterprise/nbe-kots-requirements.md @@ -0,0 +1,64 @@ +# NetBox Enterprise KOTS Requirements + +### System requirements + +To install NetBox Enterprise on an existing cluster, the cluster must meet the following requirements: + +#### Admin console minimum requirements + +Existing clusters that have LimitRanges specified must support the following minimum requirements for the Admin Console: + +- **CPU resources and memory**: The Admin Console pod requests 100m CPU resources and 100Mi memory +- **Disk space**: The Admin Console requires a minimum of 5GB of disk space on the cluster for persistent storage, including 4GB for S3-compatible object store +- **1GB for rqlite PersistentVolume**: The Admin Console requires 1GB for a rqlite StatefulSet to store version history, application metadata, and other small amounts of data needed to manage the application + +#### Supported operating systems + +The following are the supported operating systems for nodes: + +- Linux AMD64 +- Linux ARM64 + +#### Available StorageClass + +The cluster must have an existing StorageClass available. KOTS creates the required stateful components using the default StorageClass in the cluster. + +#### Kubernetes version compatibility + +The version of Kubernetes running on the cluster must be compatible with the version of KOTS: + +|KOTS Versions |Kubernetes Compatibility| +|--- |--- | +|v1.105.2 and later |v1.29, v1.28, v1.27 | +|v1.102.1 to v1.105.1 |v1.28, v1.27 | +|v1.100.0 to v1.102.0 |v1.27 | + +#### OpenShift version compatibility + +For Red Hat OpenShift clusters, the version of OpenShift must use a supported Kubernetes version. + +#### Port forwarding + +To support port forwarding, Kubernetes clusters require that the SOcket CAT (socat) package is installed on each node. + +### RBAC Requirements + +The user that runs the installation command must have at least the minimum role-based access control (RBAC) permissions that are required by KOTS. If the user does not have the required RBAC permissions, then an error message displays: `Current user has insufficient privileges to install Admin Console`. + +The required RBAC permissions vary depending on if the user attempts to install KOTS with cluster-scoped access or namespace-scoped access: + +- Cluster-scoped RBAC Requirements (Default) +- Namespace-scoped RBAC Requirements + +#### Cluster-scoped RBAC Requirements (Default) + +By default, KOTS requires cluster-scoped access. With cluster-scoped access, a Kubernetes ClusterRole and ClusterRoleBinding are created that grant KOTS access to all resources across all namespaces in the cluster. + +To install KOTS with cluster-scoped access, the user must meet the following RBAC requirements: + +- The user must be able to create workloads, ClusterRoles, and ClusterRoleBindings. +- The user must have cluster-admin permissions to create namespaces and assign RBAC roles across the cluster. + +#### Namespace-scoped RBAC Requirements + +KOTS can be installed with namespace-scoped access rather than the default cluster-scoped access. With namespace-scoped access, a Kubernetes Role and RoleBinding are automatically created that grant KOTS permissions only in the namespace where it is installed. Please contact us for more details. \ No newline at end of file diff --git a/docs/netbox-enterprise/nbe-overview.md b/docs/netbox-enterprise/nbe-overview.md index bbb456c..77ba9e5 100644 --- a/docs/netbox-enterprise/nbe-overview.md +++ b/docs/netbox-enterprise/nbe-overview.md @@ -13,7 +13,7 @@ NetBox Enterprise supports two different deployment models to best address varyi The Embedded Cluster (EC) installation provides a fully managed, hands-off installation experience for installing NetBox Enterprise, including deploying and managing an underlying Kubernetes cluster. A bare Linux operating system with adequately sized compute resources is the only requirement. Embedded Cluster deployments deliver all the components and dependencies required to deploy and operate NetBox, including databases, application servers, application load balancers, and object stores. Embedded Cluster deployments still provide the flexibility of leveraging external components, such as a PostgreSQL cluster or an S3 Object Store. -See the [Installing NetBox Enterprise Embedded Cluster](nbe-ec.md) guide for more details. +See the [NetBox Enterprise Embedded Cluster Installation](nbe-ec-installation.md) guide for more details. ### KOTS installation diff --git a/mkdocs.yml b/mkdocs.yml index 861950b..0287a4f 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -72,8 +72,12 @@ nav: - Scheduled Maintenance: "maintenance.md" - Enterprise: - Overview: "netbox-enterprise/nbe-overview.md" - - Deployment models: - - Embedded Cluster: "netbox-enterprise/nbe-ec.md" + - Embedded Cluster: + - Requirements: "netbox-enterprise/nbe-ec-requirements.md" + - Installation: "netbox-enterprise/nbe-ec-installation.md" + - KOTS: + - Requirements: "netbox-enterprise/nbe-kots-requirements.md" + - Installation: "netbox-enterprise/nbe-kots-installation.md" - Integrations: - NetBox Ansible Collection: "netbox-integrations/netbox-ansible-collection.md" - pyATS: "netbox-integrations/pyats.md"