# Prerequistes

### Installation Package

ShyftSearch installation requires a compressed **`.tar` package** containing all essential binaries, configuration files, and dependencies. Once extracted, it provides the complete directory structure needed to install, configure, and run ShyftSearch on your system.

### PostgresSQL Database

PostgreSQL is a mandatory dependency for ShyftSearch, serving as the primary database for storing critical system data. It manages and maintains information such as datasets, search results, configurations, and metadata.\
See the [PostgresSQL](/supercloudnow-docs/undefined/installation-guide/bare-metal-or-virtual-machine-vm/postgressql.md) documentation for installation instructions.

### ShyftSearch Sizing

Proper sizing ensures optimal performance, scalability, and reliability of ShyftSearch in different deployment environments.\
The recommended configurations below are based on expected workloads, parallel search requirements, and data volume.

| Deployment Size | Concurrent Users (Parallel Searches) | CPU      | Disk   | RAM     |
| --------------- | ------------------------------------ | -------- | ------ | ------- |
| Small           | Up to 10 Users                       | 16 vCPU  | 300 GB | 32 GB   |
| Medium          | Up to 20 Users                       | 32 vCPU  | 600 GB | 64 GB   |
| Large           | Scalable for Enterprise Workloads    | 64+ vCPU | 1 TB+  | 128 GB+ |

### Network Requirements

#### Bandwidth

ShyftSearch requires adequate network bandwidth to ensure efficient data transfer and optimal search performance across nodes. The recommended bandwidth sizing varies based on the deployment scale:

| Deployment Size | Recommended Bandwidth |
| --------------- | --------------------- |
| Small           | 1 GB/s                |
| Medium          | 10 GB/s               |
| Large           | 25 GB/s               |

#### Ports

ShyftSearch supports configuration with any available network ports. During installation, two distinct ports are required — one for the **Master** and another for the **Worker**. These ports facilitate smooth communication between system components, ensuring efficient task coordination and data processing.


---

# 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://supercloudnow.gitbook.io/supercloudnow-docs/undefined/installation-guide/bare-metal-or-virtual-machine-vm/prerequistes.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.
