- Print
- PDF
This document describes the server requirements of Knovvu TTS solution.
Acronyms and Abbreviations
TTS: Text-to-Speech
DB: Database
NFS: Network File System
VM: Virtual Machine
Important Notes
Platforms Requirements: The system is designed to operate on both Openshift and Kubernetes platforms.
Replica Settings: The minimum number of replicas for each component is predefined. Adjustments may be needed depending on the specific deployment topology.
Product Requirements: Default settings for TTS pods are based on the assumption of a single voice per TTS instance. Adjustments can be made based on specific customer infrastructure and requirements.
Multiple Language Support: For deployments requiring more than one language, please consult with us for proper configuration and resource allocation.
TTS Testing Environment: Tests are conducted with caching enabled (cache size of 5000) and an average audio file duration of two seconds on machines with 4 CPU cores.
Sestek Installation Support: When Sestek is responsible for Kubernetes installation, only CentOS versions 7/8 and RHEL versions 7/8 are supported.
System Upgrades and Security:
- Prevent unauthorized OS major version upgrades.
- Maintain SELinux in permissive mode to avoid potential conflicts.
- OS disks should be configured for expandability using LVM.
- Avoid unmounting or altering OS disk mount configurations.
- Disable unattended upgrades, firewalls, antivirus, and malware software on VMs.
Hardware Requirements: Compliance with specified hardware requirements is critical from the start as post-monitoring upgrades are discouraged and could lead to performance issues.
Software Updates: Refrain from upgrading packages that have fixed versions from the installation, including container runtime and Kubernetes components.
Testing Environments:
- Managed Environments: Minikube is configured to meet the minimum testing requirements. Contact us for tailored testing environments.
- Unmanaged Environments: Worker nodes should include Load Balancers (LB) and Network File System (NFS) capabilities. Clients are responsible for ensuring physical and network-related availability and backup for master and worker VMs in production setups.
- Production: For unmanaged environments, the client must ensure physical and network-related availability and backup for master and worker VMs.
Network and Monitoring:
- Wireshark is essential for projects using Media Resource Control Protocol (MRCP).
- A minimum connection speed of 100 Mb/s is required.
Database Compatibility and Configuration
Supported Databases: The Knovvu TTS solution is compatible with PostgreSQL versions 12, 13, and 14, as well as Microsoft SQL Server 2016 or newer. This selection allows for flexibility in database management and ensures compatibility with most enterprise environments.
Database Naming: The default database designated for the Knovvu TTS solution is named "tts". Customization of the database name is possible to align with specific project requirements or organizational standards.
Database Management:
- Maintenance Tasks: Customers are responsible for routine database maintenance tasks, including periodic backups and replication, utilizing their own database management resources.
- Access Permissions: Appropriate permissions must be granted to database users to ensure seamless connectivity and operation.
Terms Glossary
Term | Definition |
---|---|
Node | A physical or virtual machine that runs the services required for the Knovvu TTS solution. |
Pod | A small, scalable unit of deployment in Kubernetes that contains one or more containers. |
VM | A virtual machine that can host Knovvu TTS services when the system is not running directly on physical hardware. |
Cluster | A set of nodes or VMs configured to work together to provide scalability and redundancy. |
vCPU | Virtual CPU assigned to the VM or container running Knovvu TTS services. |
vCPU Request | The minimum CPU capacity allocated to the service within a container to ensure a smooth operation. |
vCPU Limit | The maximum CPU capacity that a container can use. It ensures that the service does not overconsume resources, impacting other services on the node. |