Logy v Kubernetes

Vladimír Macek macek na sandbox.cz
Neděle Duben 4 19:56:15 CEST 2021


Ahoj,

potřebuju v Kubernetes clusteru spolehlivě zachytávat stdout/stderr všech 
Podů ve všech Namespacech, a to i když Pody jsou už dávno mrtvé.

Dále potřebuju mít možnost v tomto archivu filtrovat podle

* Namespace
* Pod name
* Container name
* Stream (stdout, stderr)

Chci mít možnost nezadat i žádný filtr. Ale potřebuju v takovém případě 
vědět, kam co patří. Příklad: Filtruju na Namespace X => v získaných log 
messages budu potřebovat rozlišit Pod name, Container name a Stream.

Dále potřebuju, aby archiv vydával log messages v pořadí, v jakém napříč 
Pody vznikaly.

Vysvětlení:

V clusteru vznikají Joby z popudu Podů, které pro to mají práva. A tyto 
Pody pak právě mají mít možnost vytáhnout si logy svých dětí. Teď mám 
cluster na Debianu pomocí https://github.com/k3s-io/k3s a crictl. Časem 
AWS, Azure. Řešení bych chtěl co nejvíc jednotné, ale teď to stačí na ten 
single-node Debian.

Globální archiv bych pak používal i pro monitoring a bylo by fajn tam mít i 
eventy clusteru. Ale to je druhotné.

Jak byste ten filtrovatelný archiv řešili?

Předem děkuju,

Vláďa




Další informace o konferenci Linux