Datenverarbeitung der nächsten Generation in großem Maßstab bei Pinterest mit Moka (Teil 2 von 2)
Pinterest entwickelt Moka, eine Datenverarbeitungsplattform der nächsten Generation, um sein veraltetes Hadoop-basiertes System zu ersetzen. Diese Plattform wird auf AWS Elastic Kubernetes Service (EKS) in vier Umgebungen eingesetzt: Test, Dev, Staging und Produktion. Terraform, erweitert durch benutzerdefinierte AWS-Module und Helm-Charts, verwaltet die EKS-Cluster-Deployments. Eine kritische Komponente von Moka ist seine Logging-Infrastruktur, die Fluent Bit verwendet, um Logs von EKS-Steuerungsebenen, Spark-Anwendungen und System-Pods zu sammeln und nach Amazon S3 zu exportieren. Fluent Bit ist so konfiguriert, dass es Spark-Anwendungslogs nach einer eindeutigen Job-ID gruppiert und YuniKorn-Logs auf Ressourcenausnutzungszusammenfassungen analysiert. Für die Beobachtbarkeit verwendet Pinterest ein Prometheus-kompatibles Framework, um Metriken zu sammeln. Sie entwickelten einen benutzerdefinierten Sidecar, kubemetricsexporter, um ihr bestehendes TSDB-basiertes Statsboard-System mit Prometheus-Metriken zu verbinden. Der OpenTelemetry Collector wird verwendet, um Telemetriedaten zu empfangen, zu verarbeiten und zu exportieren, wobei eine spezifische Pipeline für Prometheus-Metriken konfiguriert ist. Diese robuste Infrastruktur zielt darauf ab, eine effiziente und zuverlässige Datenverarbeitung in großem Maßstab für Pinterest zu gewährleisten.