38 KiB
⚙️ Server configuration — best practices podle workloadu
Obecná BIOS/UEFI nastavení
| Nastavení | Doporučení | Zdůvodnění |
|---|---|---|
| Boot mode | UEFI | Secure Boot, GPT, větší disky |
| Power profile | Performance / OS Control | Max výkon, C-States disabled |
| Hyper-Threading | Enabled | +30-50 % throughput pro multi-thread |
| Virtualization | Enabled (VT-x/AMD-V) | Nutné pro hypervisor, containers |
| SR-IOV | Enabled | GPU, NIC passthrough |
| NUMA | Enabled | NUMA-aware scheduling |
| ACPI | Enabled | Power management, OS-level |
| Secure Boot | Enabled | Secure boot chain |
| TPM | Enabled | Measured boot, key storage |
1. Databázové servery
Volba CPU
| DB typ | CPU preference | Zdůvodnění |
|---|---|---|
| OLTP (PostgreSQL, MySQL) | High clock, moderate cores | Nízká latence na transakci, limited parallelism |
| OLAP (ClickHouse, Snowflake) | Many cores, AVX-512 | Columnstore, high parallelism |
| In-memory (Redis, Memcached) | High clock, low cache latency | Single-threaded (Redis), RAM bandwidth |
| Document (MongoDB) | Balance (clock × cores) | Mixed workload |
| Distributed (Cassandra, Scylla) | Many cores, high cache | Shard-per-core (Scylla), compaction |
| Oracle OLTP | High clock, moderate cores, core-factor aware | CPU license cost (core factor 0.5 pro AMD EPYC i Intel Xeon) |
| Oracle OLAP / DW | Many cores, large SGA, in-memory option | Parallel query, Exadata Smart Scan, compression |
Oracle CPU licensing — core factor
Oracle licencuje na jádro s korekčním faktorem dle procesoru. Faktor 0.5 znamená, že 2 jádra = 1 Oracle license.
| Procesor | Core factor | 64 fyzických jader → Oracle licencí |
|---|---|---|
| AMD EPYC (všechny řady) | 0.5 | 32 |
| Intel Xeon (Scalable) | 0.5 | 32 |
| IBM POWER | 1.0 | 64 |
| ARM (Ampere Altra) | 0.5 | 32 |
Dopad na výběr CPU: Při stejném Oracle license cost je EPYC s více jádry výhodnější — dostanete více compute power za stejnou license cenu.
Konfigurace podle velikosti firmy a typu storage
Varianta A: Malá firma — lokální NVMe RAID
| Komponenta | Doporučení | Poznámka |
|---|---|---|
| CPU | 1× EPYC 9124/9224 nebo Intel Xeon 4410Y (8-16C) | 1 socket, high clock |
| RAM | 64-256 GB (8-16 GB/core) | DDR5-4800, 1DPC |
| OS disk | 2× SATA/SAS SSD, RAID 1 (240-480 GB) | Pro OS + binární soubory |
| Data disk | 4-6× NVMe (U.2/E3.S), RAID 10 | Lokální data, žádné sdílení |
| WAL disk | 2× NVMe RAID 1 (400-800 GB) | Pouze PostgreSQL |
| Network | 2× 25 GbE (LACP) | Aplikační traffic + management |
| Form factor | 1U nebo 2U | Single node, žádný cluster |
| Storage backend | Lokální RAID controller (PERC/Broadcom) | HW RAID 10 nebo SW RAID (mdadm) |
| HA | Aplikace řídí failover (patroni, repmgr, orchestrator) | Standby node při selhání |
Use case: Startup, pobočka, dev/test, < 500 uživatelů, jeden databázový server, nízké nároky na dostupnost.
Varianta B: Střední firma — lokální NVMe + asynchronní replikace
| Komponenta | Doporučení | Poznámka |
|---|---|---|
| CPU | 1-2× EPYC 9334/9374F nebo Intel Xeon 5418Y (16-24C) | 1-2 socket, balanced |
| RAM | 128-512 GB (8-16 GB/core) | DDR5-4800/5600, 1DPC |
| OS disk | 2× NVMe RAID 1 (2× 480 GB) | OS + binárky |
| Data disk | 6-8× NVMe, RAID 10 | Lokální NVMe, 3-6 TB usable |
| WAL disk | 2× NVMe RAID 1 (2× 800 GB) | Oddělený od data |
| Network | 2× 25 GbE (app) + 2× 25 GbE (replication) | Aplikační a replikační síť odděleny |
| Form factor | 2U | Primární + replica node |
| Storage backend | SW RAID (mdadm) nebo HW RAID (PERC H965) | Write-back cache s BBU |
| HA | Patroni / repmgr / MySQL InnoDB Cluster | Asynchronní replikace na 1-2 standby |
Use case: E-commerce, SaaS střední velikosti, 500-5000 uživatelů, RPO < 1 min, RTO < 5 min.
Varianta C: Velká firma — FC SAN (enterprise)
| Komponenta | Doporučení | Poznámka |
|---|---|---|
| CPU | 2× EPYC 9654/9965 nebo Xeon 8592+/6980P (48-128C) | 2 socket, max cores, large cache |
| RAM | 512 GB - 2 TB (8-16 GB/core) | DDR5, 2DPC (penalizace speed), 12 channelů (EPYC) |
| OS disk | 2× SATA SSD RAID 1 (2× 480 GB) | Pouze OS, data na SAN |
| Data + WAL | LUNy z FC SAN | Hitachi VSP / Dell PowerMax / Pure //X |
| HBA | 2× dual-port FC HBA (32/64 Gb) | Multipath (active-active), FC-NVMe |
| Network | 2× 25/100 GbE (app) + 2× 32/64 Gb FC (storage) | App i storage síť odděleny |
| Form factor | 2U | 2-8 node cluster (RAC, AlwaysOn AG) |
| Storage backend | FC SAN — LUN per databáze | Thin provisioning, RAID na SAN, snapshots |
| HA | Oracle RAC / SQL Server AOAG / PostgreSQL Patroni | Synchronní replikace, FC multipath |
Výhody SAN: Centrální management, snapshots, cloning, disaster recovery (SRDF/Metro), oddělená storage síť, vyšší dostupnost. Nevýhody: Vyšší latence oproti lokálnímu NVMe (~50-200 µs přes SAN vs ~10 µs local NVMe), vyšší CAPEX, vendor lock-in.
Varianta D: Velká firma — Ceph / SDS backend
| Komponenta | Doporučení | Poznámka |
|---|---|---|
| CPU | 2× EPYC 9334/9654 (16-32C) | Méně cores než SAN varianta — část CPU jde na Ceph client |
| RAM | 256-512 GB | Méně RAM — Ceph client cache není tak efektivní jako lokální buffer |
| OS disk | 2× SATA SSD RAID 1 (2× 480 GB) | OS |
| Network | 2× 25/100 GbE (app) + 2× 25/100 GbE (Ceph public) | App i Ceph traffic po Ethernetu |
| HBA | Storage HBA v IT/HBA mode (žádný RAID) | Pro Ceph OSD node, ne DB node |
| Form factor | 2U | DB nod + separátní Ceph OSD nod |
| Storage backend | RBD (RADOS Block Device) přes Ceph | 3× replikace nebo erasure coding |
| HA | Aplikace + Ceph inherentní HA | Ceph self-healing, auto-rebalance |
Výhody Ceph: Žádný vendor lock-in, horizontální škálování, jednotná platforma pro block/file/object, nižší CAPEX. Nevýhody: Vyšší latence a CPU režie (Ceph client → network → OSD), variabilní výkon, složitější troubleshooting.
Varianta E: Cloud — RDS / CloudSQL / Azure SQL
| Komponenta | Doporučení | Poznámka |
|---|---|---|
| Compute | AWS RDS (db.r7g/r8g), Azure SQL (GP/BC/Hyperscale) | Managed service, bez přístupu k OS |
| Storage | EBS gp3 / io2, Azure Premium SSD v2, Cloud SQL SSD | Automatické škálování, PITR, multi-AZ |
| Network | Security Group, Private Link, VPC peering | Žádný HBA, žádná SAN — vše přes Ethernet |
| HA | Multi-AZ (synchronní), read replicas | Managed failover, RTO < 60 s |
| Backup | Automated, PITR (7-35 dní) | Bez nutnosti managementu |
Use case: Žádný on-prem hardware, elastické škálování, pay-per-use, menší provozní režie. Nevýhody: Vyšší dlouhodobé náklady, data residency, network latency, limited customization.
Srovnání variant
| Aspekt | Lokální NVMe (malá) | Lokální NVMe (střední) | FC SAN | Ceph | Cloud |
|---|---|---|---|---|---|
| Latence | ~10 µs | ~10 µs | ~50-200 µs | ~100-500 µs | ~100-1000 µs |
| Škálování | Vertikální | Vertikální | Horizontální | Horizontální | Elastické |
| CAPEX | Nízký | Střední | Vysoký | Střední | Žádný (OPEX) |
| Provozní režie | Nízká | Nízká | Vysoká (SAN admin) | Střední | Žádná |
| HA | Aplikace | Patroni/Cluster | RAC/AOAG | Ceph HA | Managed |
| RPO | 1-5 min | < 1 min | < 10 s | < 30 s | < 60 s |
| RTO | 5-15 min | < 5 min | < 2 min | < 5 min | < 60 s |
| Počet serverů | 1-2 | 2-4 | 4-16 | 6-20+ | 0 (managed) |
| Firma | Startup/SME | SME/Enterprise | Enterprise | Enterprise | Libovolná |
PostgreSQL parameter matrix podle storage typu
| Parametr | Local NVMe | FC SAN | Ceph RBD |
|---|---|---|---|
random_page_cost |
1.1 | 1.5-2.0 | 2.0-3.0 |
effective_io_concurrency |
300 | 100-200 | 50-100 |
synchronous_commit |
off (NVMe cache) | on (SAN cache) | off (Ceph cache) |
full_page_writes |
on | on | on (i přes Ceph) |
Storage layout podle typu backendu
Lokální NVMe (malá/střední):
Mount point FS RAID Disk Účel
/ ext4 1 (mirror) 2× SATA SSD OS
/data xfs 10 4-8× NVMe Data
/wal xfs 1 (mirror) 2× NVMe WAL (PG)
FC SAN (enterprise):
Mount point FS Device Účel
/ ext4 local RAID 1 (2× SSD) OS
/dev/sdb xfs FC LUN 1 (500 GB) WAL (PG)
/dev/sdc xfs FC LUN 2 (2 TB) Data
/dev/sdd xfs FC LUN 3 (2 TB) Indexy (oddělené)
Ceph RBD:
Mount point FS Ceph device Účel
/ ext4 local RAID 1 (2× SSD) OS
/dev/rbd0 xfs rbd datastore-01 Data + WAL (Ceph RBD)
Kernel tuning podle variants
Lokální NVMe:
vm.dirty_ratio = 30
vm.dirty_background_ratio = 5
FC SAN:
# SAN storage — vyšší latency, méně agresivní flush
vm.dirty_ratio = 20
vm.dirty_background_ratio = 3
vm.dirty_expire_centisecs = 3000 # Defer writes (SAN cache)
Ceph RBD:
# Ceph RBD — network storage, optimalizovat pro RBD cache
vm.dirty_ratio = 15
vm.dirty_background_ratio = 2
# RBD cache settings
# rbd cache = true (client-side)
# rbd cache size = 256-512 MB
Database-specific tuning
| Parametr | PostgreSQL | MySQL | Oracle | MongoDB |
|---|---|---|---|---|
| Cache | shared_buffers 25 % RAM |
innodb_buffer_pool 70-80 % RAM |
SGA_TARGET 60-80 % RAM |
WiredTiger cache 50-80 % RAM |
| OS cache | effective_cache_size 75 % RAM |
OS cache + InnoDB | OS cache (double buffering risk při large SGA) | OS cache |
| Write buffer | wal_buffers 64-256 MB |
innodb_log_file_size 1-4 GB |
Redo log (2-4 groups, 200 MB-4 GB) | WiredTiger log |
| Connections | max_connections 50-500 |
max_connections 100-500 |
processes 200-2000 |
maxIncomingConnections |
| I/O | effective_io_concurrency 200 |
innodb_io_capacity 2000 |
db_file_multiblock_read_count 128 |
WiredTiger eviction |
| Huge pages | huge_pages = try |
large-pages = ON |
use_large_pages = only (mandatory) |
transparent_hugepages=never |
| Parallel query | max_parallel_workers 4-8 |
innodb_parallel_read_threads 4 |
parallel_degree_policy = auto — až 64 |
— |
Connectivity per variant
| Varianta | App síť | Storage síť | Replikace | Management |
|---|---|---|---|---|
| Lokální (malá) | 2× 25 GbE LACP | — | 2× 25 GbE (same) | iDRAC/iLO |
| Lokální (střední) | 2× 25 GbE LACP | — | 2× 25 GbE dedik. | iDRAC/iLO |
| FC SAN | 2× 25/100 GbE | 2× 32/64 Gb FC (multipath) | FC replication | iDRAC/iLO + SAN mgmt |
| Ceph | 2× 25/100 GbE | 2× 25/100 GbE (public net) | 2× 25/100 GbE (cluster net) | iDRAC/iLO + Ceph mgmt |
| Cloud | Elastic IP / Private Link | — | — | AWS Console / API |
| Oracle Standalone | 2× 25 GbE LACP | ASM (2× 25 GbE nebo FC 32G) | Data Guard 2× 25 GbE | iLO + ASM mgmt |
| Oracle RAC | 2-4× 25/100 GbE | 2× 64 Gb FC (multipath) | Cache Fusion interconnect | iLO + SAN mgmt |
| Oracle Exadata | 4-8× 100 GbE RoCE | NVMe over Fabric | RDMA interconnect | Exadata CLI + OEDA |
Oracle-specific konfigurace
Oracle ASM — diskgroup layout
Oracle ASM (Automatic Storage Management) nahrazuje tradiční filesystem + volume manager:
| Diskgroup | Redundancy | Disky | Účel |
|---|---|---|---|
| DATA | Normal (2× mirror) | 4-12× FC LUN/NVMe | Data files, temp files, control files |
| FRA (Flash Recovery Area) | Normal (2× mirror) | 2-6× FC LUN/NVMe | Archive logs, backup, flashback logs |
| REDO | High (3× mirror) | 2-4× FC LUN/NVMe | Online redo log groups (I/O kritické) |
| SPFILE | Normal | 2× small LUN | Server parameter file |
ASM striping: Coarse (1 MB) pro běžná data, Fine (128 KB) pro redo logy (nižší latence zápisu).
Varianta O1: Standalone Oracle (malá/střední, single instance)
| Parametr | Small (< 500 users) | Medium (500-2000 users) |
|---|---|---|
| CPU | 1-2× EPYC 9124-9224 / Xeon 4410Y (8-16C) | 2× EPYC 9334-9374F / Xeon 5418Y (16-24C) |
| RAM (SGA + PGA) | 64-128 GB (SGA 70 %, PGA 30 %) | 128-512 GB (SGA 60-80 %, PGA 20-40 %) |
| Huge pages | Ano (vm.nr_hugepages) — mandatory pro SGA | Ano |
| OS disk | 2× SATA SSD RAID 1 (240 GB) | 2× NVMe RAID 1 (480 GB) |
| DATA + FRA | 4-6× NVMe, ASM normal redundancy | 6-8× NVMe nebo FC LUN, ASM normal |
| REDO | 2-4× NVMe (oddělené od DATA), ASM high | 4× FC LUN (oddělené), ASM high |
| Archive log | Lokální FRA | FC LUN (FRA diskgroup) |
| Network (app) | 2× 25 GbE LACP | 2-4× 25/100 GbE LACP |
| Network (storage) | — (lokální NVMe) | 2× FC 32G multipath |
| Network (Data Guard) | — | 2× 25 GbE dedikované |
| DB version | Oracle SE2 (max 16 threads) | Oracle EE (neomezené) |
Use case: Dev/test, malé produkční DB, pobočky. SE2 license = max 16 CPU threads, limitovaná parallel execution.
Varianta O2: Oracle Data Guard (střední/velká, HA + DR)
Primární + standby v active-passive režimu, možnost Active Data Guard pro reporting.
| Parametr | Doporučení |
|---|---|
| CPU | 2× EPYC 9654-9965 / Xeon 8592+ (32-64C) |
| RAM | 256-1024 GB (SGA 60-80 %, PGA 20-40 %) |
| Huge pages | Ano (50-80 % RAM alokováno pro SGA) |
| OS disk | 2× NVMe RAID 1 (480 GB) |
| Storage | FC SAN LUN (DATA + FRA + REDO odděleně) nebo NVMe + ASM |
| HBA | 2× dual-port FC 32/64 Gb (multipath active-active) |
| App network | 2-4× 25/100 GbE LACP |
| Storage network | 2× FC 32/64 Gb multipath |
| Data Guard network | 2× 25/100 GbE dedikované (sync nebo async) |
| Data Guard režim | Maximum Availability (sync, fallback na async) — RPO = 0 |
| Topologie | 1 primary + 1-2 standby (physical), far sync pro geo-DR |
| Active Data Guard | Standby otevřená pro čtení (reporting, backup) — vyžaduje ADG licenci |
Latence Data Guard:
Synchronní (Maximum Availability):
Primární COMMIT → LGWR flush REDO → sync přes síť → Standby LGWR → ACK → ~1-5 ms
RPO = 0, dopad na latenci zápisu
Asynchronní (Maximum Performance):
Primární COMMIT → LGWR flush REDO → async do standby buffer → ~0.1-1 ms
RPO = několik sekund, zanedbatelný dopad na zápis
Síťové požadavky pro Data Guard sync:
- RTT < 2 ms pro synchronní režim (doporučeno < 1 ms)
- Min. 10 GbE, doporučeno 25 GbE (propustnost = REDO rate × 2)
- REDO rate: OLTP ~50-500 MB/s, batch ~500-2000 MB/s
- Při REDO rate 500 MB/s a 25 GbE → ~20 % link utilization
Varianta O3: Oracle RAC (velká, enterprise)
Multi-instance cluster se shared storage a Cache Fusion.
| Parametr | Doporučení |
|---|---|
| Počet nodů | 2-4 (typicky), max 64 (RAC cluster) |
| CPU per node | 2× EPYC 9654-9965 / Xeon 8592+ (32-64C) |
| RAM per node | 512-2048 GB (SGA 60-80 %, PGA 20-40 %) |
| Huge pages | Ano (1 GB stránky pokud RAM > 512 GB) |
| Storage | FC SAN — shared LUNs (ASM normal/high redundancy) |
| HBA | 2× dual-port FC 64 Gb (multipath, active-active) |
| App network | 2-4× 25/100 GbE LACP (VIP, SCAN listener) |
| Storage network | 2-4× FC 64 Gb (multipath per node) |
| Cache Fusion interconnect | 2× 100 GbE (RoCE v2 nebo InfiniBand) — dedikovaný |
| RAC interconnect latency | < 5 µs (doporučeno), max < 10 µs |
| ASM | Normal redundancy (2-way mirror) |
| Oracle Clusterware | Voting disk (3× 1 GB LUN), OCR (3× 500 MB LUN) |
| Service | OLTP_service, REPORT_service, BATCH_service |
Cache Fusion — kritický interconnect:
Node A (DB instance) ←──→ Node B (DB instance)
│ │
└──────── ASM ───────────┘
│
FC SAN (shared storage)
Cache Fusion traffic: dirty block transfer mezi instancemi
→ Latence < 5 µs, jinak RAC škálování degraduje
→ Kapacita: 2× 100 GbE, dedikovaný switch nebo InfiniBand HDR100
→ Doporučená MTU: 9000 (jumbo frames)
RAC sizing podle počtu transakcí:
| TPS | Nodů | CPU per node | RAM per node | Interconnect |
|---|---|---|---|---|
| < 10 000 | 2 | 16-24C | 256 GB | 2× 25 GbE |
| 10 000 - 50 000 | 2-4 | 32-48C | 512 GB | 2× 100 GbE RoCE |
| 50 000 - 200 000 | 4-8 | 48-64C | 1024 GB | 2× 100 GbE RoCE / InfiniBand |
| > 200 000 | 8+ | 64-128C | 2048 GB | InfiniBand HDR100/HDR200 |
RAC sizing — výpočet licence cost:
Příklad: 4-node RAC, každý node 2× EPYC 9654 (96C) = 192 cores per node
Core factor 0.5 → 96 Oracle licenses per node
4 × 96 = 384 Oracle EE licenses
Pri ~$47.5k/license → ~$18.2M (jen licence, bez supportu 22 % ročně)
Varianta O4: Oracle Exadata (hyperscale)
Engineered system — optimální pro hybrid workload (OLTP + DW).
| Parametr | X9M / X10M | Use case |
|---|---|---|
| Database servers | 2-8× (Xeon, 1.5-6 TB RAM, NVMe) | Compute |
| Storage servers | 3-18× (NVMe + HDD, Smart Scan) | Offloading predikátů |
| Smart Scan | Filtrace na storage vrstvě | Méně dat po síti, vyšší propustnost |
| RoCE interconnect | 100 GbE (RDMA) | Nízká latence, high bandwidth |
| In-Memory Column Store | Volitelná licence | Real-time analytics bez ETL |
| HCC (Hybrid Columnar Compression) | Compression v storage serverech | Až 10-15× komprese pro DW |
| Rack power | ~15-30 kW (full rack) | Vyšší densita |
Kdy zvolit Exadata místo standalone RAC:
- OLTP > 50 000 TPS
- Potřeba konsolidace (více DB na jeden cluster)
- Smart Scan výrazně zrychluje reporting na produkčních datech
- HCC pro úsporu storage u DW workloadů
2. Hypervisor host (ESXi / KVM / Hyper-V)
Konfigurace podle velikosti a storage typu
Varianta A: Malá firma — lokální storage (2-3 hosty)
| Komponenta | Doporučení | Poznámka |
|---|---|---|
| CPU | 1× EPYC 9224/9254 nebo Xeon 4410Y/5418Y (12-24C) | 1 socket, dost cores pro VM density |
| RAM | 128-256 GB (4-8 GB/core) | DDR5, 1DPC |
| OS disk | 2× SATA SSD RAID 1 (2× 240-480 GB) | ESXi / Proxmox / Hyper-V boot |
| VM storage | 4-6× SATA/SAS SSD, RAID 5/6 nebo 10 | Lokální RAID, 4-12 TB usable |
| Network | 2-4× 10/25 GbE (LACP) | Sdílený pro vše (management + VM + storage) |
| Hypervisor | VMware vSphere Standard / Proxmox VE / Hyper-V | Basic license, žádné enterprise funkce |
| Storage backend | Lokální RAID controller (PERC H755, Broadcom 9560) | HW RAID s cache, write-back |
| HA | VMware HA / Proxmox HA | Restart VM na jiném hostu při selhání |
| Backup | Veeam B&R Free / PBS (Proxmox Backup Server) | Lokální nebo USB disk |
Use case: Malá kancelář, pobočka, dev/test, < 10 VM, nízký rozpočet, jednoduchá správa. Limitace: Žádné vMotion bez shared storage, outage při výpadku hosta (restart HA, ne seamless).
Varianta B: Střední firma — vSAN / Ceph (3-6 hostů)
| Komponenta | Doporučení | Poznámka |
|---|---|---|
| CPU | 1-2× EPYC 9334/9654 nebo Xeon 5418Y/8592+ (16-32C) | 1-2 socket |
| RAM | 256-512 GB (4-8 GB/core) | DDR5, 2DPC (minimální penalizace) |
| OS disk | 2× SATA SSD RAID 1 nebo 2× M.2 NVMe (BOSS-S1) | Oddělený od VM storage |
| Cache tier | 1-2× NVMe (vSAN caching / Ceph WAL+DB) | Pro write performance |
| Capacity tier | 4-8× SATA/SAS SSD nebo HDD (vSAN capacity / Ceph OSD) | HDD pro kapacitu, SSD pro performance |
| Network | 4× 25/100 GbE — 2× VM + mgmt, 2× storage (vSAN/Ceph) | Oddělená storage síť, RDMA (RoCE v2) |
| Hypervisor | VMware vSAN / Proxmox Ceph / StarWind HCI | HCI license (vSAN ~$2.5k/Core) |
| Storage backend | vSAN OSA/ESA nebo Ceph (RADOS) | Distributed storage, auto-rebalance |
| HA | vSphere HA + vSAN / Proxmox HA + Ceph | vMotion, DRS, automated failover |
| Failover | N+1 (jeden host jako rezerva) | U vSAN min. 4 hosty (pro ESA min. 3) |
Čistě Ceph varianta (Proxmox / OpenStack):
Proxmox node (3-6×):
├── CPU: 1× EPYC 9224-9334 (12-24C)
├── RAM: 128-256 GB
├── OS: 2× SATA SSD RAID 1
├── Ceph OSD: 4-8× NVMe/SATA SSD (RAW, HBA mode)
├── Network: 2× 25 GbE (public) + 2× 25 GbE (cluster)
└── Storage: Ceph 3× replication, CRUSH host failure domain
VMware vSAN varianta (4-6 hostů):
vSAN node (4-6×):
├── CPU: 1-2× EPYC/Xeon (16-32C)
├── RAM: 256-512 GB
├── OS: 2× M.2 NVMe (BOSS-S1) nebo SD card (deprecated)
├── vSAN cache: 1-2× NVMe (write buffer)
├── vSAN capacity: 4-8× SATA SSD (vSAN ESA) nebo HDD (vSAN OSA)
├── Network: 2× 25/100 GbE (VM) + 2× 25 GbE (vSAN)
└── Storage: vSAN ESA (all-NVMe) nebo OSA (hybrid)
Use case: SME, enterprise divize, 10-100 VM, potřeba vMotion, DRS, HA, jednoduchý storage management.
Varianta C: Velká firma — FC SAN (6+ hostů)
| Komponenta | Doporučení | Poznámka |
|---|---|---|
| CPU | 2× EPYC 9654/9965 nebo Xeon 8592+/6980P (32-64C) | 2 socket, max VM density |
| RAM | 512 GB - 2 TB (4-8 GB/core) | DDR5, 2DPC |
| OS disk | 2× SATA SSD RAID 1 nebo SD card (vSphere) | Boot, image storage |
| VM storage | LUNy z FC SAN — VMFS / NFS datastory | Hitachi, Dell, Pure, HPE storage |
| HBA | 2× dual-port FC HBA 32/64 Gb | Multipath, FC-NVMe |
| Network | 4-8× 25/100 GbE — rozdělené do traffic typů | Management, VM, vMotion, FT odděleny |
| Hypervisor | VMware vSphere Enterprise+ / Hyper-V DC | Enterprise license, DRS, HA, FT |
| Storage backend | FC SAN — VMFS 8 datastory, VVols | Thin provisioning, storage DRS, array snapshots |
| HA | vSphere HA + DRS + vCenter | vMotion, DRS, FT, SRM pro DR |
| Failover | N+1 nebo admission control (rezerva CPU/RAM) | Vyhrazená kapacita pro HA failover |
Use case: Enterprise, 100+ VM, mix DB a aplikací, centralizovaný storage management, enterprise SLA.
Varianta D: Hyperscale — Ceph / SDS (20+ hostů)
| Komponenta | Doporučení | Poznámka |
|---|---|---|
| CPU | 2× EPYC 9654/9965 (64-128C) | 2 socket, compute optimální |
| RAM | 512 GB - 1 TB (2-4 GB/core) | Nízký overcommit ratio pro konzistenci |
| OS disk | 2× M.2 NVMe RAID 1 (BOSS) | Boot |
| Network | 4-8× 100 GbE (compute + storage) | Separate OVN/OVS pro SDN, VXLAN tunneling |
| Hypervisor | OpenStack (Nova) / OpenShift (KubeVirt) | Open source, API-driven, multi-tenant |
| Storage backend | Ceph (RADOS, RBD, RGW, CephFS) | Unified storage, erasure coding (8+3) |
| Orchestrace | OpenStack / Kubernetes | Infrastructure-as-Code, autoscaling |
| HA | OpenStack HA / Kubernetes HA | Self-healing, auto-rebalance |
Use case: Cloud provider, hyperscale, 500+ VM, multi-tenant, maximální automatizace.
Srovnání hypervisor variant
| Aspekt | Lokální (malá) | vSAN/Ceph (střední) | FC SAN (velká) | Ceph hyperscale |
|---|---|---|---|---|
| Storage | Lokální RAID | vSAN / Ceph (HCI) | FC SAN (centralizovaný) | Ceph (distribuovaný) |
| Počet hostů | 2-3 | 3-6 | 6-50+ | 20+ |
| Latence VM | ~10 µs (local) | ~100-500 µs | ~200 µs (SAN) | ~500-2000 µs |
| CAPEX/host | Nízký | Střední | Vysoký | Střední |
| CAPEX storage | Nízký | Žádný (součást hostů) | Vysoký (SAN array) | Žádný (součást hostů) |
| Management | Simple (per host) | vCenter / Proxmox | vCenter + SAN mgmt | OpenStack / K8s |
| vMotion | Ne (bez sdílené storage) | Ano (vSAN / Ceph RBD) | Ano (FC LUN) | Ano (Ceph RBD) |
| DRS | Ne | Ano (vSphere) | Ano (vSphere) | OpenStack scheduler |
| Škálování | Vertikální | Horizontální (přidat host) | Horizontální (host + SAN) | Horizontální |
Network design podle varianty
Malá (lokální storage)
| Traffic | VLAN | Rychlost | Teaming | Poznámka |
|---|---|---|---|---|
| Management | Mgmt | 1 GbE | Active/Passive | Dedikovaný port (iLO/iDRAC) |
| VM + Storage | All | 2-4× 10/25 GbE | LACP | Sdílené, VLAN tagging |
┌──────────────────────────────────────────┐
│ Host │
│ ┌──────┐ ┌─────────────────────────────┐│
│ │ iLO │ │ NIC1 NIC2 ││
│ │ 1 GbE │ │ [LACP] 25 GbE ││
│ └──────┘ └──────────┬──────────────────┘│
└──────────────────────┼───────────────────┘
│
┌─────┴─────┐
│ Switch │
└───────────┘
Střední (vSAN / Ceph)
| Traffic | VLAN | Rychlost | Teaming | Poznámka |
|---|---|---|---|---|
| Management | Mgmt | 1 GbE | Active/Passive | Dedikovaný iLO/iDRAC |
| VM | VM | 2× 25/100 GbE | LACP | VM traffic, migrace |
| Storage | vSAN/Ceph | 2× 25/100 GbE | LACP nebo RDMA | Oddělený, Jumbo frames (MTU 9000) |
┌──────────────────────────────────────────┐
│ Host │
│ ┌──────┐ ┌──────────┐ ┌───────────────┐│
│ │ iLO │ │ NIC1 NIC2│ │ NIC3 NIC4 ││
│ │ 1 GbE │ │ VM traffic│ │ Storage (vSAN)││
│ └──────┘ └──────────┘ └───────────────┘│
└──────────────────────────────────────────┘
Velká (FC SAN)
| Traffic | VLAN | Rychlost | Teaming | Poznámka |
|---|---|---|---|---|
| Management | Mgmt | 1 GbE | Active/Passive | Dedikovaný |
| VM | VM | 2-4× 25/100 GbE | LACP | VM traffic |
| vMotion | vMotion | 2× 25 GbE | Dedikovaný | Multi-NIC vMotion |
| FT | FT | 2× 10/25 GbE | Dedikovaný | Low latency |
| Storage | — | 2× 32/64 Gb FC | Multipath | FC SAN |
┌──────────────────────────────────────────────┐
│ Host │
│ ┌──────┐ ┌────────────┐ ┌────┐ ┌─────────┐│
│ │ iLO │ │ NIC1-4 │ │HBA1│ │ HBA2 ││
│ │ 1 GbE │ │ VM+vMotion+FT│ │32Gb│ │ 32Gb ││
│ └──────┘ └────────────┘ └─┬──┘ └──┬──────┘│
└────────────────────────────┼───────┼───────┘
│ │
┌───────┴───┐ ┌─┴────────┐
│ Ethernet │ │ FC Switch │
│ Switch │ │ (Brocade/ │
│ │ │ Cisco) │
└───────────┘ └──────────┘
BIOS pro hypervisor — všechny varianty
| Nastavení | Hodnota | Zdůvodnění |
|---|---|---|
| Hyper-Threading | Enabled | Vyšší VM density |
| Virtualization Technology | Enabled | VT-x/AMD-V |
| VT-d / IOMMU | Enabled | Passthrough, SR-IOV |
| Power Management | Performance / OS | Minimalizace latence VM exit |
| C-States | Disabled | Nižší latence VM exit (důležité pro real-time VM) |
| NUMA | Enabled | NUMA-aware VM placement |
| SR-IOV | Enabled | NIC/GPU virtualizace |
| Adjacent Sector Prefetch | Enabled (Intel) | Lepší sekvenční čtení |
| DCU Streamer / IP Prefetcher | Enabled | HW prefetch pro VM workload |
| Patrol Scrub | Disabled (vSAN/Ceph) | Může způsobovat latency spikes u SDS |
Výběr hypervisoru podle varianty
| Kritérium | VMware vSphere | Proxmox VE | Hyper-V | OpenStack |
|---|---|---|---|---|
| Velikost | SME - Enterprise | SME | SME - Enterprise | Hyperscale |
| Storage | vSAN, SAN, NFS | Ceph, ZFS, NFS | Storage Spaces, SAN | Ceph, manila |
| License | ~$1-5k/core | Zdarma (support ~$500/host) | Součást Windows Server | Open source |
| Familiarita | Nejvyšší | Střední | Windows admin | Nízká |
| Automation | Terraform, Ansible, PowerCLI | Ansible, Terraform, PBS | PowerShell, SCVMM | Terraform, Heat, Ansible |
| Ekosystém | Nejširší (Veeam, Zerto, SRM) | Rostoucí (PBS, vzdálená migrace) | Windows ecosystem | Open source (Kolla, TripleO) |
3. Kubernetes node
Node profily
| Role | CPU | RAM | Storage | Network | Use case |
|---|---|---|---|---|---|
| General purpose | 16-32 cores | 64-128 GB | 1× NVMe OS + 1×NVMe local | Web, API, microservices | |
| Memory optimized | 32-64 cores | 256-512 GB | 1× NVMe OS + 2×NVMe local | In-memory cache, DB | |
| Compute optimized | 64-128 cores | 128-256 GB | 1× NVMe OS | Batch, CI/CD | |
| GPU node | 32-64 cores | 512-1024 GB | 1× NVMe OS + 4-8×NVMe local | AI/ML training, inference | |
| Storage node | 16-32 cores | 64-128 GB | 4-12× NVMe/SATA (Ceph/Longhorn) | SDS, persistent volumes |
Kernel tuning
# /etc/sysctl.d/99-kubernetes.conf
net.bridge.bridge-nf-call-iptables = 1
net.bridge.bridge-nf-call-ip6tables = 1
net.ipv4.ip_forward = 1
net.ipv4.conf.all.forwarding = 1
# Connection tracking (pro NodePort, Service)
net.netfilter.nf_conntrack_max = 2097152
net.netfilter.nf_conntrack_tcp_timeout_established = 86400
# File watchers (pro kubelet, containerd)
fs.inotify.max_user_instances = 8192
fs.inotify.max_user_watches = 524288
# Memory management
vm.swappiness = 0
vm.overcommit_memory = 1 # Allow overcommit (CRI-O, containerd)
vm.panic_on_oom = 0
kernel.panic = 10
kernel.panic_on_oops = 1
Container storage
| Typ | Doporučení | Poznámka |
|---|---|---|
| OS disk | RAID 1 (2× NVMe) | Ext4/XFS, 100-200 GB |
| Container runtime image | RAID 1 (2× NVMe) | /var/lib/containerd, 200-500 GB |
| Local PV | Single NVMe | Raw device, no RAID |
| Rook/Ceph OSD | Raw NVMe/SATA | HBA/IT mode, no RAID |
| Longhorn | Raw NVMe/SATA | Ext4/XFS per volume |
4. Storage server (Ceph / MinIO / NAS)
Ceph OSD node
| Komponenta | Doporučení | Poznámka |
|---|---|---|
| CPU | 1-2 cores per OSD | Do 12 OSD na node (24 cores) |
| RAM | 4-8 GB per OSD + OS | BlueStore cache, 16-64 GB min |
| Network | 2× 25/100 GbE | Public + Cluster network |
| Storage | 10-12× NVMe/SATA SSD OSD | HBA/IT mode, žádný RAID |
| OS disk | 2× SATA SSD RAID 1 | OS, Ceph MON/MGR |
BIOS pro Ceph:
- SATA/NVMe: AHCI/NVMe mode (ne RAID)
- C-States: Disabled (nižší latence OSD)
- NUMA: Enabled
- Power: Performance
MinIO node
| Komponenta | Doporučení |
|---|---|
| CPU | 8-16 cores (32+ pro erasure coding) |
| RAM | 32-64 GB + 1 GB per 1 TB storage |
| Storage | 4-16× NVMe (direct, no RAID) |
| Network | 2× 25/100 GbE |
| OS | Ubuntu / RHEL, XFS (pro data) |
NAS (TrueNAS / FreeNAS)
- ZFS: RAID-Z1/Z2/Z3, compression (lz4, zstd), dedup
- ARC cache: 1 GB per 1 TB storage (max 64 GB)
- L2ARC: NVMe cache (optional, read-heavy)
- SLOG: NVDIMM / Optane (sync write, ZIL)
- Network: 2-4× 10/25 GbE LACP
5. Web / API servery
| Parametr | Doporučení |
|---|---|
| CPU | High clock, 8-32 cores |
| RAM | 32-128 GB |
| Storage | 2× NVMe RAID 1 (OS + app) |
| OS | Ubuntu / RHEL, optimized kernel |
| Network | 2× 10/25 GbE (bonding) |
Kernel tuning:
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_fin_timeout = 15
net.core.somaxconn = 65535
net.ipv4.tcp_max_syn_backlog = 65535
net.core.netdev_max_backlog = 65535
Rychlý decision tree — výběr serveru podle workloadu, velikosti a storage
flowchart TD
W["Jaký workload?"] --> DB["Databáze"]
W --> HV["Virtualizace"]
W --> K8s["Kubernetes"]
W --> AI["AI/ML"]
W --> ST["Storage server"]
W --> WEB["Web / API"]
DB --> DBS{"Velikost firmy"}
DBS -->|"< 500"| DB1["1× EPYC 8-16C, 64-256 GB<br/>NVMe RAID10, 2× 25GbE"]
DBS -->|"500-5000"| DB2{"Storage"}
DB2 -->|"Lokální"| DB2L["1-2× EPYC 16-24C, 128-512 GB<br/>NVMe RAID10, 4× 25GbE"]
DB2 -->|"Ceph"| DB2C["2× EPYC 16-32C, 256-512 GB<br/>RBD, 4× 25/100GbE"]
DBS -->|"Enterprise"| DB3{"Storage"}
DB3 -->|"FC SAN"| DB3F["2× EPYC 48-128C, 512-2048 GB<br/>SAN LUN + 2× FC 32/64G"]
DB3 -->|"Ceph"| DB3C["2× EPYC 32-64C, 256-512 GB<br/>RBD, 4× 100GbE"]
DBS -->|"Cloud"| DBC["RDS/Azure SQL/CloudSQL<br/>Managed, Multi-AZ"]
DB --> ORACLE{"Oracle architektura?"}
ORACLE -->|"Standalone"| ORA1["1-2× EPYC 8-24C<br/>64-512 GB, ASM local/FC<br/>2× 25GbE + FC 32G"]
ORACLE -->|"Data Guard"| ORA2["2× EPYC 32-64C<br/>256-1024 GB, FC SAN<br/>2× 25/100GbE + 2× FC 64G<br/>2× 25GbE (DG sync)"]
ORACLE -->|"RAC 2-4 nodes"| ORA3["Per node: 2× EPYC 32-64C<br/>512-2048 GB, FC SAN<br/>2× 100GbE (app)<br/>2× FC 64G (storage)<br/>2× 100GbE RoCE (interconnect)"]
ORACLE -->|"Exadata"| ORA4["Engineered system<br/>2-8 DB servers + 3-18 storage<br/>RoCE 100GbE, Smart Scan<br/>15-30 kW/rack"]
HV --> HVS{"Počet hostů"}
HVS -->|"2-3"| HV1["1× EPYC 12-24C, 128-256 GB<br/>RAID5/6 SSD, 2-4× 10/25GbE"]
HVS -->|"3-6"| HV2{"HCI"}
HV2 -->|"vSAN"| HV2V["1-2× EPYC 16-32C, 256-512 GB<br/>NVMe cache + SSD, 4× 25GbE"]
HV2 -->|"Ceph"| HV2C["1× EPYC 12-24C, 128-256 GB<br/>4-8× HBA NVMe/SSD, 4× 25GbE"]
HVS -->|"6+"| HV3["2× EPYC 32-64C, 512-2048 GB<br/>FC SAN 32/64G, 4-8× 25/100GbE"]
HVS -->|"20+"| HV4["2× EPYC 64-128C, 512-1024 GB<br/>OpenStack + Ceph, 4-8× 100GbE"]
K8s --> K8T{"Typ uzlu"}
K8T -->|"General"| K8G["16-32C, 64-128 GB<br/>2× NVMe, 2× 25GbE"]
K8T -->|"Memory"| K8M["32-64C, 256-512 GB<br/>3× NVMe, 2× 25GbE"]
K8T -->|"GPU"| K8U["32-64C, 512-1024 GB<br/>6-10× NVMe, H100/B200, 4× 100GbE"]
K8T -->|"Storage"| K8S["16-32C, 64-128 GB<br/>6-14× HBA NVMe, 4× 25GbE"]
AI --> AIT{"Účel"}
AIT -->|"Trénování"| AITR["GPU H100/B200, NVLink<br/>InfiniBand 400Gb/s, liquid cooling"]
AIT -->|"Inference"| AIIR["A100/H200, MIG<br/>PCIe 5.0, 2× 100GbE"]
ST --> STT{"Typ"}
STT -->|"Ceph OSD"| STC["EPYC (PCIe lanes)<br/>4-8 GB/OSD, HBA, 2× 25/100GbE"]
STT -->|"MinIO"| STM["EPYC 8-16C, 32-64 GB<br/>4-16× NVMe direct, 2× 25/100GbE"]
STT -->|"NAS (ZFS)"| STN["EPYC 16-32C, 64-128 GB<br/>RAID-Z, SLOG NVMe, 2-4× 10/25GbE"]
WEB --> WEBE["EPYC high clock, 8-32C<br/>32-128 GB, 2× NVMe RAID1, 2× 10/25GbE"]
Connectivity summary podle platformy
| Platforma | App / VM síť | Storage síť | Replikace / Cluster | Management |
|---|---|---|---|---|
| DB lokální (malá) | 2× 25 GbE LACP | — | 2× 25 GbE (sdílené) | 1× 1 GbE (iLO) |
| DB lokální (střední) | 2× 25/100 GbE LACP | — | 2× 25 GbE dedikované | 1× 1 GbE (iLO) |
| DB FC SAN | 2× 25/100 GbE LACP | 2× 32/64 Gb FC multipath | FC replication | 1× 1 GbE (iLO) + SAN mgmt |
| DB Ceph | 2× 25/100 GbE | 2× 25/100 GbE (Ceph public) | 2× 25/100 GbE (Ceph cluster) | 1× 1 GbE (iLO) |
| Hypervisor lokální | 2-4× 10/25 GbE LACP | — (lokální) | — | 1× 1 GbE (iLO) |
| Hypervisor vSAN | 2× 25/100 GbE LACP | 2× 25/100 GbE (vSAN) | vSAN traffic | 1× 1 GbE (iLO) |
| Hypervisor FC SAN | 2-4× 25/100 GbE LACP | 2× 32/64 Gb FC multipath | 2× 25 GbE (vMotion) | 1× 1 GbE (iLO) |
| Hypervisor Ceph | 2× 25/100 GbE LACP | 2× 25/100 GbE (Ceph) | 2× 25 GbE (migration) | 1× 1 GbE (iLO) |
| Kubernetes | 2× 25/100 GbE | 2× 25/100 GbE (Ceph/Longhorn) | 2× 25/100 GbE (K8s cluster) | 1× 1 GbE (BMC) |
| Web/API | 2× 10/25 GbE LACP | — | — | 1× 1 GbE (BMC) |
| Oracle Standalone | 2× 25 GbE LACP | 2× FC 32G nebo NVMe local | Data Guard 2× 25 GbE | 1× 1 GbE (iLO) + ASM mgmt |
| Oracle Data Guard | 2× 25/100 GbE LACP | 2× FC 64G multipath | 2× 25 GbE (DG sync) | 1× 1 GbE (iLO) + SAN mgmt |
| Oracle RAC | 2× 100 GbE LACP (VIP/SCAN) | 2× FC 64G multipath | 2× 100 GbE RoCE (Cache Fusion) | 1× 1 GbE (iLO) + Clusterware |
| Oracle Exadata | 4-8× 100 GbE RoCE | NVMe over Fabric | RDMA interconnect | Exadata CLI + OEDA |
Zdroje
Odkazy, knihy a standardy: sources/infrastructure/sources.md
Poslední revize: 2026-06-03