A.1 - On-premise Hosting
On-premise hosting is where the servers are hosted within your premises, encapsulated by private network with network firewalls or VPN infrastructure implemented in favour of security. We recommend this hosting method if you:
-
Have strict security policy related to data privacy and legislation in corporate, country or region.
-
Prefer a closed or restricted network that is unlikely reachable by public network.
-
Have existing infrastructure in your premises that supports this deployment type.
A.1.1 - Server Deployment Configuration and System Requirements
The following are the examples of on-premise hosting, which shown in diagrams below:-
-
Two Dedicated Servers.
-
Two Virtual Machines within the same hypervisor machine (E.g. VMWare vSphere).
-
One Dedicated Windows Server (Host OS) with Ubuntu Server (Guest OS) hosted within it.
Each server deployment configuration has its own system requirements corresponding to the number of FootfallCam™ Devices being supported:-
System Requirements for Two Dedicated Servers
Item / Size | Small | Medium | Large |
FootfallCam™ Devices Count | Up to 100 devices | Up to 500 devices | Up to 1000 devices |
PRIMARY SERVER | |||
CPU | 8 Cores 64-bit | 12 Cores 64-bit | 16 Cores 64-bit |
Memory | 32GB or above | 64GB or above | 128GB or above |
Storage** | 500GB or above | 1TB or above | 2TB or above |
Operating System | Windows Server 2012 Standard or above | ||
SQL Server License | Microsoft SQL Server 2016 or above (Standard or Enterprise Edition) | ||
SECONDARY SERVER | |||
CPU | 16 Cores 64-bit | 24 Cores 64-bit | 32 Cores 64-bit |
Memory | 128GB or above | 256GB or above | 512GB or above |
Storage** | 1TB or above | 2TB or above | 3TB or above |
Operating System | Ubuntu Server 20.04 LTS |
System Requirements for Two Virtual Machines within the same hypervisor machine
Item / Size | Small | Medium | Large |
FootfallCam™ Devices Count | Up to 30 devices | Up to 120 devices | Up to 300 devices |
HYPERVISOR SERVER | |||
Hypervisor OS | Microsoft Hyper-V Server 2016 or above, VMWare vSphere, or equivalent Tier-1 hypervisor | ||
PRIMARY SERVER (VM) | |||
vCPU | 8 Cores 64-bit | 12 Cores 64-bit | 16 Cores 64-bit |
Memory | 32GB or above | 64GB or above | 128GB or above |
Storage** | 500GB or above | 1TB or above | 2TB or above |
Operating System | Windows Server 2012 Standard or above | ||
SQL Server License | Microsoft SQL Server 2016 or above (Standard or Enterprise Edition) | ||
SECONDARY SERVER (VM) | |||
vCPU | 16 Cores 64-bit | 24 Cores 64-bit | 32 Cores 64-bit |
Memory | 128GB or above | 256GB or above | 512GB or above |
Storage** | 1TB or above | 2TB or above | 3TB or above |
Operating System | Ubuntu Server 20.04 LTS |
System Requirements for One Dedicated Server (Host OS) with One Virtual Machine (Guest OS)
Item/Size |
Small |
Medium |
Large |
Capacity |
Up to 30 devices |
Up to 120 devices |
Up to 300 devices |
PRIMARY SERVER (HOST OS) |
|||
CPU |
8 Cores 64-bit |
12 Cores 64-bit |
16 Cores 64-bit |
Support Virtualization |
Yes |
||
Memory |
32GB or above |
64GB or above |
128GB or above |
Storage* |
500GB or above |
1TB or above |
2TB or above |
Operating System |
Windows Server 2012 Standard or above |
||
SQL Server License |
Microsoft SQL Server 2016 or above (Standard or Enterprise Edition) |
||
Hypervisor |
Microsoft Hyper-V, VMWare Workstation, or equivalent Tier-2 Hypervisor |
||
SECONDARY SERVER (GUEST OS) |
|||
Allocated vCPU |
16 Cores vCPU or above |
24 Cores vCPU or above |
32 Cores vCPU or above |
Allocated Memory |
128GB or above |
256GB or above |
512GB or above |
Allocated Storage |
1TB or above |
2TB or above |
3TB or above |
Operating System |
Ubuntu Server 20.04 LTS |
||
Virtual Network Adapter Mode |
Bridged |
A.1.2 - Network Configuration
As servers are hosted within a private network, depending on your project requirements, we can split into 4 general scenarios:
-
Servers and FootfallCam™ Devices are connected in the same network.
-
Servers and FootfallCam™ Devices are connected in the same location, but different subnets.
-
Servers and FootfallCam™ Devices requires Internet Connectivity between each other.
-
Servers and FootfallCam™ Devices are connected via established VPN network.
Server Address must be configured within the devices correctly to the Primary Server according to which scenario your servers are hosted in.
A.1.2.1 - Servers and FootfallCam™ Devices are connected in the same network
In this example, both servers and FootfallCam™ Devices are in the same network and subnet. You can connect the devices directly to the servers via the IP Address given in the network.
You are required to manually enter the correct Server Address in each device's settings as, in this example, "http://192.168.1.11" (Primary Server IP Address). As for the Secondary Server, FootfallCam™ Devices will automatically acquire the server address from Primary Server, which will be pre-configured during the software installation process.
A.1.2.2 - Servers and FootfallCam™ Devices are connected in the same location, but different subnets
If your servers and devices are located in the same location, but with different subnet due to the existing infrastructure or network policy on held, you are required to configure your network such that the devices is able to reach both Primary and Secondary servers.
i. Port forwarding
Port forwarding or equivalent networking maneuvers must be done in order to successfully establish connection between devices and servers through the provided NAT or subnet routers. For this instance, the port forwarding rules must be configured as followed:
Rule Name | External Port | Internal IP Address | Internal Port |
Subnet_1_to_Primary_Server | 8873 | 192.168.10.11 | 8873 |
Subnet_1_to_Secondary_Server | 8080 | 192.168.10.12 | 8080 |
iii. Devices configuration
After setting up the port forwarding rules, you can manually enter the correct Server Address in each device's settings as, in this example, "http://192.168.10.11" (Primary Server IP Address). As for the Secondary Server, FootfallCam™ Devices will automatically acquire the server address from Primary Server, which will be configured during the software installation process.
A.1.2.3 - Servers and FootfallCam™ Devices requires Internet connectivity between each other
The networks on both devices and servers are different and can only be communicated via Internet connection. Compared to the previously mentioned network configuration, there are several things that needs to be done to ensure the connections can be established between devices and servers.
i. Getting a domain hostname from DNS or DDNS Provider
Normally, your Internet connection should have provided a Public IP address, which allows external network to recognize your network location. With the help of a Domain Name System (DNS) hostname which can be acquired from a provider of your choice (E.g. Cloudflare or Fasthosts), and create the following A records shown below: -
Type | Name** | Target Server | TTL |
A record | portal.ffc.mydomain.com | <<Public IP provided by your ISP>> | Auto |
A record | ws.ffc.mydomain.com | <<Public IP provided by your ISP>> | Auto |
In addition, most ISP will only provide dynamic Public IP address, which will be a hassle when your ISP decided to change your Public IP address at anytime.
To tackle this, you are required to get a Dynamic Domain Name System (DDNS) hostname that will refresh your IP address whenever it changes. We recommend to subscribe to a provider such as NO-IP.
After getting a hostname from the provider, you can login to your DDNS account through your supported router or a client application provided to make sure the hostname keep pointing to your latest public IP address.
Please refer to your DDNS provider's instruction on how to setup DDNS feature for your network.
ii. Port forwarding
The port forwarding rules must be configured as followed:
Rule Name | External Port | Internal IP Address | Internal Port |
External_to_Primary_Server | 8873 | 192.168.10.11 | 8873 |
External_to_Secondary_Server | 8080 | 192.168.10.12 | 8080 |
iii. Devices configuration
After setting up the port forwarding rules, you can manually enter the correct Server Address in each device's settings as, in this example, "http://portal.ffc.mydomain.com:8873" (Primary Server Hostname). As for the Secondary Server, FootfallCam™ Devices will automatically acquire the server address from Primary Server, which should configured during the software installation process.
A.1.2.4 - Servers and FootfallCam™ Devices are connected via established VPN network
If your infrastructure wanted to or has deployed a VPN networks across multiple sites, depending on your network configuration, make sure the devices are able to reach both servers.
In this instance, there is an existing VPN networks deployed, with a few sites and the servers connected to in a given subnet 172.16.0.0/16. You can manually enter the correct IP address in each device's settings as, in this example, "http://172.6.1.1:8873" (Primary Server Hostname). As for the Secondary Server, FootfallCam™ Devices will automatically acquire the server address from Primary Server, which should configured during the software installation process.
A.1.3 - Public Cloud Hosting
Beside on-premise hosting, you may choose to host our FootfallCam™ Solutions onto Public Cloud Servers. There are several well-known public cloud providers that has great reputation and functionalities which will fulfill your project requirements:
-
Amazon AWS
-
Microsoft Azure
-
Google Cloud
-
OVH Cloud
-
Linode
i. Prepare your servers
You may choose the server type base on the availability and the location of the chosen providers, such as Virtual Private Server (VPS), Dedicated Server, and many more, as long as your procured servers must adhere to our system requirements and network requirements, which you can learn all from 26.2.2 System Requirements and 26.2.3 Networking Requirements.
ii. Getting a domain hostname from a DNS Provider
Normally, your Internet connection should have provided a Public IP address, which allows external network to recognize your network location. With the help of a Domain Name System (DNS) hostname which can be acquired from a provider of your choice (E.g. Cloudflare, Fasthosts or Namecheap), and register to your preferred platform such as Amazon Route 53, Cloudflare, Fasthosts or equivalent. Create the following A records shown below: -
Type | Name** | Target Server | TTL |
A record | portal.ffc.mydomain.com | <<Primary Server Public IP Address>> | Auto |
A record | ws.ffc.mydomain.com | <<Secondary Server Public IP Address>> | Auto |
iii. Devices configuration
After setting up the port forwarding rules, you can manually enter the correct Server Address in each device's settings as, in this example, "http://portal.ffc.mydomain.com:8873" (Primary Server Hostname). As for the Secondary Server, FootfallCam™ Devices will automatically acquire the server address from Primary Server, which should configured during the software installation process.