-
Notifications
You must be signed in to change notification settings - Fork 104
Requirements
- x86-64 CPU with SSE 4.2, AVX2, ADX and BMI2 support (Intel Broadwell and later microarchitectures). Tempesta DB also requires 2MB huge pages enabled. Check sse4_2, pse, avx2, bmi2, and adx flags respectively in your /proc/cpuinfo;
- At least 2GB RAM;
- RSS capable network adapter;
- Filesystem with
fallocate(2)
system call (e.g. ext4, btrfs or xfs); - Linux Kernel with the small Tempesta FW's patch. Please see instructions to build the patched Linux kernel.
Currently Debian 9.x and 10.x are the only officially supported GNU/Linux distribution.
Check supported virtualization types if you want to run Tempesta FW inside a virtual machine. QEMU is the most tested VM. There were complains about VirtualBox support of necessary CPU flags from a host system.
Since Tempesta FW uses advanced CPU features, please make sure that your VM
properly exports the CPU featrues. For QEMU you can do this with -cpu host
command line option.
For the best Tempesta FW performance inside a virtual machine, the hardware must meet following requirements (plese check the Wiki for details):
-
VT-d and VT-x technologies must be supported by the CPU and enabled in BIOS;
-
vAPIC support in the CPU
-
SR-IOV support in the network adapter.
Tempesta requires that the following Linux kernel configuration options are switched on:
- CONFIG_SLUB
- CONFIG_SECURITY
- CONFIG_SECURITY_NETWORK
- CONFIG_SECURITY_TEMPESTA
- CONFIG_DEFAULT_SECURITY_TEMPESTA
- CONFIG_DEFAULT_SECURITY="tempesta"
We suggest that CONFIG_PREEMPT_NONE is used for better throughput. However, please use CONFIG_PREEMPT_VOLUNTARY for debugging since this mode causes additional stress to synchronization of several algorithms. Also note that CONFIG_PREEMPT is not supported at all.
-
Perl Template-Toolkit
You can find the package as
perl-Template-Toolkit
in Fedora/CentOS orlibtemplate-perl
in Debian-based system.
- Home
- Requirements
- Installation
-
Configuration
- Migration from Nginx
- On-the-fly reconfiguration
- Handling clients
- Backend servers
- Load Balancing
- Caching Responses
- Non-Idempotent Requests
- Modify HTTP Messages
- Virtual hosts and locations
- HTTP Session Management
- HTTP Tables
- HTTP(S) Security
- Header Via
- Health monitor
- TLS
- Virtual host confusion
- Traffic Filtering by Fingerprints
- Run & Stop
- Application Performance Monitoring
- Use cases
- Performance
- Contributing