Kebutuhan Server
Sistem Operasi
Debian 13 (Trixie) — fresh install. Script akan menolak berjalan di OS lain.
Spesifikasi Hardware
examtool otomatis mendeteksi tier berdasarkan jumlah PC ujian:
| Tier | PC Ujian | CPU Min | RAM Min | Disk Min |
|---|---|---|---|---|
| SMALL | 50 — 100 | 4 cores | 4 GB | 120 GB |
| MEDIUM | 100 — 200 | 6 cores | 8 GB | 120 GB |
| LARGE | 200 — 300 | 8 cores | 12 GB | 120 GB |
| MAX | 300 — 500 | 16 cores | 16 GB | 240 GB |
Penting: Jumlah client mencakup PC utama dan cadangan. Jika ujian menggunakan 180 PC dengan 20 cadangan, masukkan 200.
Alokasi Resource per Tier
PHP-FPM Workers
| Setting | SMALL | MEDIUM | LARGE | MAX |
|---|---|---|---|---|
| max_children | 50 | 100 | 150 | 250 |
| start_servers | 10 | 20 | 30 | 50 |
| memory_limit | 256M | 256M | 384M | 512M |
MariaDB
| Setting | SMALL | MEDIUM | LARGE | MAX |
|---|---|---|---|---|
| max_connections | 150 | 200 | 300 | 500 |
| innodb_buffer_pool | 1024M | 2048M | 4608M | 9216M |
| query_cache | 256M | 256M | 384M | 512M |
Memcached
| Tier | Memory |
|---|---|
| SMALL | 512 MB |
| MEDIUM | 768 MB |
| LARGE | 1024 MB |
| MAX | 2048 MB |
Nginx Rate Limiting
| Setting | SMALL | MEDIUM | LARGE | MAX |
|---|---|---|---|---|
| Request rate | 20r/s | 30r/s | 50r/s | 80r/s |
| Burst | 30 | 50 | 80 | 120 |
| Max conn/IP | 80 | 100 | 150 | 200 |
Disk Space
Minimal disk sesuai tier:
- 120 GB untuk SMALL / MEDIUM / LARGE
- 240 GB untuk MAX
Pertimbangkan ruang untuk:
- Aplikasi + database (~500 MB)
- Log files (bisa membesar jika banyak akses)
- Backup database
- Sistem operasi + paket (~5 GB)
Network
- Koneksi internet untuk download paket dan clone repository
- Domain sudah mengarah ke IP server
- Port yang perlu terbuka: SSH (default 22, custom via
--ssh-port), 80 (HTTP), 443 (HTTPS — tidak diperlukan jika HTTP-only), 53/udp (DNS)
SSL Certificate
- Format: PEM (.crt dan .key)
- Certificate dan key harus cocok (pair match)
- Wildcard certificate didukung
- Opsional jika server di belakang reverse proxy — gunakan mode HTTP-only (tanpa
--file-crt/--file-key)
Lihat Topologi Jaringan untuk memahami kapan SSL diperlukan (direct) dan kapan tidak (via proxy).