White Label Private Cloud Get Started¶
White Label Private Cloud Getting Started Guide¶
This guide outlines the requirements for a QVOICE Platform/QVOICE Platform white label partner to install, brand and setup the QVOICE Platform/QVOICE Platform platform in their datacenter, private cloud or public cloud.
The white label process is a turn-key service offered by QVOICE Platform to its partners and a process takes usually takes between one to four weeks from signing a contract to going to production.
White label private cloud hosting refers to a cloud computing service where a third-party provider (QVOICE Platform Customer/Partner) offers infrastructure resources, such as servers, storage, and networking, to clients who can then brand and resell these services as their own. The term "white label" implies that the hosting service is presented as if it were the client's own product or service, with the provider's (QVOICE Platform/QVOICE Platform) branding being hidden or replaced by the client's branding.
Here's a breakdown of the key components:
Private Cloud Hosting:
- Cloud Infrastructure: The hosting provider maintains a cloud infrastructure comprising servers, storage, and networking equipment.
- Virtualization: Virtualization technologies enable the creation of virtual instances of servers, allowing for more efficient resource utilization and scalability.
White Labeling:
- Branding: The hosting provider allows clients to brand the hosting services with their own logo, company name, and other identity elements. This gives the appearance that the hosting services are owned and operated by the client.
- Customization: Clients may have the flexibility to customize aspects of the hosting environment to align with their specific needs or to meet the requirements of their customers.
Reselling:
- Distribution: Clients can resell the white-labeled hosting services to their own customers or end-users. This is particularly common among businesses that want to offer cloud hosting services without investing in building and maintaining their own infrastructure.
Benefits:
- Cost-Efficiency: Clients can leverage the resources of the hosting provider, avoiding the upfront costs associated with building and maintaining a private cloud infrastructure.
- Time-Saving: White label private cloud hosting allows clients to quickly enter the market with their branded hosting services, saving time on infrastructure setup and configuration.
- Scalability: Clients can scale their hosting services based on demand without worrying about the underlying infrastructure.
Security and Compliance:
- Isolation: Private cloud hosting ensures that the resources allocated to a specific client are isolated from those of other clients, enhancing security and privacy.
- Compliance: Depending on the provider, white label private cloud hosting may adhere to specific compliance standards, which is crucial for businesses operating in regulated industries.
Responsibility Breakdown¶
QVOICE Platform White label Partner¶
- DNS Infrastructure
- Fully Qualified Domain
- Servers and Networking Infrastructure
- SIP Trunk and DID Provider in Region
- Final acceptance testing
QVOICE Platform Vendor¶
- QVOICE Platform/QVOICE Platform Software Suite
- Installation
- Branding
- Integration with SIP Trunk and DID Providers
- Dialplan Setup
- Training
- Tier 3 - Real time support
White Label Infrastructure¶
Servers and Networking Infrastructure¶
QVOICE Platform service is designed to be redundant and scalable. It can be installed into a single Linux Server for demo purposes, however it is recommended that a production single cluster installation is installed across of minimum 3 servers. A geo redundant installation would consist of minimum two geo-redundant datacenters with a three server cluster in each.
Single Server Installation - Production (No Redundancy)¶
- Single Server of VM
- 32GB Memory
- 16 Cores
- 500GB SSD
- Minimum: 10K IOPS per system
- IOPS Test
- OS
- Debian 12: Bookworm 64bit (Latest)
- https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-12.6.0-amd64-netinst.iso
- Partitioning:
- 100% in /
- No need to partition into mounts
- Debian 12: Bookworm 64bit (Latest)
- Credentials
- Please provide root access.
- Please provide root access.
- Public IPS (Recommended)
- Public IP address to be on each server
- Should be able to ping it from Internet
- Platform must not be in front of NAT
- Routers can create DMZ zones and route public IP addresses to the platform
- eg: Enterprise VM infrastructure or BareMetal Servers
- Public IP address to be on each server
- Private IPS with Elastic Public IPs (Supported)
- Private IP in each in each server
- Elastic Public IP to be mapped to each Private IP
- eg: AWS installation or a VMWare installation with only private IP space
- Geo Redundancy
- 50mbps and latency less than 20ms between Geo Sites
- Dual-redundancy links
Single Datacenter Production Cluster Installation¶
- Three servers or VMs
- Same as above
Geo-Redundant: Two Datacenters Production: Two Cluster Installation¶
- Three servers or VMs in Datacenter Cluster 1
- Same as above
- Same as above
- Three servers or VMs in Datacenter Cluster 2
- Same as above
- Same as above
- Geo Redundancy
- 50mbps and latency less than 50ms between Geo Sites
- Dual-redundancy links
Fully Qualified Domain Domain¶
Create a AWS route53 account and provide access to user info@fonouc.com
- QVOICE Platform uses AWS route53 to setup DNS records and failover
- QVOICE Platform team can do all the DNS configuration for you
Customer must Allocate the full domain or a sub domain name that will be used to navigate and access the branded UCaaS/CCaaS service.
- A domain can be purchased via godaddy
- A domain NS record needs to be pointed to the AWS Route53 Name Servers
DNS¶
As an example using customer-domain.com as the domain, however, in reality the customer must choose a custom domain or subdomain.
In the scenario where DNS will be managed by the customer, the following DNS configuration is required on the domain.
Choose your service domain¶
Allocate a full domain or subdomain for the white-label platform. Examples:
| Style | Example | Notes |
|---|---|---|
| Apex domain | clouduc.com |
Entire zone used for UCaaS/CCaaS |
| Subdomain | uc.clouduc.com |
uc under an existing parent domain |
In the steps below, <domain> means your chosen FQDN (e.g. clouduc.com or uc.clouduc.com).
Required DNS records¶
When your team manages DNS at the registrar (instead of delegating to QVOICE Platform Route53), create these records:
| Name | Type | Value | Purpose |
|---|---|---|---|
_acme-challenge.<domain> |
CNAME | _acme-challenge.qvoice.net |
Automates wildcard TLS certificate validation (ACME) |
*.<domain> |
CNAME | <domain> |
Wildcard — routes all subdomains to the service domain |
uc01.<domain> |
A | Public IP of host 1 | First cluster node |
uc02.<domain> |
A | Public IP of host 2 | Second cluster node |
uc03.<domain> |
A | Public IP of host 3 | Third cluster node |
Example when <domain> is uc.clouduc.com:
_acme-challenge.uc.clouduc.com CNAME _acme-challenge.qvoice.net
*.uc.clouduc.com CNAME uc.clouduc.com
uc01.uc.clouduc.com A <public-ip-server-1>
uc02.uc.clouduc.com A <public-ip-server-2>
uc03.uc.clouduc.com A <public-ip-server-3>
Example when <domain> is clouduc.com:
_acme-challenge.clouduc.com CNAME _acme-challenge.qvoice.net
*.clouduc.com CNAME clouduc.com
uc01.clouduc.com A <public-ip-server-1>
uc02.clouduc.com A <public-ip-server-2>
uc03.clouduc.com A <public-ip-server-3>
ACME challenge
The _acme-challenge CNAME delegates certificate validation to QVOICE Platform so wildcard *.<domain> TLS can renew without manual TXT updates at your registrar.
Additional records
The apex <domain> may also need A records with failover for the main customer URL, plus MX and SRV records — see DNS Zone Example for a single cluster below.
Single Cluster Example¶
- Cluster Domain: cl1.customer-domain.com
Multi Cluster Example¶
Records belonging to cluster1 and cluster2 must be added under one subdomain. One needs to label a cluster via “cl1”, “cl2” or “cl1-east”, “cl-west” to designate the geo location. Other examples are “dc-nyc” and “dc-chicago” designating locations that would make sense in the context of the customer datacenter locations.
- Cluster 1 Domain: cl1.customer-domain.com
- Cluster 2 Domain: cl2.customer-domain.com
DNS Zone Example for a single cluster¶
|
#Main service domain used by customers, protected by AWS route53 heath checks and A record failover
_sip._udp.customer-domain.com 20 3 5060 uc02.customer-domain.com Multi A record that includes IP of all 3 servers |
- Wildcard SSL Cert
- *.customer-domain.com
- Purchase a wildcard cert from sslmate.com or others
- CNAME for Web GUI
- www points to cloudpbx.customer-domain.com
- This will server as we WEB GUI address to the QVOICE Platform platform.
- MX Records
- Used for Email to Fax integration
- MX priority 1 to: cloudpbx01.customer-domain.com
- MX priority 2 to: cloudpbx02.customer-domain.com
- MX priority 3 to: cloudpbx03.customer-domain.com
- SRV Records
- Used for SIP redundancy
- _sip._udp.customer-domain.com
- Priority 1: cloudpbx01.customer-domain.com
- Priority 2: cloudpbx02.customer-domain.com
- Priority 3: cloudpbx03.customer-domain.com
Ports¶
|
#Web TCP 443 TCP 22 TCP 8443 TCP 5061 #RTP Ports UDP Range 16384:63768 #STUN/WebRTC UDP 5349 #Email to Fax (Optional) TCP 25 #Sercured TFTP for legacy devices (Optional) UDP 69 |
Carrier Trunks¶
Platform must connect to one or more carrier sip trunks.
It is recommended to load-balance across multiple SIP trunk for redundancy.
Furthermore, the carrier should also be load balancing inbound calls to the platform across all three VM IPs.
Carrier Trunk Options
- One big sip trunk from the platform to your SIP trunk carrier.
- Have all customers use that one account
- (Recommended)
- Partner can choose to have a sip trunk per Tenant account
- Each Tenant account has its own sip trunk to carrier.
|
- Each Tenant account has its own sip trunk to carrier.
White Label¶
- Logo
- SVG High resolution image
- SVG High resolution image
- Background image on welcome screen
- Company slogan on welcome screen
Server SSD Disk Speed Test¶
Install fio app and run the fio benchmark test.
- apt-get install fio
#Run Disk tests
wget -qO- yabs.sh | bash -s -- -gi
Confirm the 4K IOPS is over 10K

Premium Integrations¶
AI Transcriptions, Translations, Summary, Sentiment¶
Partners must provide API credentials for AI features (transcription, translation, summaries, sentiment, and AI agents). Share access with the QVOICE Platform team during onboarding.
| Provider | Requirement | Used for |
|---|---|---|
| OpenAI | OpenAI API key | LLM features, summaries, AI agents |
| Gemini API key | LLM and multimodal AI features | |
| Deepgram | Deepgram API key | Speech-to-text transcription |
- Create an API key for OpenAI and provide it securely to the QVOICE Platform team
- Create an API key for Gemini and provide it securely to the QVOICE Platform team
- Create an API key for Deepgram and provide it securely to the QVOICE Platform team
