áá»áááºáááºááŸá¯ááŒá±áá¬áá¶ááŒááºáž (âconntrackâ) ááẠLinux kernel ááœááºáááºáá»áááºáááºááŸá¯á¡á á¯á á¯á á¡áááá¡ááºá¹áá«áááºáá áºáá¯ááŒá áºáááºá áááºážááẠkernel á¡á¬áž áá¯áá¹áááááºáá±á¬ ááœááºáááºáá»áááºáááºááŸá¯áá»á¬áž ááá¯á·ááá¯áẠá á®ážáááºážááŸá¯áá»á¬ážá¡á¬ážáá¯á¶ážááᯠááŒá±áá¬áá¶ááá¯ááºá á±ááŒá®áž áááºážááá¯á·ááᯠá ááºáááºáááŒáẠá¡áá°ááᜠáá¯ááºáá±á¬ááºááá¯ááºá á±ááẠá á®á á¥áºááŸá¯áá áºáá¯á á®ááœáẠáá«áááºááá·áº áááºáááºáá»á¬ážá¡á¬ážáá¯á¶ážááᯠááœá²ááŒá¬ážáááºááŸááºááá¯ááºáááºá
Conntrack ááẠá¡áá»áá¯á·áá±á¬ á¡ááŒá±áá¶ááá á¹á áá»á¬ážááœáẠá¡áá¯á¶ážááŒá¯ááá·áº á¡áá±ážááŒá®ážáá±á¬ kernel á¡ááºá¹áá«áááºááŒá áºáááº-
- NAT ááẠconntrack á០á¡áá»ááºá¡áááºáá»á¬ážá¡áá±á«áºááœáẠááŸá®ááá¯áá±áá±á¬ááŒá±á¬áá·áº áááºážááẠáá°áá®áá±á¬á á®ážááŒá±á¬ááºážá០packet á¡á¬ážáá¯á¶ážááᯠá¡áá®á¡áá»áŸ áááºáá¶ááá¯ááºáááºá á¥ááá¬á¡á¬ážááŒáá·áºá pod áá áºáá¯ááẠKubernetes áááºáá±á¬ááºááŸá¯ááᯠáááºáá±á¬ááºááá·áºá¡áá«á kube-proxy load balancer ááẠá¡á á¯á¡áá±ážá¡ááœááºážááŸá áá®ážááŒá¬áž pod áá áºáá¯ááá¯á· áááºážááŒá±á¬ááºážááŒááẠNAT ááá¯á¡áá¯á¶ážááŒá¯áááºá áá±ážáá¬ážááá·áº áá»áááºáááºááŸá¯á¡ááœááºá IP áááºáá±á¬ááºááŸá¯ááá¯á· packet á¡á¬ážáá¯á¶ážááᯠáá°áá®áá±á¬ pod ááá¯á· áá±ážááá¯á·ááááºááŒá áºááŒá®ážá backend pod á០ááŒááºáá±ážáá±á¬ packets áá»á¬ážááᯠáá±á¬ááºážááá¯ááŸá¯ááŸáá¬áá±á¬ pod ááá¯á· NATed ááŒááºáá±ážááá«áááºá
- Calico áá²á·ááá¯á·áá±á¬ Stateful Firewall áá»á¬ážááẠáá»áááºáááºáááºážááŒá±á¬ááºážá០"áá¯á¶á·ááŒááºááŸá¯" á¡ááœá¬ážá¡áá¬ááᯠááœáá·áºááŒá¯á á¬áááºážá០á¡áá»ááºá¡áááºáá»á¬ážá¡áá±á«áºááœáẠá¡á¬ážááá¯ážáááºá áááºážááẠááá·áºá¡á¬áž áá¯á¶á·ááŒááºááŸá¯á¡ááœá¬ážá¡áá¬ááᯠááŒááºáá¬ážá áœá¬ááœáá·áºááŒá¯ááẠáá°áá«áááᯠáá±ážáá¬ážáááºáááá¯áá² "áá»áœááºá¯ááºá pod ááᯠá¡áá±ážááááºáž IP ááááºá á¬ááá¯á· áá»áááºáááºááœáá·áºááŒá¯áá«" áá°áá±á¬ ááœááºáááºáá°áá«áááᯠáá±ážáá¬ážááá¯ááºá á±áá«áááºá (á€á¡áá¬áááŸááá²á áááºáááºáááºááá·áº IP á ááºážáá»ááºážááŸáááᯠpackets ááá¯á· packets ááá¯ááœáá·áºááŒá¯ááẠáá¯á¶ááŒá¯á¶ááŸá¯ááá¯áááºážáá±á¬ áá¯á¶ááŒá¯á¶ááŸá¯ááá¯ááá·áºááááºááŒá áºáá«áááºá)
ááá¯á·á¡ááŒááºá conntrack ááẠáá¯á¶ááŸááºá¡á¬ážááŒáá·áº stream áá
áºáá¯ááŸá ááááá¯á¶áž packet ááŸá
ááŒá®áž (CPU áá¯á¶ážá
áœá²ááŸá¯ááŸáá·áº áááºáá±á·áááºáá±áá»áááºááᯠáá»áŸá±á¬á·áá»ááŒááºážááŒáá·áº) á
áá
áºá
áœááºážáá±á¬ááºáááºááᯠááŒáŸáá·áºáááºáá±ážáá«áááºá
áááºážááŸáá·áºáá¬áá¯ááºááááºááá¯áá¯á¶ážááŒááºááẠnetwork stack áá
áºáá¯áá¯á¶ážááá¯ááŒááºáááºážááá«áááºá ááá¯á·á
áºááá¯ááŒáá·áºáá«"
áá«áá±ááá·áº Conntrack ááŸá¬ á¡ááá·áºá¡áááºááœá±ááŸááá«áááº...
áá«ááᯠá¡á¬ážáá¯á¶ážááŸá¬ážááœá¬ážááŒá®áá¬ážá
conntrack ááá¬ážááœáẠáá¯á¶áá±á¬áºááá¯ááºáá±á¬ á¡ááŒáá·áºáá¯á¶ážá¡ááœááºá¡á á¬ážááŸáááŒá®áž áááºážááẠááŒáá·áºááœá¬ážáá«áá áá»áááºáááºááŸá¯áá»á¬ážááᯠá¡áá»á¬ážá¡á¬ážááŒáá·áº áááºáá»ááŒááºáž ááá¯á·ááá¯áẠááŒá¯ááºáá»ááŒááºážááá¯á· á áááºáááºááŒá áºáááºá á¡ááá®áá±ážááŸááºážá¡áá»á¬ážá á¯á á¡ááœá¬ážá¡áá¬ááᯠááá¯ááºááœááºááẠááá¬ážáá²ááœáẠáá±áá¬ááœááºá¡áá¯á¶á¡áá±á¬ááºááŸáááŒá®ážá áááºážááẠáááºááá·áºá¡áá«áá»áŸ ááŒá¿áá¬ááŒá áºáá¬áááºááá¯ááºáá«á ááá¯á·áá±á¬áºá conntrack table ááá¯á¡áá¯á¶ážááŒá¯ááẠáááºá ááºážá á¬ážááá¯ááá·áº á¡ááŒá±á¡áá±á¡áá»áá¯á·ááŸááá«áááºá
- á¡áááºááŸá¬ážáá¯á¶ážááá á¹á ááŸá¬ áááºááá¬áá¬ááẠá¡ááœááºáá»á¬ážááŒá¬ážáá±á¬ áá»áááºáááºááŸá¯áá»á¬ážá¡á¬áž áá áºááŒáá¯ááºáááºáááºáž áá¯ááºáá±á¬ááºáá±áá«á ááŒá áºáááºá á¥ááá¬á¡á¬ážááŒáá·áºá áááºá conntrack ááá¬ážááᯠ128k entries áá»á¬ážá¡ááœáẠconfigure áá¯ááºáá¬ážáá±á¬áºáááºáž ááá·áºááœáẠ> 128k concurrent connections ááŸááá«áá áááºááẠáá±áá»á¬áá±á«áẠááŒá¿áá¬áá áºáá¯ááŸáá·áº áááºááá¯ááºááááá·áºáááºá
- á¡áááºážáááºáᬠáááºááŸá¬ážáá±á¬ ááá á¹á - ááá·áºáá¬áá¬ááẠáá áºá áá¹ááá·áºáá»áŸáẠáá»áááºáááºááŸá¯ á¡áá»á¬ážá¡ááŒá¬ážááᯠáá¯ááºáá±á¬ááºáá±áá«áá áá»áááºáááºááŸá¯áá»á¬ážááẠááá¯áá±á¬ááºážáá±á¬áºáááºážá áááºážááá¯á·á¡á¬áž á¡áá»áááºá¡ááá¯ááºážá¡áá¬áá áºáá¯á¡áá Linux á០áááºáááºá á±á¬áá·áºááŒáá·áºáá±áá«ááẠ(áá¯á¶ááŸááºá¡á¬ážááŒáá·áº 120s)á á¥ááá¬á¡á¬ážááŒáá·áºá áááºá conntrack ááá¬ážááẠ128k entries áá»á¬ážá¡ááœáẠconfigure áá¯ááºáá¬ážááŒá®áž áá áºá áá¹ááá·áºáá»áŸáẠ1100 connections ááᯠááá¯ááºááœááºááẠááŒáá¯ážá á¬ážáá±áá«áá áá»áááºáááºááŸá¯áá»á¬ážááẠá¡ááœááºááá¯áá±á¬ááºážáá±á¬áºáááºážá áááºážááá¯á·ááẠconntrack table áá¡ááœááºá¡á á¬ážááẠáá»á±á¬áºááœááºááœá¬ážáááá·áºááẠ(128k/120s = 1092 connections/ á)
á€á¡áá»áá¯ážá¡á á¬ážáá»á¬ážááœáẠá¡áá»á¯á¶ážáááºáá±á¬ áá®ážááá·áºá¡ááºááºá¡áá»áá¯ážá¡á á¬ážáá»á¬ážá áœá¬ ááŸááá«áááºá ááá¯á·á¡ááŒááºá ááá·áºááœáẠááá¯ážááœá¬ážáá±á¬ááá¯ááºáá±á¬ááºáá»á¬ážá áœá¬ááŸááá«áá áááºááœáá·áºáá»áááºáááºááŸá¯áá»á¬ážáá»á¬ážá áœá¬ááŒáá·áº ááá·áºáá¬áá¬á conntrack ááá¬ážááᯠááŒáá·áºááœááºážááŒááºážááᯠáááºáá±á¬ááºááŸá¯ááŒááºážáááºááŒááºáž (DOS) ááá¯ááºááá¯ááºááŸá¯á áá áºá áááºáá áºááá¯ááºážá¡ááŒá Ạá¡áá¯á¶ážááŒá¯ááá¯ááºáááºá ááá á¹á ááŸá áºáá¯á áá¯á¶ážááœááºá conntrack ááẠááá·áºá áá áºááœáẠááá·áºáááºááááºááá¯á·ááŸá¯áá»á¬ážááŒá áºáá¬ááá¯ááºáááºá á¡áá»áá¯á·ááá á¹á áá»á¬ážááœááºá conntrack table parameters áá»á¬ážááᯠáá»áááºááŸáááŒááºážááẠá¡ááœááºá¡á á¬ážááᯠááá¯ážááŒáŸáá·áºááŒááºáž ááá¯á·ááá¯áẠconntrack timeouts áá»á¬ážááᯠáá»áŸá±á¬á·áá»ááŒááºážááŒáá·áº ááá·áºááá¯á¡ááºáá»ááºáá»á¬ážááŸáá·áº áá¯á¶áá±á¬ááºááá¯ááºááẠ(ááá¯á·áá±á¬áº áááºážááᯠááŸá¬ážááœááºážá áœá¬ ááŒá¯áá¯ááºáá«á áááºááẠááŒá¿áá¬áá»á¬ážá áœá¬ááŸáá·áº áááºááá¯ááºááááá·áºáááº)á á¡ááŒá¬ážááá á¹á áááºáá»á¬ážá¡ááœáẠááŒááºážáááºáá±á¬ áá¬ááºááŒá±á¬ááááºááá¯á·ááŸá¯á¡ááœáẠáááºážááŒá±á¬ááºážááᯠáá»á±á¬áºááŒááºááẠááá¯á¡ááºáááºááŒá áºáá«áááºá
áááá·áºá¥ááá¬
áááá»áá±á¬á¥ááá¬áá áºáá¯áá±ážááŒáá·áºáá¡á±á¬ááº- áá»áœááºá¯ááºááá¯á·ááŸáá·áºá¡áá¯ááºáá¯ááºáá²á·áá±á¬ SaaS áááºáá±á¬ááºááŸá¯áá±ážáá°ááŒá®ážáá áºáá¯ááœáẠhosts ( virtual machine áá»á¬ážááá¯ááºáá«) ááœáẠmemcached server á¡áá»á¬ážá¡ááŒá¬ážááŸááááº
áááºážááá¯á·ááẠconntrack configuration ááá¯á ááºážáááºáá²á·ááŒá®ážá ááá¬ážá¡ááœááºá¡á á¬ážáá»á¬ážááá¯ááá¯ážááŒáŸáá·áºáᬠááŒá±áá¬áá¶áá»áááºááá¯áá»áŸá±á¬á·áá»ááẠá ááºážáááºáá²á·ááŒáá±á¬áºáááºáž configuration ááẠá áááºááá»áááŒá±á¬ááºážá RAM áá¯á¶ážá áœá²ááŸá¯ááẠáááááá¬áá¬ááá¯ážáá¬áᬠááŒá¿áá¬áá áºáá¯ááŒá áºááẠ(GBytes áá¡á á®á¡á á¥áºá¡á!) ááŸáá·áº áá»áááºáááºááŸá¯áá»á¬ážááẠá¡ááœááºááá¯áá±á¬ááºážáá±á¬ááŒá±á¬áá·áº conntrack ááá¯ááºááá¯ááºáá±á áááºážááá¯á¶ááŸááºá áœááºážáá±á¬ááºáááºá¡áá»áá¯ážáá¶á á¬ážááœáá·áºááá¯áááºáá®ážáá« (á á¬ážáá¯á¶ážááŸá¯áá»áŸá±á¬á·áá»áá¬ážáá±á¬ CPU ááá¯á·ááá¯áẠáááºáááºáááºáá±áá»áááº)á
áá°ááá¯á·ááẠCalico ááᯠá¡ááŒá¬ážááœá±ážáá»ááºá áá¬á¡ááŒá ẠááŒá±á¬ááºážáá²áá²á·áááºá Calico ááœááºáááºáá±á«áºáá á®áá»á¬ážááẠááá·áºá¡á¬áž á¡áá»áá¯á·áá±á¬á¡ááœá¬ážá¡áá¬á¡áá»áá¯ážá¡á á¬ážáá»á¬ážá¡ááœáẠconntrack ááá¯á¡áá¯á¶ážáááŒá¯ááá¯ááºá á±ááẠ(doNotTrack áá°áá«áááœá±ážáá»ááºááŸá¯ááᯠá¡áá¯á¶ážááŒá¯ááŒááºáž)á áááºážááẠáááºážááá¯á·ááá¯á¡ááºáá±á¬ á áœááºážáá±á¬ááºáááºá¡ááá·áºá¡ááŒáẠCalico á០áá¶á·ááá¯ážáá±ážááá·áº áááºáá±á¬ááºážáá¯á¶ááŒá¯á¶áá±ážá¡ááá·áºááᯠáá±ážáááºá
á ááºážáá»á¥áºážááᯠáá»á±á¬áºááŒááºááá¯á· áááºá¡ááá¯ááºážá¡áá¬á¡áá ááœá¬ážáááŸá¬áá²á
- Do-not-track ááœááºáááºáá°áá«ááá»á¬ážááẠáá±áá¯áá»á¡á¬ážááŒáá·áº á¡áá»áá¯ážáá»ááá·áºáááºá SaaS áááºáá±á¬ááºááŸá¯áá±ážááá·áºááá á¹á ááœááºá áááºážááá¯á·á á¡ááá®áá±ážááŸááºážáá»á¬ážááẠá¡áá¬á¡ááœááºáá¯ááºá¡ááœááºáž áááºáááºáá±áá±á¬ááŒá±á¬áá·áº ááœááºáááºáá°áá«áááᯠá¡áá¯á¶ážááŒá¯á memcached ááá¯á·áááºáá±á¬ááºááœáá·áºááŒá¯áá¬ážááá·áº á¡ááŒá¬ážáá±á¬ áá®ážááŒá¬ážá¡ááºááºáá®áá±ážááŸááºážáá»á¬ážá០áááºážááŒá±á¬ááºážáá»á¬ážááᯠá¡ááŒá°á á¬áááºážáá²ááœááºážááá¯ááºáááºá
- do-not-track áá°áá«áááẠáá»áááºáááºááŸá¯á áŠážáááºáá»ááºááᯠááá·áºááœááºážá ááºážá á¬ážáááºááá¯ááºáá«á ááá¯á·ááŒá±á¬áá·áºá memcached áá¬áá¬ááẠáááºááºáá¶ááá«áá áááºážááẠááŸááºáááºáá±á¬á¡áááºážá¡ááŒá áºááá¯á·ááºááᯠá¡áá¯á¶ážááŒá¯áá±ááá»áŸáá¬ááááºáá¯á¶áž áááºááẠáá®á¡áá¯áá®á¡á memcached client áá»á¬ážááŸáá·áº áá»áááºáááºááẠááŒáá¯ážá á¬ážááá¯ááºáááºá ááá¯á·áá±á¬áºá áááºá memcached clients áá»á¬ážá¡ááœáẠááœááºáááºáá°áá«áááᯠááŸááºáááºá áœá¬ áááºááŸááºáá²á·áá»áŸáẠá€áá»áááºáááºááŸá¯ááŒáá¯ážáááºážáá»ááºáá»á¬ážááᯠclient áááºá០áááºáá»áá¶ááá²ááŒá áºáááºá
- á á®ážáááºážááŸá¯áá áºáá¯ááŸá ááááááºáááºááœááºáᬠá¡áá¯á¶ážááŒá¯ááá·áº áá¯á¶ááŸááºáá°áá«ááá»á¬ážááŸáá·áº ááá·áºáá»ááºááá·áºá¡ááá¯ááºáž do-not-track áá°áá«áááᯠpacketááá¯ááºážááœáẠáááºáá±á¬ááºáá«áááºá áááºáááºáá áºáá¯á á®á¡ááœáẠáá°áá«áááᯠáá»áá·áºáá¯á¶ážááááºááŒá áºáá±á¬ááŒá±á¬áá·áº áááºážááẠáááºáááºáá áºáá¯á á®á¡ááœáẠCPU áá¯á¶ážá áœá²ááŸá¯ááᯠááá¯ážááŒáŸáá·áºááá¯ááºáááºá ááá¯á·áá±á¬áº áááá¬áá»áááºáááºááŸá¯áá»á¬ážá¡ááœááºá conntrack processing á¡ááœáẠá¡áááºážá¡ááŒá áºáá¯á¶ážá áœá²ááŸá¯áá»áŸá±á¬á·áá»ááŒááºážááŒáá·áº á€áá¯ááºáá»á ááááºááᯠáá»áŸáá á±áááºá á¥ááá¬á¡á¬ážááŒáá·áºá SaaS áááºáá±á¬ááºááŸá¯áá±ážáá°áá áºáŠážáááá á¹á ááœááºá áá»áááºáááºááŸá¯áá áºáá¯á á®á¡ááœáẠáááºáááºá¡áá±á¡ááœááºááẠá¡ááœááºáááºážáá«ážáá±á¬ááŒá±á¬áá·áº áááºáááºáá áºáá¯á á®ááá¯á· áá°áá«ááá»á¬ážá¡áá¯á¶ážááŒá¯ááá·áºá¡áá« á¡ááᯠCPU áá¯á¶ážá áœá²ááŸá¯ááẠááá¬ážáá»áŸááá«áááºá
á áááºá ááºážáááºááá¯ááºáá¡á±á¬ááº
áá»áœááºá¯ááºááá¯á·ááẠmemcached server ááŸáá·áº memcached client pods á¡áá»á¬ážá¡ááŒá¬ážááŒáá·áº pod áá
áºáá¯áááºážááœáẠá
ááºážáááºááŸá¯ááᯠá¡áá±ážá០node áá»á¬ážáá±á«áºááœáẠáá¯ááºáá±á¬ááºáá±áá±á¬ááŒá±á¬áá·áº áá
áºá
áá¹ááá·áºáá»áŸáẠáá»áááºáááºááŸá¯áá»á¬ážá
áœá¬ááᯠáá¯ááºáá±á¬ááºááá¯ááºáááºááŒá
áºáááºá memcached server pod áá«ááá·áº áá¬áá¬ááœáẠconntrack table ááœáẠ8 cores ááŸáá·áº 512k entries áá»á¬áž (á¡áááºááŸááºá¡ááœáẠá
á¶áááºááŸááºáá¬ážáá±á¬ ááá¬ážá¡ááœááºá¡á
á¬áž)á
áá»áœááºá¯ááºááá¯á·ááẠá
áœááºážáá±á¬ááºáááºááœá¬ááŒá¬ážáá»ááºááᯠááá¯ááºážáá¬áááº- ááœááºáááºáá°áá«ááááŸáá áá¯á¶ááŸáẠCalico áá°áá«áááŒáá·áº ááŸáá·áº Calico do-not-track áá°áá«áá
áááá ááºážáááºááŸá¯á¡ááœááºá áá»áœááºá¯ááºááá¯á·ááẠáá»áááºáááºááŸá¯á¡áá±á¡ááœááºááᯠáá áºá áá¹ááá·áºáá»áŸáẠ4.000 ááá¯á·áááºááŸááºáá¬ážáá±á¬ááŒá±á¬áá·áº CPU áá¯á¶ážá áœá²ááŸá¯ááœá¬ááŒá¬ážáá»ááºááᯠáá»áœááºá¯ááºááá¯á·á¡á¬áá¯á¶á áá¯ááºááá¯ááºáááºááŒá áºáááºá áá°áá«ááááŸáááŒááºážááŸáá·áº áá¯á¶ááŸááºáá°áá«áááŒá¬ážááœáẠáááá¬áááºááŸá¬ážáá±á¬ ááŒá¬ážáá¬ážáá»ááºáááŸááá±á¬áºáááºáž CPU áá¯á¶ážá áœá²ááŸá¯ 20% ááá·áº ááá¯ážáá¬áááºááᯠááŒá±áá¬áá¶ááŒááºážáááŒá¯áá«ááŸáá·áºá
áá¯áááá ááºážáááºááŸá¯ááœááºá áá»áœááºá¯ááºááá¯á·á áá¯á¶ážá áœá²áá°áá»á¬ážááẠáá»áœááºá¯ááºááá¯á·á memcached áá¬áá¬ááᯠááá¯ááºááœááºááá¯ááºááá·áº áá áºá áá¹ááá·áºáá»áŸáẠá¡áá»á¬ážáá¯á¶ážáá»áááºáááºááŸá¯á¡áá±á¡ááœááºááᯠááá¯ááºážáá¬ááá¯ááºááá±á¬áẠáá»áááºáááºááŸá¯áá»á¬ážá áœá¬ááᯠáá»áœááºá¯ááºááá¯á· á áááºáá¯ááºáá±á¬ááºáá²á·áááºá áá»áŸá±á¬áºááá·áºáá¬ážááá·áºá¡ááá¯ááºážá "áááŸááá±á¬áá°áá«á" ááŸáá·áº "áá¯á¶ááŸááºáá°áá«á" ááá á¹á áá»á¬ážááẠáá áºá áá¹ááá·áºáá»áŸáẠáá»áááºáááºááŸá¯ 4,000 áá»á±á¬áº (512k / 120s = 4,369 connections/s) á conntrack limit ááá¯á· áá±á¬ááºááœá¬ážáááºá do-not-track áá±á«áºáá á®ááŒáá·áºá áá»áœááºá¯ááºááá¯á·ááá±á¬ááºáááºáá»á¬ážááẠááŒá¿áá¬áááŸááá² áá áºá áá¹ááá·áºáá»áŸáẠáá»áááºáááºááŸá¯ 60,000 ááá¯á·áá±ážáá«áááºá áá±á¬ááºáááºáá»á¬ážááᯠáá»á¬ážáá»á¬ážááá·áºááŒááºážááŒáá·áº á€áá¶áá«ááºááᯠááá¯ážááŒáŸáá·áºááá¯ááºáááºáᯠáá»áœááºá¯ááºááá¯á·áá±áá»á¬áá±á¬áºáááºáž á€áá¶áá«ááºáá»á¬ážááẠá€áá±á¬ááºážáá«ážáá¡áá»ááºááᯠáá±á¬áºááŒááẠáá¯á¶áá±á¬ááºáá±ááŒá®áᯠáá»áœááºá¯ááºááá¯á·áá¶á á¬ážááá«áááºá
áá±á¬ááºáá»ááº
Conntrack ááẠá¡áá±ážááŒá®ážáá±á¬ kernel á¡ááºá¹áá«áááºáá áºáá¯ááŒá áºáááºá áá°á·á¡áá¯ááºááᯠááŒá®ážááŒáá·áºá á¯á¶á¡á±á¬áẠáá¯ááºáááºá áááºážááᯠá¡áááá áá Ạá¡á áááºá¡ááá¯ááºážáá»á¬ážááŒáá·áº á¡áá¯á¶ážááŒá¯áá±á·ááŸááááºá ááá¯á·áá±á¬áºáááºáž á¡áá»áá¯á·áá±á¬á¡ááŒá±á¡áá±áá»á¬ážááœááºá conntrack ááŒá±á¬áá·áº ááááºááá¯á·ááŸá¯ááẠáááºážááá¯áá±ážáá±á¬ááºááá·áº áá¯á¶ááŸááºá¡áá»áá¯ážáá»á±ážáá°ážáá»á¬ážááẠáá¬ááœááºáááºá á€á¡ááŒá±á¡áá±ááœááºá ááœááºáááºáá¯á¶ááŒá¯á¶áá±ážááá¯ááá¯ážááŒáŸáá·áºáá±á ááºááœáẠconntrack á¡áá¯á¶ážááŒá¯ááŸá¯ááᯠááœá±ážáá»ááºááááºááẠCalico ááœááºáááºáá°áá«ááá»á¬ážááᯠá¡áá¯á¶ážááŒá¯ááá¯ááºáááºá á¡ááŒá¬ážá¡ááœá¬ážá¡áá¬á¡á¬ážáá¯á¶ážá¡ááœááºá conntrack ááẠááá·áºááááºááœá±á¡ááŒá ẠáááºáááºááŸááá±áá«áááºá
áá»áœááºá¯ááºááá¯á·áááá±á¬á·ááºááŸá á¡ááŒá¬ážáá±á¬ááºážáá«ážáá»á¬ážááá¯áááºáž áááºáá«-
Nginx á¡ááœáẠááŒá±á¬ááºážáá²áá±áá±á¬ áá±á¬áºáá»á°ážáá»á¬ážááᯠáááºáá±á¬ááºááŒááºážá Hashicorp áá±á¬ááºá á áºáááºá Kubernetes ááœáá·áºááŒá¯áá»ááºá¡á¬áž áááá«ááºáž Kubernetes ááœáẠáá±á¬áºááŒáá¬ážááá·áº á¡áááºááááºážáááºážááŸá¯áá»á¬áž ááœá²ááŒá¬ážáá±á¬ áááºááá±á¬áá»ááºáá»á¬ážá áœá¬ááᯠá¡áááºááááºážááŒááºážá Redmine á¡ááœáẠTelegram bot á áááºááá¯ááºááá¯ááºáá±á¬ á¡ááŒá¬ážáá°áá»á¬ážá¡ááœááºáá« ááááᯠááá¯ážááŸááºážá¡á±á¬áẠáááºááá¯áá¯ááºááá²á
source: www.habr.com