Jak otestovat výkon serverů: výběr několika open source benchmarků

Pokračujeme v naší sérii článků věnovaných testování výkonu serverů. Dnes se podíváme na pár časem prověřených benchmarků, které jsou stále podporovány a aktualizovány — NetPerf, HardInfo a ApacheBench.

Jak otestovat výkon serverů: výběr několika open source benchmarků
Foto — Peter Balcerzak — CC BY-SA

NetPerf

Toto je nástroj pro hodnocení propustnosti sítě. Vyvinuli ho inženýři společnosti Hewlett-Packard. Nástroj obsahuje dva spustitelné soubory: netserver a netclient. Pro provedení testu je nutné je spustit na různých strojích. Ve výchozím nastavení netperf používá port 12865, ale lze ho změnit pomocí flagu -p. Nástroj pracuje s TCP a UDP prostřednictvím BSD Sockets, DLPI, Unix Domain Sockets a IPv6.

Dnes je netperf součástí sady nástrojů pro benchmarking Flent. Také ho používá poměrně velké množství IT společností, například Red Hat. Takto vypadá popis služby netperf v jednom z příkladů pro hodnocení výkonu OpenShift:

apiVersion: v1
kind: Service
metadata:
  labels:
    app-name: netperf
  name: netperf
  namespace: your_project
spec:
  ports:
  - port: 12865
    protocol: TCP
    targetPort: 12865
  selector:
    app-name: netperf
  sessionAffinity: ClientIP
  type: ClusterIP

V oficiálním repozitáři je uvedeno, že netperf je distribuován na základě speciální licence Hewlett-Packard. Nicméně autor nástroje — Rick Jones — tvrdí, že je vytvořen podle nejlepších tradic open source. Také bychom měli zmínit, že v poslední době vycházely aktualizace pro netperf poměrně zřídka. Možná je to spojeno s vyspělostí produktu.

Netperf má analogy — například iperf2 a iperf3. Tyto nástroje také umožňují testovat propustnost sítě. Vývoj iperf3 začal poté, co repozitář iperf2 upadl do zapomnění. Nová verze byla napsána od nuly a není kompatibilní s předchozí implementací, ačkoli obsahuje část jejího kódu. Zajímavé je, že po vydání iperf3 se práce na iperf2 opět rozjela. Výsledkem jsou dva nástroje, které mají podobnou, ale zároveň různou funkčnost. Například iperf2 je vícetrhdový, zatímco iperf3 — pracuje pouze s jedním vláknem.

Hardinfo

Toto je nástroj pro shromažďování informací o hardwaru a operačním systému. Zobrazuje data o provozu zařízení na: PCI, ISA PnP, USB, IDE, SCSI, stejně jako sériových a paralelních portech. Může být však také použit jako benchmark a monitorovací nástroj.

HardInfo nabízí několik testů. Například CPU Blowfish – hodnotí výkon procesoru pomocí kryptografických algoritmů symetrického blokového šifrování. Je zde CPU N-Queens – test z kombinatoriky. Systém řeší šachový problém umístění N královen na desce N x N políček. Umisťuje figury tak, aby žádná z nich nemohla útočit na ostatní. Také stojí za zmínku FPU FFT – test na rychlé počítání diskrétní Fourierovy transformace a FPU Raytracing – výpočet dráhování paprsků při renderování 3D scény.

Výsledky v většině testů jsou udávány v sekundách a čím méně, tím lépe. Všechny zprávy jsou zobrazeny ve formátech HTML a txt.

Původně byla utility vyvíjena v rámci projektu BerliOS. Ten zahrnoval hostingovou platformu pro aplikace s otevřeným zdrojovým kódem (například SourceForge) a několik databází pro dokumentaci a profily open source vývojářů. BerliOS byl uzavřen v roce 2014 kvůli nedostatečnému financování. Dnes se HardInfo vyvíjí díky úsilí nadšenců v samostatném repozitáři na GitHubu.

Je třeba poznamenat, že v systému se občas vyskytují chyby. Je známo o periodicky se objevujícím segmentační chybě, problémech s zobrazováním USB zařízení a několika dalších.

ApacheBench

Nástroj pro zátěžové testování HTTP serverů. ApacheBench (AB) byl vyvinut pro testování Apache, ale může fungovat i na jiném serveru. Tento nástroj je předinstalován na mnoha distribucích Linuxu.

Jak otestovat výkon serverů: výběr několika open source benchmarků
Foto — Victor Freitas – Unsplash

Nástroj „bombarduje“ servery velkým množstvím dotazů. Pro spuštění je potřeba zadat následující příkaz:

ab -n 100 -c 10 http://www.example.com/

Tím se odešle sto GET dotazů (současně bude odesláno maximálně deset z nich) na testovaný zdroj. Na výstupu systém ukáže průměrnou dobu zpracování dotazů, celkový objem přenesených dat, propustnost a počet chyb.

Dnes se kolem nástroje shromáždilo rozsáhlé společenství. Na internetu pravidelně vycházejí nové příručky o tom, jak nastavit a používat ApacheBench.

Je třeba poznamenat, že AB má analog – Apache jMeter, ale s většími možnostmi. Například umožňuje generovat požadavky z několika počítačů, přičemž proces je řízen z jednoho z nich. V programu jsou také implementovány mechanismy autorizace virtuálních uživatelů a podporují se uživatelské relace. Tento nástroj používá mnoho IT společností, včetně cloudových poskytovatelů, například Qualys.

Jak otestovat výkon serverů: výběr několika open source benchmarkůV 1cloud poskytujeme službu „Soukromý cloud“. To je – pronájem virtuální infrastruktury s možností rychlé customizace parku virtuálních serverů.
Jak otestovat výkon serverů: výběr několika open source benchmarkůNáš cloud je postaven na hardwaru Cisco, Dell, NetApp. Zařízení je umístěno v několika datových centrech: DataSpace (Moskva), SDN/Xelent (Sankt Petěrburg), Ahost (Almaty).

Zdroj: habr.com

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster