Docs > Deployment & Installation > On-Prem Deployment & Installation
1. Getting Started with vuSmartMaps™
3. Console
5. Configuration
6. Data Management
9. Monitoring and Managing vuSmartMaps™
vuLauncher is a standalone application designed to facilitate the deployment of vuSmartMaps™. The application operates via a command-line interface (CLI) and supports installation in two distinct environments:
vuSmartMaps requires a managed Kubernetes cluster provided by the customer. Supported Kubernetes clusters include:
vuSmartMaps can be installed on virtual machines with supported OS. However, this requires additional effort to set up a native Kubernetes cluster on the VMs before installing the vuSmartMaps platform.
💡Note: vuLauncer shall be run from one of the VMs provided for installation. In general, one VM is designated for vuLauncher, which will facilitate the installation process and is subsequently used for internal platform monitoring.
Prerequisites for the VM
The following are specific prerequisites for the VMs used for installation.
Before running vuLauncher, ensure the following prerequisites are met:
sudo swapoff -a
fs.may_detach_mounts=1
Before proceeding, ensure that the following ports are properly configured on your system.
External Access Requirements to download vuSmartMaps binary (for installations and during upgrades)
SNo. |
Source |
Destination |
Ports |
Protocol |
Description |
1 |
VM designated to run vuLauncher |
download.vunetsystems.com |
443 |
TCP |
To download the vuSmartMaps installation package. |
2 |
All VMs |
https://ghcr.io/vunetsystems/ |
443 |
TCP |
VuNet’s GitHub container registry |
3 |
All VMs |
https://pkg-containers.githubusercontent.com |
443 |
TCP |
VuNet’s GitHub package containers |
Generic External Access Requirements
SNo. | Source | Destination | Ports | Protocol | Description |
1 | Users and administrators of vuSmartMaps | vuSmartMaps VMs | 22,443 | TCP | vuSmartMaps Installation, Launch, and configuration |
Data Source specific Access Requirements for telemetry collection.
SNo. | Source | Destination | Ports | Protocol | Description |
1 | Nodes where vuSmartMaps agents are installed | vuSmartMaps VMs | (SSL)9094, 31094 (NON-SSL) 9092,31092 | TCP | Port of agents to send system and application Logs & infra Metrics to vuSmartMaps. Since Vusmartmaps is set up on the K8S cluster, the listener of the collector service could be running on any of the VMs. Hence the ports should be opened to all the VMs. |
2 | Application Servers on which vunet’s APM instrumentation agents are setup | vuSmartMaps VMs | 4317, 4318 | TCP | Data Collection channel for APM traces and logs. Since VuSmartMaps is set up on a K8S cluster, the listener of the collector service could be running on any of the VMs. Hence the ports should be opened to all the VMs. |
3 | vuSmartMaps VMs | Network Devices providing SNMP-based access to telemetry | 161 | UDP | Port for SNMP based polling from vuSmartMaps to supported network/security devices |
4 | vuSmartMaps VMs | Systems to which vuSmartMaps need to connect over http for telemetry collection | 443 | TCP | Port for http polling, prometheus scraping, etc |
5 | vuSmartMaps VMs | Databases to which vuSmartMaps need to connect over JDBC for performance metrics collection | Applicable SQL Database listener ports | TCP | Port for JDBC-based polling to fetch Database health metrics |
6 | Network devices sending SNMP traps | vuSmartMaps VMs | 162 | UDP | Port for sending SNMP traps from network devices to vuSmartMaps |
7 | Network devices sending syslogs | vuSmartMaps VMs | 514 | UDP | Port for sending syslogs from network devices to vuSmartMaps |
Within the vuSmartMaps cluster, various services including the Kubernetes control plane interact across worker nodes. It is preferred that all the VMs are set up within the same VLAN/subnet for unrestricted access. However, if access control policies are enforced, the following communication ports must be opened.
SNo. | Port | Protocol | Description |
1 | 22 | TCP | SSH port. This port should be open for communication from the vuLauncher VM to all vuSmartMaps VMs. |
2 | 443 | TCP | Main UI access. Ports should be open between all vuSmartMaps servers and vuLauncher VM. |
SNo. | Port | Protocol | Description |
1 | 6443 | TCP | Kubernetes Orchestration API port. This port should be open for communication between all vuSmartMaps VMs. |
2 | 10250 | TCP | Kubernetes Orchestration service port. This port should be open for communication between all vuSmartMaps VMs. |
3 | 10259 | TCP | Kubernetes Orchestration service port. This port should be open for communication between all vuSmartMaps VMs. |
4 | 10257 | TCP | Kubernetes Orchestration service port. This port should be open for communication between all vuSmartMaps VMs. |
5 | 8472 | UDP | Kubernetes vxLan port. This port should be open for communication between all vuSmartMaps VMs. |
6 | 2379 | TCP | Kubernetes Orchestration key-value DB port. This port should be open for communication between all vuSmartMaps VMs. |
7 | 2380 | TCP | Kubernetes Orchestration key-value DB port. This port should be open for communication between all vuSmartMaps VMs. |
8 | 8000 | TCP | Longhorn data port |
💡Note:For a single node deployment, ports should be opened internally on the same node. In the case of multi-node deployment, ports should be opened internally on all the nodes.
Below is the list of configuration files included in the build. These files are client-specific and may vary for each deployment.
In summary, there are two primary YAML files per client that require thorough verification before initiating the deployment process:
The environment configuration file is located at the relative path:
launcher/static-files/input.yaml.
This file includes generic, environment-specific settings such as VM credentials and load balancer IP addresses. For VM credentials, either a password or a private key is required.
# specify if kubernetes cluster is being shared across other user
is_cluster_shared: false
# ssh credentials for all the nodes that are provided in the sizing file.
vm_credentials:
username: "user"
password: "password"
private_key: "path to privatekey" # private key file path
# service name and its loadbalancer
loadbalancer:
service_name: "loadbalancer address for it"
is_cluster_shared: When deploying vuSmartMaps in an existing Kubernetes cluster that is also utilized by others, this parameter should be set to true.
vm_credentials: Specify the username, password, or private key required to access all nodes in the cluster. The configuration assumes a common set of credentials for accessing all nodes.
loadbalancer: This section will have load balancer addresses for each external facing service of vuSmartMaps. This configuration applies exclusively to managed Kubernetes clusters hosted on cloud platforms.
The sizing file is unique to each environment and client installation. It provides control over resource limits for services, service grouping across nodes, and additional configurations.
It has the following sections:
primary_images section contains the credentials to access the docker images directly from the ghcr. If the client can access ghcr, we will fetch images during runtime. If the VM doesn’t have a connection to ghcr, then we will ship the images with the build, if so then one ignores the credentials here. Both the username and password are in encrypted mode.
primary_images:
location:"https://ghcr.io"
username:"*******"
password:"*******"
email:"[email protected]"
category section contains a list of tags, which will be used to group the nodes. If the user wants to create a new category its name should be specified here.
category:
- "data-store-optimized"
- "data-hub-optimized"
- "core-services-optimized"
Env_name parameter specifies the type of environment being used. If we are deploying in VM (without Kubernetes cluster), then the value should be “vm” or else for existing Kubernetes cluster, then the value should be “cloud”
env_name: "vm"
node section is applicable only for the “vm” environment (i.e. when env_name: “vm”). This section contains the details of all nodes necessary for installing the Kubernetes cluster.
node:
- ip_address: "10.1.1.2"
tags:
- "core-services-optimized"
storage:
default: ["/data1"]
hot: ["/data2", "/data3"]
- ip_address: "10.1.1.2"
storage:
default: ["/data1"]
vusmart: "/data2"
default-replica: ["/data"]
hot: ["/data2"]
warm: ["/data3"]
tags:
- "core-services-optimized"
- ip_address: "10.1.1.1"
is_master: true
tags:
- "core-services-optimized"
storage:
default: ["/data1"]
For the “cloud” environment, the following will be the node section.
node:
- node_name: "node-1"
tags:
- "core-services-optimized"
- node_name: "node-2"
tags:
- "core-services-optimized"
- node_name: "node-3"
tags:
- "core-services-optimized"
This section will be available only in a “cloud” type environment. Here, the storage class for each tier must be specified. The default tier is mandatory, while the others are optional.
storage_class:
default: "storageclass-1"
hot: "storageclass-2"
cold: "storageclass-3"
warm: "storageclass-4"
default-replica: ""
services section will provide a list of all services to be deployed as part of the vuSmartMaps installation. Each entry will include the following elements:
services:
- name: "service_name"
tags:
- "core-services-optimized"
resource_limit:
min:
cpu: "0.25"
memory: "500Mi"
max:
cpu: "0.4"
memory: "2Gi"
replica: 1
disk:
default: 2Gi
default-replica: 2Gi
config_override:
defaultSettings.key1: "value1" defaultSettings.key2: “value2”
-wget https://download.vunetsystems.com/_Downloads_/_vuDocker_/vuSmartMaps_NG_2_13_0.tar.gz --user=<username> --password=<password> --no-check-certificate
💡Note: If you don’t have access to the download server, download the binaries directly from this URL.
Please check with the Vunet support team to get the credentials for the Download server and the sizing file.
tar -xvzf vuSmartMaps_NG_2_13_0.tar.gz
./build/launcher_linux_x86 –sizing <path to sizingConfig>
4. It will show the resource allocation details, update the sizing file, and restart the launcher if any modifications are needed for resource allocation
The entire workflow of the launcher is divided into the following stages :
💡Note: If /var/lib/containerd already exists with some data, then this stage will fail. So please ensure that /var/lib/containerd and /var/lib/kubelet are empty.
./build/launcher_linux_x86 –sizing <path to sizingConfig> –debug
Before deploying vuSmartMaps, ensure your VM has at least 6 cores, 64GB memory, and 200GB disk space. Additionally, you need to create three mount points (data1, data2, data3) and ensure ports are properly configured. For a detailed list of prerequisites, refer to the Prerequisites section.
To install vuSmartMaps on a single node, download the installation binary, extract the tar file, and start the vuLauncher. Access the launcher UI from a web browser. For step-by-step instructions, visit the Single Node Installation section.
During the installation, you can configure three types of storage classes: Hot, Warm, and Cold. Each class serves different purposes based on data access frequency. Detailed instructions can be found in the Configure Data Store section.
For a multi-node cluster installation, you need a dedicated VM for the SiteManager with a minimum configuration of 200GB disk space, 6 cores, and 64GB RAM. Ensure this VM has connectivity to all other nodes. For more details, see the Multi-Node Cluster Installation section.
You need to upload a valid license file that contains the services to be installed and their required resources. If you encounter issues, ensure the license format is correct and retry. For more information, check the Upload License section.
vuSmartMaps supports Ubuntu (20.04, 22.04), RHEL (7.x, 8.x, 9.x), CentOS (7.x, 8.x), Rocky (9.x), and Oracle Linux (7.x, 8.x).
Ensure that specific ports, such as 6443, 2379, and 10250, are open and properly configured on your system. A comprehensive list of required ports and their purposes can be found in the Ports Description section.
After deployment, ensure you run specific commands on the master node to finalize the setup. For detailed post-deployment steps, visit the Post Deployment Steps section.
Browse through our resources to learn how you can accelerate digital transformation within your organisation.
VuNet’s Business-Centric Observability platform, vuSmartMaps™ seamlessly links IT performance to business metrics and business journey performance. It empowers SRE and IT Ops teams to improve service success rates and transaction response times, while simultaneously providing business teams with critical, real-time insights. This enables faster incident detection and response.