Onemind-Services-LLC / cloudmydc-docs

https://docs.cloudmydc.com
Apache License 2.0
0 stars 1 forks source link

Add `NetBox Getting Started` #38

Closed abhi1693 closed 8 months ago

abhi1693 commented 9 months ago

Change Type

Addition

Proposed Changes

Add a sub-category called NetBox Getting Started. This shouls have the following sections/files

Resolve By

2024-01-11

abhi1693 commented 9 months ago

Overview

NetBox is a comprehensive solution for network automation, blending traditional IP address management (IPAM) and datacenter infrastructure management (DCIM) with robust APIs and extensions. As an open-source tool under the Apache 2.0 license, NetBox is essential for network automation in many organizations.

Key Features:

Installation Components

The installation of NetBox on CloudMyDC includes:

NetBox Container

This is the core component where the NetBox application runs. It's packaged as a container, meaning all the necessary dependencies and the application code are bundled together to run in an isolated environment. This container interacts with other services to manage and document network setups.

NetBox Worker Containers

These are additional containers running services that handle background processing tasks for NetBox. They ensure that tasks such as handling webhooks, running custom scripts, and generating reports don't interfere with the main application's responsiveness by processing these tasks asynchronously.

PostgreSQL

PostgreSQL is the relational database system used by NetBox to store all its data. It is known for its robustness, performance, and compliance with SQL standards. Within the NetBox context, PostgreSQL stores information about network infrastructure, IP addresses, and all other data NetBox manages.

Redis

Redis is an in-memory data store used by NetBox as a cache and for queuing operations. It helps in speeding up the application by storing frequently accessed data in memory and by managing background tasks (which are handled by the worker containers).

NGINX Load Balancer

NGINX acts as a reverse proxy and load balancer. In a CloudMyDC environment, it can be used to distribute incoming network traffic across multiple NetBox instances, improving the application's scalability and reliability. It can also handle SSL termination, offloading the encryption/decryption workload from the application containers.

These components together form the infrastructure needed to deploy NetBox on a platform like CloudMyDC efficiently. Each plays a specific role in ensuring the application is scalable, reliable, and responsive.

abhi1693 commented 9 months ago

System Requirements

The minimum and optimal consumption of RAM, CPU, and storage depends on the cluster size, installed components, active workload, etc.

Resources Development Production
NetBox Cloudlets 8 2 x 16
Worker Cloudlets 8 8
Postgresql Cloudlets 32 2 x 16
Redis Cloudlets 8 8
NGINX Cloudlets 8 8

Note (success):

  • Measurements were performed on the bare development and production clusters without any additional load. Thus, the specified values are minimum system requirements, which can be much higher for the loaded clusters (especially production one).
  • Development cluster topology includes:
    • 1 NetBox container
    • 1 worker (default queue)
    • 1 Redis
    • 1 PostgreSQL
    • 1 NGINX
    • 1 shared load balancer with built-in SSL
  • Production cluster topology includes:
    • 2 NetBox containers
    • 1 worker (default queue)
    • 1 Redis
    • 2 PostgreSQL with 1 pgpool running in a master-slave configuration
    • 1 NGINX with public IP

The development cluster is recommended only as a sandbox environment. For production purposes, a highly available topology with PostgreSQL clustered setup is recommended. Depending on the expected load, the required number of workers can be added manually, or appropriate automatic horizontal scaling can be configured.

abhi1693 commented 9 months ago

NetBox Installation

The NetBox application is available for automatic installation via the platform Marketplace under the Dev and Admin Tools section (or use the Search function to locate it). Note that this application is available for billing customers only.

Screenshot from 2024-01-09 00-07-07

Within the opened installation frame, customize the available options to get a cluster specifically tailored for your needs:

The default scaling strategy is set to Low Load, providing a conservative approach to scaling that suits most environments with regular traffic patterns.

Development Type Screenshot from 2024-01-09 00-08-15

Production Type image

Click the Install button and wait a few minutes for the platform to automatically configure your NetBox cluster.

VKumar786 commented 8 months ago

NetBox Getting Started what will be its position in side bar menu of documentation