page header photo
share Twitter share LinkedIn

masterclass Linux performance analysis and tuning

Deze opleiding is specifiek voor het Linux-systeem.

De Masterclass "Linux performance analysis and tuning" geeft inzicht in de methoden en technieken om de performance van een Linux-machine te meten, te beoordelen en te verbeteren. Extra hardware kopen is meestal niet de juiste oplossing voor een performance probleem. U leert hoe de belasting van de vier belangrijke hardware resources (CPU, geheugen, disk, netwerk) gemeten kan worden en hoe overbelasting kan worden bestreden door herconfiguratie, spreiding, begrenzing of (als laatste stap) het bijkopen van hardware. Deze onderwerpen worden — onder begeleiding van de docent — in de praktijk geoefend.

Na afloop van de cursus kunt u een gefundeerd antwoord geven op de vraag: "Is het systeem overbelast of is er iets anders aan de hand?" en weet u hoe u het beste een performance probleem aan kunt pakken. Lees verder >>>

Voor wie?

  • De cursus is bestemd voor ervaren systeembeheerders die tot taak hebben hun Linux-machine goed te beheren, te beheersen, en het uiterste uit de apparatuur en software te halen.
Cursusduur: 5 dagen        Direct aanmelden
Contact
In-company cursus op maat
Kosten € 2499,- excl. BTW       
         
  • Deze cursus geven wij met volledig Engelstalige documentatie. De voertaal tijdens de cursus is ook Engels, tenzij alle deelnemers Nederlandstalig zijn.

Wanneer

Als de onderstaande data niet uitkomen, neem dan contact met ons op, zodat we met u kunnen overleggen welke mogelijkheden er zijn. Voor contact: 024-352 72 72 of info@ATComputing.nl.

Momenteel staan de volgende data gepland:

7,8,11,12,13 dec 2017   Utrecht

Aanmelden voor cursus: "Linux performance analysis and tuning".

Meer informatie over deze cursus

Performance

Performance-verbetering en responstijd-verbetering zijn onderwerpen die iedere systeembeheerder van nature interesseren. Elke machine wordt geleidelijk aan zo belast, dat prestaties minder worden. Dat is een gevolg van het multi-user/multi-tasking karakter van Linux én van het feit dat steeds meer applicaties worden ontwikkeld die royaal omspringen met de resources van het systeem. De systeembeheerder is de eerste die te maken krijgt met klachten van de gebruikers én van het management.

Meten, weten en verbeteren

In deze cursus worden de componenten besproken die in de praktijk bij overbelasting performance-verlies kunnen veroorzaken. De meest kritieke componenten binnen een systeem zijn de CPU's, de disks, het geheugen en de netwerkverbindingen.

Er zijn vele programma's beschikbaar die eindeloze lijsten met statistische tellers of gelikte grafiekjes produceren (meten). De problemen beginnen meestal met het trekken van conclusies uit deze getallen- of lijnen-brij: welke waarden zijn in een bepaalde situatie wel relevant en welke niet, en wat is de onderlinge relatie tussen de verschillende waarden (weten). Dit kan men slechts zinvol beoordelen als duidelijk is hoe de kernel een bepaalde systeemcomponent beheert en de capaciteit hiervan verdeelt.

Daarom wordt in deze cursus veel aandacht besteed aan de interne werking van de kernel. Weet u eenmaal waar de schoen wringt, dan ligt de ingreep vaak voor de hand (verbeteren). Suggesties ter verbetering zullen ook uitvoerig aan bod komen. Waar nodig zullen extra hulpmiddelen worden uitgereikt: software die u kunt gebruiken om een betere prestatie-analyse en prestatieverbetering mogelijk te maken.

Voorkennis

U bent bedreven in het gebruik en systeembeheer van Linux.

U vindt deze voorkennis in de cursussen "Linux/UNIX deel 1", "Linux/UNIX deel 2" gevolgd door enkele cursussen uit ons LPI-traject of door "Linux applicatiebeheer" en eventueel "Linux systeembeheer".

Inhoud van de cursus

Aan de orde komen:

  • Plan van aanpak bij performance-problemen: meten, weten en verbeteren.
  • Potentiële bottlenecks en vuistregels bij meten.
  • Het /proc en /sys filesysteem.
  • Uitlezen van statistische kernel-tellers. Soorten tellers. Misleidende tellers.
  • Kernel-instellingen bekijken en aanpassen.
  • Procesbeheer: Programma's en processen. Creatie en transformatie van processen. Zombie processen. Levenscyclus van proces. Rol van de kernel in een Linux-systeem. Sleep en wakeup mechanisme. Processen en threads. Analyse van geblokkeerde threads. Gestolen tijd.
  • Overzicht van veel-gebruikte meet-tools. Belang en gebruik van de meet-tools atop en atopsar.
  • Control groups (cgroups) in het algemeen: gebruik van hardware-componenten begrenzen.
  • Processor:
    Hardware (multi-socket, multi-core, hyperthreading, NUMA), instructie executie, variabele kloksnelheid (frequency scaling, gedeelde caches, etc), instructies per klokcyclus.
    Timesharing en realtime processen. Toestand van threads. Thread scheduling, policies, nice-waarde, implementatie van de CFS scheduler (classes deadline, realtime and fair). Task groups en autogroup. Scheduling domains.
    Meten met commando's atop, atopsar, ltrace, strace, perf en vele andere.
    Verbeteren met commando's nice, chrt, taskset, numactl (NUMA), en met behulp van de cgroups controllers 'cpu' en 'cpuset'.
  • Geheugen:
    Hardware (werking van Memory Management Unit), virtuele versus fysieke adressering, Translation Lookaside Buffer (TLB), page directories en page tables.
    Demand-paging, virtuele en fysieke proces-grootte, geheugen-indeling, swapruimte, overcommit, OOM-killing, huge pages, samepage merging, nodes en zones, swapout-mechanisme, NUMA memory policies. Invloed van kernel-parameters.
    Meten met commando's atop, atopsar en vele andere.
    Verbeteren met commando's migratepages en numactl (NUMA). Geheugen-begrenzing met behulp van de cgroups controller 'memory'.
  • Disk:
    Hardware, disk-karakteristieken van HDD (zones) en SSD (wear leveling, page allocatie, trim), thin provisioning, disk controllers.
    Queueing-algoritmen en I/O-scheduling (CFQ, etc), block layer, RAID-technieken, Logical Volume Management (LVM), layout van ext4 en XFS filesysteem en allocatie-strategie, padnaam-cache, werking van page cache, cache flushing. Journaling. Invloed van kernel-parameters.
    Meten met commando's atop, atopsar, countcat en vele andere.
    Verbeteren met commando ionice, defragmentatie tools, fstrim (SSD), en met behulp van de cgroups controller 'blkio'.
  • Netwerk:
    Hardware (interface-controllers, switches, routers).
    TCP/IP-protocol (o.a. bandwidth delay product), netwerk-delays, SNMP.
    Meten met commando's atop, atopsar, netstat, traceroute, attract, iftop, iptables, SNMP en vele andere. Gebruik van de kernel module netatop.
    Verbeteren door de netwerk-bandbreedte te verdelen met behulp van de cgroups controller 'net_cls'.

Documentatie

De cursus wordt gegeven aan de hand van Engelstalige documentatie, waaronder kopieën van gebruikte presentaties voorzien van extra notities, en opgaven met bijbehorende uitwerkingen.

Let op: de cursus wordt in principe in het Engels gegeven, tenzij alle deelnemers Nederlandstalig zijn. De cursusdocumentatie is altijd Engelstalig.

Afsluiting

Enige tijd na afloop van de cursus ontvangt u een certificaat van deelname.

Meteen aanmelden voor deze cursus

Valid XHTML 1.0 Strict   Valid CSS2