Basis van cloud en containers

In een systeem waarin meerdere diensten samenwerken, wil men nagaan door welke diensten één aanvraag van een gebruiker is gegaan, in welke volgorde, en hoeveel tijd ze in elke dienst heeft gekost. Welke soort gegevens voor observability is hiervoor het meest geschikt?

  1. AMetrics (numerieke tijdreeksen zoals CPU-gebruik en aantallen aanvragen)
  2. BLogs (registraties van gebeurtenissen die elke dienst uitvoert)
  3. CTraces (registraties van het pad van één aanvraag en de tijd van elk segment)
Antwoord en toelichting tonen

Antwoord: C. Traces (registraties van het pad van één aanvraag en de tijd van elk segment)

Observability is de mate waarin de interne toestand van een systeem kan worden afgeleid uit de gegevens die het uitzendt, en als gegevens daarvoor worden vaak metrics, logs en traces genoemd. Bij tracing (distributed tracing) wordt een identificatie die bij de aanvraag hoort, tussen diensten doorgegeven, en worden de begin- en eindtijden van de verwerkingssegmenten (spans) in elke dienst vastgelegd om het pad van één aanvraag en de verdeling van de tijd te reconstrueren. Metrics zijn geschikt om algemene trends en afwijkingen op te sporen, en logs voor gedetailleerd onderzoek van afzonderlijke gebeurtenissen, maar traces zijn het meest geschikt om de stroom van één aanvraag over diensten heen te volgen. In de praktijk wordt de identificatie van de trace ook in de logs geschreven, en worden de drie gecombineerd om oorzaken te vinden.

Dit onderwerp oefenen Naar de onderwerppagina

Meer vragen over Basis van cloud en containers

  1. Welke combinatie van de Linux-kernelfuncties waarop containers berusten, namespaces en cgroups (control groups), met hun taak is juist?
  2. Op een Linux-host wordt met Docker een container gestart uit een image dat op een andere distributie dan die van de host is gebaseerd, en daarin worden uname -r (een opdracht die de release van de kernel toont) en cat /etc/os-release (een opdracht die informatie over de distributie toont) uitgevoerd. Welke beschrijving van de resultaten is juist?
  3. Welke beschrijving van de relatie tussen een containerimage en een container is juist?
  4. In een container die uit een image is gestart, wordt het configuratiebestand /etc/app.conf gewijzigd, dat deel uitmaakt van het image. Welke beschrijving van wat er gebeurt met het gangbare opslagmechanisme van Docker (zoals overlay2) is juist?
  5. Om een archief van 500 MB, data.tar.gz, uit te pakken, is met het bovenstaande Dockerfile een image gebouwd. Hoewel het archief na het uitpakken in dezelfde RUN werd verwijderd, bleef het image nog steeds groter, precies met de grootte van het archief. Welke combinatie van oorzaak en oplossing is het meest geschikt?