Wie Netflix genau eBPF-Fluss-L... Notiz

Wie Netflix genau eBPF-Fluss-Logs zuordnet

Netflix verwendet eBPF, um TCP-Flussprotokolle im großen Maßstab für verbesserte Netzwerk-Einblicke zu erfassen, aber die genaue Zuordnung von Fluss-IP-Adressen zu Workload-Identitäten war eine erhebliche Herausforderung. Der ursprüngliche Zuordnungsansatz basierte auf Sonar, einem internen IP-Adresse-Verfolgungsdienst, aber dies führte aufgrund von Verzögerungen und Fehlern in verteilten Systemen zu Fehlzuschreibungen. Fehlzuschreibungen machten die Flussdaten für Entscheidungen unzuverlässig, und ein Workaround, bei dem empfangene Flüsse 15 Minuten lang vor der Zuordnung zurückgehalten wurden, beseitigte das Problem nicht. Um dieses Problem zu lösen, entwickelte Netflix eine neue Zuordnungsmethode, die lokale IP-Adressen durch Bestimmung der lokalen Workload-Identität aus ihrer Umgebung zuordnet. Für Container-Workloads nutzte Netflix IPMan, einen Container-IP-Adresse-Zuweisungsdienst, um lokale IP-Adressen zuzuordnen. Sobald lokale IP-Adressen zugeordnet sind, können Remote-IP-Adressen durch das Lernen der Zeitbereiche, in denen jede Workload eine bestimmte IP-Adresse besitzt, zugeordnet werden. FlowCollector speichert ein in-Memory-Hashmap, um dieses Wissen darzustellen, und teilt die gelernten Zeitbereiche mit anderen Knoten über Kafka. Die neue Methode erreicht eine genaue Zuordnung und behandelt vorübergehende Probleme elegant, und sie ist auch kosteneffizient aufgrund ihrer Einfachheit und in-Memory-Abfragen. Die Methode wird erweitert, um IP-Adressen zwischen Regionen zuzuordnen, indem Flüsse an Knoten in der entsprechenden Region weitergeleitet werden. Schließlich wird die Methode erweitert, um Nicht-Workload-IP-Adressen zuzuordnen, wie z.B. diejenigen, die Netflixs Content-Delivery-Netzwerk gehören.
CdXz5zHNQW_ODQpwXb03K.png