ááá±á·ááœááºá monolithic code á¡ááŒááºá áá»áœááºá¯ááºááá¯á·á ááá±á¬áá»ááºááœáẠmicroservices áá«áááºáá»á¬ážá áœá¬ áá«áááºáá«áááºá áááºážááá¯á· á¡áá®ážáá®ážááᯠá á±á¬áá·áºááŒáá·áºááẠááá¯á¡ááºáááºá DevOps á¡ááºáá»ááºáá®áá¬áá»á¬ážááᯠá¡áá¯á¶ážááŒá¯á ááá¯ááá¯á·áá±á¬á¡ááá¯ááºážá¡áá¬ááŒáá·áº áá¯ááºáá±á¬ááºááŒááºážááẠááŒá¿áá¬ááŸááá±áááºá áá»áœááºá¯ááºááá¯á·ááẠdeveloper áá»á¬ážá¡ááœáẠáááºáá±á¬ááºááŸá¯áá áºáá¯á¡ááŒá Ạáá¯ááºáá±á¬ááºááá¯ááºáá±á¬ á á±á¬áá·áºááŒáá·áºáá±ážá áá áºááᯠáá®ááœááºáá¬ážáá«áááºá áááºážááá¯á·ááẠá á±á¬áá·áºááŒáá·áºáá±ážá áá áºááœáẠáááºááá áºáá»á¬ážááᯠááœááºáááºá áœá¬áá±ážááá¯ááºá áááºážááá¯á·ááᯠá¡áá¯á¶ážááŒá¯ááá¯ááºááŒá®áž áááºážááá¯á·á¡áá±á«áº á¡ááŒá±áá¶á áááºááŸáºáá¯ááºáá»á¬áž áááºáá±á¬ááºáᬠá¡ááá¯ááºážá¡áá¬áááºááá¯ážáá»á¬áž áá±á¬ááºááŸáááá·áºá¡áá« á¡á áá»áá¯ážááá·áº ááááá±ážáá»ááºáá»á¬ážááᯠáááºážááá¯á·áᶠáá°ážááœá²áá±ážááá¯á·ááá¯ááºáááºá DevOps á¡ááºáá»ááºáá®áá¬áá»á¬ážá¡ááœááºá á¡ááŒá±áá¶á¡áá±á¬ááºá¡áŠááŸáá·áº á á¬ááœááºá á¬áááºážáá»á¬ážáá¬á
á€ááá¯á·á
áºááẠáá»áœááºá¯ááºááá¯á·á ááŸá¯ááºááááºáá±á¬áºááŸáá·áºá
ááºáá»ááºážáá±á¬ á
á¬áá¬ážááŒá
áºáá«áááºá
á¡ááááº- á¡á á®á¡á ááºáá»á¬ážááŸáá·áº á¡á á®á¡á ááºáá»á¬áž
áááºááŸá á á±á¬áá·áºááŒáá·áºáá±ážá áá áºááá¯á· áá»áœááºá¯ááºááá¯á· áááºááá¯á·áá±á¬ááºááŸááá²á·ááááºážá áá®áá±ážááœááºážááᯠááŒá±ááá¯á·á¡ááœáẠ2015 ááᯠááœá¬ážááááºá áááºážááẠááá¯á¡áá»áááºá áá¯á¶ááá¹áááºááŒá áºáááº-
áá»áœááºá¯ááºááá¯á·ááœáẠá
á±á¬áá·áºááŒáá·áºá
á
áºáá±ážááẠáá¬áááºááŸáááá·áº áá¯á¶ááŸáẠáá áá¯ááá·áºááŸááááºá áá
áºá
á¯á¶áá
áºáá¯ááᯠáá
áºáááºážáááºážáá²á· á
á±á¬áá·áºááŒáá·áºááŒááºážá áááºáá±á·áá»áºááá¯á·ááŒááºážááŸáá·áº áá¯ááºáá±á¬ááºáá»ááºáá»á¬ážááᯠáá¯ááºáá±á¬ááºáá±ážááá·áº ááá°áá®áá±á¬ áááá°áá»á¬ážá áá¬ááºááœáŸááºážáá»á¬ážá daemons á¡á
á¯á¶á¡áááºááŸááááºá áá»áœááºáá±á¬áºááá¯á· áá®áááºááá¯ááŒá®áž áá®á
áá
áºá á¡áá±á¬ááºáááºáá±á¬áºááá¯ááºááŸá¯ áááºážáá¬ááẠáááºáá«áááºá áááºážááᯠáá®ááœááºáá¬ááœáẠá¡áá±ážáááŒá®ážáá«á áááºážááẠáááºáá²ááœááºážáááºá
áá»áœááºá¯ááºááá¯á· ááááºážááááºážááŒá®áž ááœá¶á·ááŒáá¯ážááá¯ážáááºá
á±ááá·áº á
á±á¬áá·áºááŒáá·áºáá±áž á¡á
áááºá¡ááá¯ááºážáá»á¬ážááŸáá·áº áá»áœááºá¯ááºááá¯á· á
áœáá·áºááœáŸááºááá·áº á¡áá¬áá»á¬ážááᯠááœá±ážáá»ááºááẠáá¯á¶ážááŒááºáá²á·áááºá áááºážááá¯á·á¡ááẠáá áá¯ááŸááááºá ááááºááá¯ááºáá»á¬ážá á
á¯á
ááºážááŸá¯áá»á¬ážááŸáá·áº Grafana ááá¯ááºááœááºáá
áºáá¯áᬠáá»ááºááŸááá±á¬á·áááºá áá«áá±ááá·áº á
áá
áºáá
áºá áááºááá¯áá»áá¯áž ááŒá
áºáá¬ááá²á áá®ááá¯áá»áá¯áž:
áá»áœááºá¯ááºááá¯á·ááœáẠáááºááá
áºááá¯ááŸá±á¬ááºááŸá¯áá
áºáᯠááŸááááº- áááºážááá¯á·ááẠá¡ááŒáẠSSD áááá¯ááºáá»á¬ážáá±á«áºááœáẠá¡ááŒá±áá¶ááá·áº ááááºááá¯ááºáá»á¬ážááŒá
áºááŒá®áž áááºážááá¯á·ááẠáááºááá
áºáá»á¬ážá¡ááœáẠá¡áá»áá¯á·áá±á¬ á
á¯á
ááºážááŸá¯áá»á¬ážááŒá
áºáááºá áá±á¬ááºáá
áºáᯠ- ááááá±ážáá»ááºá¡ááœáẠáááºááŸáºáá¯ááºáá»á¬ážááŸáá·áº Moira ááá¯ááŒááááºá¡ááœáẠGrafanaá ááœá²ááœá²áá»ááºáá»á¬ážááᯠááŸá¬ááœá±ááŒááºážá
áá
áºááá¯áááºáž áá®ááœááºááá¯áá«áááºá
á á¶áááºááŸááºáá»ááº- á á±á¬áá·áºááŒáá·áºáá±á·áá¬ááŒááºáž 2.0
áá«á 2015 áá¯ááŸá áºáá²á· á¡á á®á¡á á¥áºá¡ááá¯ááºážáá«áá²á áá«áá±ááá·áº á¡ááŒá±áá¶á¡áá±á¬ááºá¡á¡á¯á¶áá²á· áááºáá±á¬ááºááŸá¯ááá¯ááºááá¯ááºáá¬áááá² á¡á²áá«á¡ááœáẠá á¬ááœááºá á¬áááºážááœá±ááá¯áááºáž ááŒááºáááºáááŸá¬áá±á«á·á áá»áœááºá¯ááºááá¯á·ááẠá á±á¬áá·áºááŒáá·áºááŒááºáž 2.0 áá¯áá±á«áºáá±á¬ áá»áœááºá¯ááºááá¯á·ááá¯ááºááá¯ááºá¡ááœáẠáá±á¬áºááá¯ááááºá á¶áá áºáá¯ááᯠáá®ááœááºáá¬ážáá«áááºá á áá áºá¡ááœáẠááá¯á¡ááºáá»ááºááœá±á áá¬ááœá±áá²á
- á¡áááºáááŒááºáááŸáááá¯ááºááŸá¯;
- áááºááá áºááá¯ááŸá±á¬ááºááŸá¯ááŒá¬ážáá¬á = 10 á áá¹ááá·áº;
- áááºááá áºáá»á¬ážááŸáá·áº áááºááŸáºáá¯ááºáá»á¬ážááᯠá áá áºááá» ááááºážáááºážááŒááºážá
- SLA > 99,99%
- UDP (!) ááŸáááá·áº ááŒá áºáááºáááºááá áºáá»á¬áž á á¯á ááºážááŸá¯á
áá»áœááºá¯ááºááá¯á·ááœáẠá¡ááœá¬ážá¡áá¬áá»á¬ážááŒá¬ážááŒá®áž áááºááá áºáá»á¬ážááᯠáá¯ááºáá±ážááá·áº ááŒá áºáááºáá»á¬ážá áœá¬ááŸááá±á¬ááŒá±á¬áá·áº UDP ááᯠââááá¯á¡ááºáá«áááºá áááºážááá¯á·á¡á¬ážáá¯á¶ážááᯠááááºááá¯ááºá¡ááŒá Ạáá áºááŒáá¯ááºááẠáá±ážááá¯ááºáá»áŸáẠááá¯ááŸá±á¬ááºááŸá¯ ááŒáá¯áá»áááºááŒá áºáááºá áááºááá áºá¡á¬ážáá¯á¶ážá¡ááœáẠáááá¡ááá·áº ááŸá±á·áááºáá»á¬ážááá¯áááºáž ááœá±ážáá»ááºáá«áááºá
ááŸá±á·áááºáá
áºáá¯á
á®ááœáẠááá¯ááºááá¯ááºááŸá¯á¡áá»áá¯á·ááŸááááºá áá¬áá¬áá»á¬ážá ááœááºáááºáá»á¬ážá ááœááºááááºáá¬áá»á¬ážá á¡áááºážá¡ááŒá
áºáá»á¬ážá á¡ááá®áá±ážááŸááºážáá»á¬ážááŸáá·áº á¡ááŒá¬ážá¡áá¬áá»á¬ážá¡ááœáẠáááºááá
áºáá»á¬áž ááŸááá«áááºá áá»áœááºá¯ááºááá¯á·ááẠáááá¡ááá·áº áááºááá
áºáá»á¬ážááᯠáááºáá¶áᬠáá»ááºá¡áá¬áá»á¬ážááᯠááá¯ážááá¯ážááŸááºážááŸááºáž áá»áá±ážááá·áº ááŸááºážááŸááºážáááºážáááºážá áááºážáá»ááºáá±á¬á á
á®á
á
áºááŒááºážááᯠá¡áá±á¬ááºá¡áááºáá±á¬áºáá²á·áááºá áá®á
áá
áºááᯠ2015 ááŸá¬ áá»áœááºáá±á¬áºááá¯á· á
á®á
ááºáá²á·áá¬á áá®ááá¯áá«á áá
á¹á
á¯áá¹áááºááŸá¬ áá¬ááŸááá²á
áá á¹á á¯áá¹áááº- á á±á¬áá·áºááŒáá·áºáá±áž á¡á áááºá¡ááá¯ááºážáá»á¬ážá á¡ááŒááºá¡ááŸááºáá¯á¶á·ááŒááºááŸá¯ áá¯á¶ááŒááºáž
ááááŠážá áœá¬á áá»áœááºá¯ááºááá¯á·ááẠáá»áœááºá¯ááºááá¯á·á PHP áá¯ááºá á¡ááá®áá±ážááŸááºážáá»á¬ážááŸáá·áº ááá¯ááºáááá¯áááºáá±á¬ááºááŸá¯áá»á¬áž- á¡ááá¯áá»á¯ááºá¡á¬ážááŒáá·áºá áá»áœááºá¯ááºááá¯á·á developer áá»á¬ážáá±ážááá»áŸááᯠá á±á¬áá·áºááŒáá·áºáá«áááºá á¡ááá®áá±ážááŸááºážáá»á¬ážá¡á¬ážáá¯á¶ážááẠUDP ááŸáá áºááá·áº áááºááá áºáá»á¬ážááᯠBrubeck á á¯á ááºážááŸá¯ (statsdá C ááŒáá·áº ááŒááºáááºáá±ážáá¬ážáááº) ááá¯á· áá±ážááá¯á·áááºá Synthetic Tests ááœáẠá¡áá»ááºááŒááºáá¯á¶ážááŒá áºáá²á·áááºá áááºážááẠTCP ááŸáááá·áº á á¯á ááºážááŒá®ážáá¬áž áááºááá áºáá»á¬ážááᯠGraphite ááá¯á· ááá¯á·áá±ážáááºá
áááºážááœáẠtimers áá¯áá±á«áºáá±á¬ ááá¯ááºážáá¬ááŸá¯á¡áá»áá¯ážá¡á á¬ážáá áºáá¯ááŸááááºá áá«á á¡áááºážá¡áááºááŒá±áá²á·á¡áá¬áá«á á¥ááá¬á¡á¬ážááŒáá·áºá áááºáá±á¬ááºááŸá¯ááŸáá·áºáá»áááºáááºá¡áá¯á¶ážááŒá¯áá°ááá¯ááºážá¡ááœááºá áááºááẠBrubeck ááá¯á· áá¯á¶á·ááŒááºááŸá¯á¡áá»áááºááŸáá·áºá¡áá° áááºááá áºáá áºáá¯ááᯠáá±ážááá¯á·áá«á áá¯á¶á·ááŒááºááŸá¯áá áºáááºáž áááºáá¬áá±á¬áºáááºáž á á¯á ááºážáá°ááẠáááºááá Ạáá áá¯ááá¯áᬠááŒááºáá±ážáá²á·áááºá ááá·áºááœááºáá¬áá±á¬ááºáá°á¡áá±á¡ááœááºá á¡áá»á¬ážáá¯á¶ážá á¡áááºážáá¯á¶ážááŸáá·áº áá»ááºážáá»áŸáá¯á¶á·ááŒááºáá»áááºá áá»ááºážáá»áŸááŸáá·áº 10 áá¬ááá¯ááºááŸá¯ááºážáá»á¬ážááŸááááºá ááá¯á·áá±á¬áẠáá±áá¬ááᯠGraphite ááá¯á· ááœáŸá²ááŒá±á¬ááºážááŒá®áž á¡á¬ážáá¯á¶ážááᯠááá¯ááºááá¯ááºááŒááºááááºá
áá»áœááºá¯ááºááá¯á·ááœáẠáá¬á·ááºáá²á áá±á¬á·ááºáá²ááºá á áá áºáááºááá áºáá»á¬ážááŸáá·áº áá»áœááºá¯ááºááá¯á·á Munin á á±á¬áá·áºááŒáá·áºáá±ážá áá áºáá±á¬ááºáž (áááºážááẠ2015 áá¯ááŸá áºá¡áá áá»áœááºá¯ááºááá¯á·á¡ááœáẠá¡áá¯ááºáá¯ááºáááº) ááá¯ááºáᬠáááºááá áºáá»á¬ážá¡ááœáẠá á¯á ááºážááŸá¯áááºážááŸááááºá áá»áœááºá¯ááºááá¯á·ááẠá€á¡áá¬á¡á¬ážáá¯á¶ážááᯠC daemon CollectD ááŸáááá·áºá á¯áá±á¬ááºážáá«ááẠ(áááºážááœááºáááºáá±á¬ááºáá¬ážáá±á¬ááá°áá®áá±á¬ááááºá¡ááºáá»á¬ážá¡ááŒá±á¬ááºá¡áá»á¬ážáá«ááŸááááºá áááºážááœááºááá·áºááœááºážáá¬ážááá·áº host system áá¡áááºážá¡ááŒá áºá¡á¬ážáá¯á¶ážááá¯á á áºáááºážáá±á¬ááºáá°ááá¯ááºáááºá áá±áá¬ááá¯áá±ážáááá·áºáá±áá¬ááœáẠconfiguration ááœááºáááºááŸááºáá¯á¶) ááŸáá·áº data ááœá±ááᯠGraphite ááŸá¬áá±ážáá«á áááºážááẠpython ááááºá¡ááºáá»á¬ážááŸáá·áº shell scripts áá»á¬ážááá¯áááºáž áá¶á·ááá¯ážáá±ážáááºá ááá¯á·ááŒá±á¬áá·áº áááºááẠáááºáááá¯ááºááá¯áẠá áááºááŒáá¯ááºááŒá±ááŸááºážáá»ááºáá»á¬ážááᯠáá±ážáá¬ážááá¯ááºáááº- CollectD ááẠá€áá±áá¬ááᯠáá±ááᶠááá¯á·ááá¯áẠá¡áá±ážááááºážáá¬á (Curl áᯠáá°ááááº) á០á á¯áá±á¬ááºážááŒá®áž Graphite ááá¯á· áá±ážááá¯á·áááºááŒá áºáááºá
ááá¯á·áá±á¬áẠáá»áœááºá¯ááºááá¯á·á á¯áá±á¬ááºážáá¬ážáá±á¬ áááºááá áºá¡á¬ážáá¯á¶ážááᯠCarbon-c-relay ááá¯á· áá±ážááá¯á·áá«á áááºážááẠC ááœááºááŒá¯ááŒááºáá¬ážáá±á¬ Graphite á០Carbon Relay ááŒá±ááŸááºážáá»ááºááŒá áºáááºá áááºážááẠáá»áœááºá¯ááºááá¯á·áá á¯á ááºážáá°áá»á¬ážáá¶ááŸáá±ážááá¯á·ááá·áºáááºááá áºá¡á¬ážáá¯á¶ážááá¯á á¯áá±á¬ááºážááŒá®áž áááºážááá¯á·ááᯠnode ááá¯á·áááºážááŒá±á¬ááºážáá±ážááá·áºáá±á¬ááºáá¬áá áºáá¯ááŒá áºáááºá áááºážááŒá±á¬ááºážááŒááá·áºá¡ááá·áºááœááºáááºáž áááºážááẠáááºááá áºáá»á¬ážáááá¬ážáááºááŸá¯ááᯠá á áºáá±ážáááºá ááááŠážá áœá¬á áááºážááá¯á·ááẠá¡á á±á¬ááá¯ááºážááœáẠáá»áœááºá¯ááºááŒááá²á·ááá·áº ááŸá±á·áááºá¡á á®á¡á ááºááŸáá·áº ááá¯ááºáá®áááẠááŒá áºááŒá®ážá áá¯áááá¡áá»ááºááŸá¬ áááºážááá¯á·ááẠááááºááá¯ááºá¡ááœáẠá¡áá»á¯á¶ážáááºáá«áááºá ááá¯ááºááẠááŒá¯ááºáá»áááá·áºáááºá
ááá¯á·áá±á¬áẠCarbon-c-relay ááẠáááºááá áºáá»á¬ážááᯠGraphite á¡á á¯á¡áá±ážááá¯á· áá±ážááá¯á·áááºá áá»áœááºá¯ááºááá¯á·ááẠáááºááá áºáá»á¬ážá á¡áááááá¯ááŸá±á¬ááºááŸá¯á¡ááŒá ẠGo ááœáẠááŒááºáááºáá±ážáá¬ážáá¬ážáá±á¬ Carbon-cache ááᯠá¡áá¯á¶ážááŒá¯áá«áááºá áááºážá multithreading ááŒá±á¬áá·áº Go-carbon ááẠCarbon-cache ááẠáá»á¬ážá áœá¬áá¬ááœááºáááºá áááºážááẠáá±áá¬ááᯠáááºáá¶áááŸáááŒá®áž ááááºááááẠáááºáá±á·áá»áº (á á¶á python ááŒáá·áº áá±ážáá¬ážáá¬ážáááº) ááᯠá¡áá¯á¶ážááŒá¯á disks áá»á¬ážááá¯á· áá±ážáá±ážáááºá áá»áœááºá¯ááºááá¯á·á ááá¯ááŸá±á¬ááºááŸá¯á០áá±áá¬áá»á¬ážááᯠáááºáááºá¡ááœáẠáá»áœááºá¯ááºááá¯á·ááẠGraphite API ááᯠá¡áá¯á¶ážááŒá¯áá«áááºá áááºážááẠstandard Graphite WEB ááẠáá»á¬ážá áœá¬ááá¯ááŒááºáááºá áá±á¬ááºáá áºáá¯á Data á áá¬ááŒá áºááá²á
áá°ááá¯á·á Grafana ááá¯ááœá¬ážááŒáááºá áá»áœááºá¯ááºááá¯á·ááẠáá»áœááºá¯ááºááá¯á·á ááááºááá¯ááºá¡á á¯á¡áá±ážáá»á¬ážááᯠáá±áá¬áá¡áááá¡áááºážá¡ááŒá áºá¡ááŒá áºá¡áá¯á¶ážááŒá¯áááºá ááá¯á·á¡ááŒáẠáááºááá áºáá»á¬ážááá¯ááŒááááºááŸáá·áº áááºááŸáºáá¯ááºáá»á¬ážáááºáá±á¬ááºáááºá¡ááœáẠáááºá¡ááºáá¬áá±á·á áºáá áºáá¯á¡ááŒá ẠGrafana ááŸááááºá áááºážááá¯á·ááááºáá±á¬ááºááŸá¯áá áºáá¯á á®á¡ááœááºá developer áá»á¬ážááẠáááºážááá¯á·áááá¯ááºááá¯áẠdashboard ááá¯áááºáá®ážáááºá ááá¯á·áá±á¬áẠáááºážááá¯á·ááẠáááºážááá¯á·á á¡ááá®áá±ážááŸááºážáá»á¬ážá០áá±ážáá¬ážáá±á¬ áááºááá áºáá»á¬ážááᯠááŒáááá·áº áááºážááá¯á·á¡áá±á«áº á¡ááŒá±áá¶á ááááºáá áºáá»á¬áž áááºáá®ážáááºá Grafana á¡ááŒááºá áá»áœááºá¯ááºááá¯á·ááœáẠSLAM áááºážááŸááááºá áááºážááẠááááºááá¯ááºááŸáá±áá¬ááá¯á¡ááŒá±áá¶á SLA ááá¯ááœááºáá»ááºáá±á¬á áá«ážá¡á¯á¶ážáááºááá¯ážááŒá áºáááºá áá»áœááºáá±á¬áºááŒá±á¬áá²á·áááá¯áá²á áá»áœááºáá±á¬áºááá¯á·ááŸá¬ áá«áááºáá²á·áá»á®áá²á· microservice ááœá±ááŸááááºá áá áºáá¯áá»ááºážá á®ááŸá¬ áá°á·ááá¯á¡ááºáá»ááºááœá±ááŸááááºá SLAM ááᯠá¡áá¯á¶ážááŒá¯á áá»áœááºá¯ááºááá¯á·ááẠá á¬ááœááºá á¬áááºážáá»á¬ážááᯠááœá¬ážááŒá®áž Graphite ááœáẠáá«ááŸáááá·áºá¡áá¬ááŸáá·áº ááŸáá¯ááºážááŸááºáᬠááá¯á¡ááºáá»ááºáá»á¬ážááẠáá»áœááºá¯ááºááá¯á·ááááºáá±á¬ááºááŸá¯áá»á¬ážáááŸáááá¯ááºááŸá¯ááŸáá·áº áááºáá»áŸááá¯ááºáá®ááŒá±á¬ááºáž ááŸáá¯ááºážááŸááºáá«á
áá±á¬ááºááẠááœá¬ážááŒáá¡á±á¬ááº- ááááá±ážáá»ááºá ááá¯ááºáá¬áá±á¬á áá Ạ- Moira ááᯠá¡áá¯á¶ážááŒá¯á ááœá²á·á ááºážáá¬ážáááºá áá°á·ááœáẠááá¯ááºááá¯áẠGraphite áá«ááŸááá±á¬ááŒá±á¬áá·áº áá®ážááŒá¬ážááŒá áºáááºá Python ááŸáá·áº Go ááŒáá·áºáá±ážáá¬ážáá¬ážáá±á¬ SKB "Kontur" á០áá±á¬ááºá»á¬ážáá±ážáá»á¬ážá áá®ááœááºáááºáá®ážáá¬ážááŒááºážááŒá áºááŒá®áž áá¯á¶ážáááœáá·áºáááºážáá±á¬á¡áááºážá¡ááŒá áºááŒá áºáááºá Moira ááẠááááºááá¯ááºááá¯á· á á®ážáááºážááœá¬ážááá·áº áá°áá®áá±á¬ á á®ážáááºážááŸá¯ááᯠáááºáá¶áááŸáááẠá á¡ááŒá±á¬ááºážáá áºáá¯áá¯ááŒá±á¬áá·áº áááºáááá¯ááŸá±á¬ááºááŸá¯áá±ááœá¬ážáá«áá ááá·áºááááá±ážáá»ááºááẠá¡áá¯ááºááŒá áºáá²ááŒá áºáááºá
áá»áœááºá¯ááºááá¯á· Moira ááᯠKubernetes ááœáẠááŒáá·áºáá»ááºáá¬ážááŒá®ážá áááºážááẠáááºááá±áá¬áá±á·á áºá¡ááŒá ẠRedis áá¬áá¬á¡á á¯á¡áá±ážááᯠá¡áá¯á¶ážááŒá¯áááºá ááááºááŸá¬ á¡ááŸá¬ážá¡ááœááºážáá¶ááá¯ááºáá±á¬ á áá áºáá áºáá¯ááŒá áºáááºá áááºážááẠáááºááá áºáá»á¬ážáá á®ážááŒá±á¬ááºážááᯠá¡á áá»áá¯ážááŸá¯áá»á¬ážá á¬áááºážááŸáá·áº ááŸáá¯ááºážááŸááºáááº- áááºážááœááºáá±á¬áºááŒáá¬ážááŒááºážáááŸááá«áá áááºážááẠáááºááá áºááᯠáá»áááºážá á±áááºá ááá¯á·ááŒá±á¬áá·áº áá áºáááá áºáá»áŸáẠáá áºáá«ááá¯ááºáááºááá áºáá»á¬ážááᯠáá»á±áá»ááºááá¯ááºáááºá
áá±á¬áºááá¯ááááºá áá áºáá¡áá¯á¶ážááŒá¯áá°ááá¯ááºážááẠááŸáááŒá®ážáá¬áž (ááá¯á·ááá¯áẠá¡áá áºáááºáá®ážáá¬ážáá±á¬) á¡á áá»áá¯ážááŸá¯áá»á¬ážá¡áá±á«áºá¡ááŒá±áá¶á áááºážááá¯á·á¡ááœáẠá¡ááŒá±á¬ááºážááŒá¬ážáá»ááºáá»á¬ážááᯠáááºáá®ážááá¯ááºááá·áºá¡áá°á¡áá®ááŒáá·áº áá±á¬áºááá¯áááẠLDAP áá áºáá¯ááá¯áááºáž áá°ážááœá²áá¬ážáá«áááºá Moira ááœáẠGraphite áá«áááºáá±á¬ááŒá±á¬áá·áº áááºážááẠáááºážáá¡ááºá¹áá«áááºá¡á¬ážáá¯á¶ážááᯠáá¶á·ááá¯ážáá±ážáááºá ááá¯á·ááŒá±á¬áá·áº áááºááẠááááá¯á¶ážááá¯ááºážááá¯áá°ááŒá®áž Grafana ááá¯á·áá°ážáá°áá«á ááááºáá»á¬ážáá±á«áºááœáẠáá±áá¬ááᯠáááºááá¯á·ááŒááááºááᯠááŒáá·áºáá«á ááŒá®ážáá»áŸáẠáá°áá®áá±á¬ááá¯ááºážááá¯áá°á Moira ááá¯á·áá°ážáá°áá«á áááºááẠáááºážááᯠááá·áºáááºáá»ááºáá»á¬ážááŒáá·áº ááœá²áá¬ážááŒá®áž á¡ááœááºááœáẠááááá±ážáá»ááºáá áºáᯠááá°áá«á áá«ááœá±á¡á¬ážáá¯á¶ážáá¯ááºááá¯á·á áááá»áá²á·á¡ááááᬠáááá¯á¡ááºáá«áá°ážá Moira ááẠSMSá á¡á®ážáá±ážááºá Jiraá Slack ááŸáá áºááá·áº ááááá±ážááá¯ááºáááº... áááºážááẠá áááºááŒáá¯áẠscripts áá»á¬ážááᯠáá¯ááºáá±á¬ááºááŒááºážááᯠáá¶á·ááá¯ážáá±ážáá«áááºá á¡á áá»áá¯ážááŸá¯áá áºáᯠááŒá áºáá±á«áºááŒá®áž á áááºááŒáá¯áẠscript ááá¯á·ááá¯áẠbinary áá áºáá¯ááá¯á· á á¬áááºážááœááºážáá¬ážááá·áºá¡áá« áááºážááᯠrun ááŒá®áž ဠbinary á¡ááœáẠstdin ááá¯á· JSON ááᯠáá±ážááá¯á·áááºá ááá¯á·ááŒá±á¬áá·áº ááá·áºáááá¯ááááºááẠáááºážááᯠááœá²ááŒááºážá áááºááŒá¬ááá«áááºá ဠJSON ááŸáá·áº áááºáá¯ááºáá±á¬ááºááá·áºá¡áá¬ááẠááá·áºá¡ááœááºááŒá áºáááºá ááá¯áá»ááºááẠTelegram ááᯠááá¯á·áá«á ááá¯áá»ááºááẠJira ááŸá¬ á¡áá¯ááºááœá±ááᯠááœáá·áºáá«á áá¬áá²áá¯ááºáá¯áẠáá¯ááºáá«á
ááááá±ážáá»ááºá¡ááœáẠáá»áœááºá¯ááºááá¯á·áááá¯ááºááá¯ááºááœá¶á·ááŒáá¯ážááá¯ážáááºááŸá¯ááá¯áááºáž á¡áá¯á¶ážááŒá¯ááẠ- Imagotagá áá»áœááºá¯ááºááá¯á·áááá¯á¡ááºáá»ááºáá»á¬ážááŸáá·áºááá¯ááºáá®á á±ááẠá ááá¯ážááá¯ááºáá»á¬ážááœáẠá¡á®áááºáááœááºážáá áºá á»á±ážááŸá¯ááºážáááºááºáá»á¬ážá¡ááœáẠá¡áá»á¬ážá¡á¬ážááŒáá·áºá¡áá¯á¶ážááŒá¯ááá·áº panel ááᯠáá»áœááºá¯ááºááá¯á· ááŒá¯ááŒááºááŒá±á¬ááºážáá²áá¬ážáá«áááºá Moira á០á¡á áá»áá¯ážáá»ááºáá»á¬ážááᯠáá»áœááºá¯ááºááá¯á· áá°áá±á¬ááºáá¬áá²á·áá«áááºá áááºážááá¯á·ááẠáááºááá·áºá¡ááŒá±á¡áá±ááŸáá·áº ááŒá áºááœá¬ážáá²á·ááŒá±á¬ááºážááᯠáá±á¬áºááŒáááºá ááœá¶á·ááŒáá¯ážááá¯ážáááºááŸá¯ áá±á¬ááºá»á¬ážáá±ážá¡áá»áá¯á·ááẠá€á¡ááá·áºááá»ááºááŸá¬áá¬ááŒáá·áº Slack ááœáẠá¡ááŒá±á¬ááºážááŒá¬ážáá»ááºáá»á¬ážááᯠá áœáá·áºáá áºáá²á·áááºá
áá±á¬ááºážááŒá®á áá»áœááºá¯ááºááá¯á·ááẠááá¯ážáááºáá±á¬ áá¯áá¹ááá®ááŒá
áºáá±á¬ááŒá±á¬áá·áºá áá»áœááºá¯ááºááá¯á·ááẠá€á
áá
áºááœáẠKubernetes ááᯠá
á±á¬áá·áºááŒáá·áºáá²á·áááºá á¡á
á¯á¡áá±ážááœáẠááá·áºááœááºážáá¬ážááá·áº Heapster ááᯠá¡áá¯á¶ážááŒá¯á áááºážááᯠáá±áá¬á
á¯áá±á¬ááºážááŒá®áž Graphite ááá¯á· áá±ážááá¯á·áá«áááºá ááááºá¡áá±ááŒáá·áº áá¯á¶ááŒááºážááẠá€áá²á·ááá¯á·ááŒá
áºáááº-
á á±á¬áá·áºááŒáá·áºáá±áž á¡á áááºá¡ááá¯ááºážáá»á¬áž
á€á¡áá¯ááºá¡ááœáẠáá»áœááºá¯ááºááá¯á·á¡áá¯á¶ážááŒá¯áá²á·ááá·áº á¡á áááºá¡ááá¯ááºážáá»á¬ážááá¯á· ááá·áºááºáá»á¬ážá á¬áááºážáá áºáá¯ááŒá áºáááºá áááºážááá¯á·á¡á¬ážáá¯á¶ážááẠopen source áá»á¬ážááŒá áºáááºá
ááá¯ááºá
- ááœá¬áž-áá¬ááœááº-
github.com/lomik/go-carbon - ááááºááááº
github.com/graphite-project/whisper - ááááºááá¯ááº-á¡á±áá®
github.com/brutasse/graphite-api
áá¬ááœááº-á-áááºááá·áº-
Brubeck-
á á¯áá±á¬ááºážáá¬ážáááº-
Moira
Grafana-
á¡ááŸáá¯ááºáá¯á¶-
á á¬áááºážá¡ááºáž
á€áááºááŸá¬ áá»áœááºá¯ááºááá¯á·á¡ááœáẠá áá áºá¡áá¯ááºáá¯ááºáá¯á¶ááŸáá·áºáááºáááºáá±á¬ áá¶áá«ááºá¡áá»áá¯á·ááŒá áºáááºá
á á¯á ááºážááŸá¯ (ááá°áááºááº)
ááá¯ááºážáá¬ááŸá¯á¡áá±á¡ááœááº- ~300/sec
Graphite ááá¯á· áááºááá
áºáá»á¬áž áá±ážááá¯á·ááŒááºážá¡ááœáẠááŒá¬ážáá¬á- 30 á
áá¹ááá·áº
áá¬áá¬á¡áááºážá¡ááŒá
áºá¡áá¯á¶ážááŒá¯ááŸá¯- ~ 6% CPU (áá»áœááºá¯ááºááá¯á·áááºááŒáá·áºá
á¯á¶áá±á¬áá¬áá¬áá»á¬ážá¡ááŒá±á¬ááºážááŒá±á¬áá±áááº); ~ 1Gb RAM; ~3 Mbps LAN
ááááºááá¯áẠ(áá¬ááœááº)
áááºááá
áºá¡áá±á¡ááœááº- ~ 1 / áááá
áº
áááºááá
áºáá»á¬áž á¡ááºááááºááŒá¬ážáá¬á- 30 á
áá¹ááá·áº
áááºááá
Ạááá¯ááŸá±á¬ááºááŸá¯ á¡á
á®á¡á
ááº- 30sec 35dá 5min 90dá 10min 365d (á¡áá»áááºááŒá¬ááŒáá·áºá
áœá¬ áááºáá±á¬ááºááŸá¯ááœáẠááŒá
áºáá»ááºáá±áááºááᯠááá·áºá¡á¬áž áá¬ážáááºááŸá¯áá±ážáááº)
áá¬áá¬á¡áááºážá¡ááŒá
áºá¡áá¯á¶ážááŒá¯ááŸá¯- ~10% CPU; ~ 20Gb RAM; ~30 Mbps LAN
ááŒá±á¬ááºážááœááºááŒááºááœááº
áá»áœááºá¯ááºááá¯á·ááẠáá»áœááºá¯ááºááá¯á·á á á±á¬áá·áºááŒáá·áºáá±ážáááºáá±á¬ááºááŸá¯ááœáẠááá¯ááºáá»á±á¬áá®ááœá±ááŸáááŸá¯ááᯠá¡ááŸááºááááºáááºááá¯ážáá¬ážáá«áááºá áá°áá¬ááŒá±á¬áá·áº áá®ááá¯áá»áá¯áž ááááºááŒá áºáá¬áá¬áá²á ááááŠážá áœá¬á áááºážá á¡á áááºá¡ááá¯ááºážáá»á¬ážááẠá¡ááŒááºá¡ááŸáẠáááŸááºááá¯ááºáááº- á¡á áááºá¡ááá¯ááºážáá»á¬áž ááá¯ááºááá¯ááºááŸáá·áº áááºážááá¯á·á áá¬ážááŸááºážáá»á¬áž ááŸá áºáá»áá¯ážáá¯á¶ážá áá¯áááá¡áá±áá²á·á áá¶á·ááá¯ážááŸá¯á ááá±á¬áá»ááºáá áºáá¯áá¯á¶ážááẠopen source ááŒá áºáá±á¬ááŒá±á¬áá·áºá áááºááẠáá¯ááºááᯠáááºááá¯ááºááá¯ááºáááºážááŒááºááá¯ááºáááºá á¡ááŒá±á¬ááºážá¡áá²áá»á¬ážááŒá¯áá¯ááºáᬠááœááºáááºá¡ááŒááºááœáẠááááŸáááá¯ááºáá±á¬áá¯ááºáá±á¬ááºáá»ááºáá»á¬ážááᯠá¡áá±á¬ááºá¡áááºáá±á«áºááá¯ááºáá«áááºá á¡áá¯á¶ážáá»á¬ážáá±á¬ stacks áá»á¬ážááᯠá¡áááá¡á¬ážááŒáá·áº Go ááŸáá·áº Python ááá¯á·ááᯠá¡áá¯á¶ážááŒá¯áá¬ážáá±á¬ááŒá±á¬áá·áº áááºážááᯠááá¯ážááá¯ážááŸááºážááŸááºáž áá¯ááºáá±á¬ááºáááºá
áá«á áááá·áºááŒá¿áá¬áá²á· á¥ááá¬áá áºáá¯áá«á Graphite ááŸá áááºááá áºááẠááá¯ááºáá áºáá¯ááŒá áºáááºá áá¬áááºáá áºáá¯ááŸááááºá ááá¯ááºá¡ááẠ= áááºááá áºá¡áááºá ááŒá®ážáá±á¬á· á¡á²áá®ááá¯áá±á¬ááºááá¯á· áááºážáááºážááŸááááºá Linux ááŸá ááá¯ááºá¡áááºáá»á¬ážááᯠá á¬áá¯á¶áž 255 áá¯á¶ážáᬠááá·áºáááºáá¬ážáá«áááºá ááŒá®ážáá±á¬á· áá»áœááºáá±á¬áºááá¯á·ááŸá¬ (âááŒááºááœááºážáá±á¬ááºáááºáá»á¬ážâ á¡ááŒá áº) áá±áá¬áá±á·á áºáá¬áá áá±á¬ááºá»á¬ážáá±ážááœá±ááŸááááºá áá°ááá¯á·á "áá»áœááºá¯ááºááá¯á·áááºáá»áœááºá¯ááºááá¯á·á SQL áá±ážááŒááºážááŸá¯áá»á¬ážááá¯á á±á¬áá·áºááŒáá·áºááá¯áá«áááºá áááºážááá¯á·ááẠá á¬áá¯á¶áž 255 áá¯á¶ážááá¯ááºáá±á¬áºáááºáž áá áºáá¯á á®ááœáẠ8 MB ááŸááááºá áá»áœááºá¯ááºááá¯á·ááẠáááºážááá¯á·ááᯠGrafana ááœááºááŒáááá¯áááºá á€áá±á¬ááºážááá¯áá»ááºá¡ááœáẠááá·áºáááºáá»ááºáá»á¬ážááá¯ááŒáá·áºáá«á ááá¯áá±á¬ááºážáááºááŸá¬á ááá¯ááá¯á·áá±á¬áá±á¬ááºážááá¯ááŸá¯áá»á¬ážáááááºááá¯ááºážááᯠááŒááºááœá±á·ááá¯áá«áááºá á¡áá»áááºááŸáá·áºáááŒá±ážáá®ááŒááááºááá¯áá«á á¡ááœááºáá±á¬ááºážááœááºáá«áááºá áá°ááá¯á·ááá¯ááááá±ážáá»ááºáá²ááá·áºááá¯ááºáá¬á ááááºááá¯ááá¯ááºáá«áááºáâ
á¥ááᬠSQL query ááᯠááá°áá¬á¡ááŒá
Ạáá°áááºá
áá»áœááºá¯ááºááá¯á·ááẠRedis áá¬áá¬ááᯠáááºáá±á¬ááºááŒá®áž Postgres ááá¯á·ááœá¬ážáᬠáá±áá¬á¡á¬ážáá¯á¶ážááᯠáá°áᬠGraphite ááá¯á· áááºááá áºáá»á¬ážáá±ážááá¯á·ááá·áº áá»áœááºá¯ááºááá¯á·áá á¯áá±á¬ááºážáá¬ážáá±á¬ ááááºá¡ááºáá»á¬ážááᯠá¡áá¯á¶ážááŒá¯áá«áááºá ááá¯á·áá±á¬áº áá»áœááºá¯ááºááá¯á·ááẠáááºááá áºá¡áááºááᯠáááºáá¬áá»á¬ážááŒáá·áº á¡á á¬ážááá¯ážáááºá áá»áœááºá¯ááºááá¯á·ááẠáá°áá®áá±á¬ hash ááᯠáá±á¬á·áá áºáá¯á¡ááŒá ẠRedis ááá¯á· áá áºááŒáá¯ááºááẠáá±ážááá¯á·ááŒá®áž SQL Query áá áºáá¯áá¯á¶ážááᯠáááºááá¯ážáá áºáá¯á¡ááŒá Ạáá±ážááá¯á·áá«áááºá áá»áœááºá¯ááºááá¯á·áá¯ááºáááá·áºá¡áá¬ááŸá¬ Grafana ááẠRedis ááá¯á·ááœá¬ážá á€á¡áá»ááºá¡áááºááá¯áá°ááá¯ááºá á±ááẠáá±áá»á¬á¡á±á¬ááºáá¯ááºáá«á áá»áœááºá¯ááºááá¯á·ááẠGraphite API ááá¯ááœáá·áºáá±áá±á¬ááŒá±á¬áá·áº... áááºážááẠááááºááá¯ááºááŒáá·áº á á±á¬áá·áºááŒáá·áºá á áºáá±ážááá·áº á¡á áááºá¡ááá¯ááºážá¡á¬ážáá¯á¶ážá á¡ááŒááºá¡ááŸááºáááºáá¶áá±ážá¡ááœáẠáááºáá¡ááºáá¬áá±á·á áºááŒá áºááŒá®ážá áá»áœááºá¯ááºááá¯á·ááẠááá¯áá±áá¬ááœáẠaliasByHash() áá¯áá±á«áºáá±á¬ áá¯ááºáá±á¬ááºáá»ááºá¡áá áºáá áºáá¯ááᯠááá·áºááœááºážáá« - Grafana á០áá»áœááºá¯ááºááá¯á·ááẠáááºááá áºáá¡áááºááá¯áááŸááᬠRedis ááᯠáá±á¬á·áá áºáá¯á¡ááŒá Ạáá±á¬ááºážááá¯ááŸá¯ááœáẠáááºážááá¯á¡áá¯á¶ážááŒá¯áá¬á áá»áœááºá¯ááºááá¯á·ááẠáá»áœááºá¯ááºááá¯á·á âSQL queryâ ááŒá áºááá·áº áá±á¬á·ááááºááá¯ážááᯠáá»áœááºá¯ááºááá¯á· áááŸááá«áááºá ááá¯á·ááŒá±á¬áá·áºá áá»áœááºá¯ááºááá¯á·ááẠGrafana ááœáẠááááºážááááºážáá»á¬áž (áá±á«áºááá¯ááŸá¯áá»á¬ážá á¡áááºážáá»á¬ážá á á¯á á¯áá±á«ááºáž_á¡áá»áááºá ...) ááá¯á·ááŸáá·áºá¡áá° ááá¯áá±áá¬ááœáẠááŒáááẠáááŒá áºááá¯ááºáá±á¬ áá®á¡áá¯áá®á¡á SQL query áá áºáá¯á¡á¬áž ááŒááá¬ážáááºá
ááááºáá»á¬ážááá¯
áááŸáááá¯ááºá áá»áœááºá¯ááºááá¯á·áá á±á¬áá·áºááŒáá·áºáá±ážáááºáá±á¬ááºááŸá¯ááẠáááºááá·áºá¡ááºááºááŸáá·áºáááᯠáá¯ááºá០24/7 áááŸáááá¯ááºáá«áááºá ááá·áºááœáẠááá¯ááŸá±á¬ááºáááºážáá±áá¬áá»á¬ážááá¯á· áááºáá±á¬ááºááœáá·áºááŸááá«á áááºáá±á¬ááºááŸá¯ááá¯á· áá±áá¬áá»á¬áž áá±ážáá¬ážááá¯ááºáá«áááºá áá¬áá¬á áá¬ážá á¡áá±ážáááŒá®ážáá°ážá áá¯á¶ážááŒááºáá»ááºááœá±á á¡áá±ážáááŒá®ážáá°ážá socket ááá¯ááœáá·áºáááºážá áááºááá áºáá áºáá¯ááá·áºáᬠsocket ááá¯ááááºáááºážááá¯áááºáááááºááá¯á¡ááºáááºá
áá¯á¶ááŒááºá áááºáá»áá á¡á áááºá¡ááá¯ááºážá¡á¬ážáá¯á¶ážááẠá¡ááŸá¬ážá¡ááœááºážáá¶ááá¯ááºáááºááŸáááŒá®áž áá»áœááºá¯ááºááá¯á·ááááºáá»á¬ážááᯠáá±á¬ááºážááœááºá áœá¬ááá¯ááºááœááºááá¯ááºáááºá
áááºáá±á¬ááºááẠá¡áá¬ážá¡áá®ážáááºážáá«ážáááºá á€á áá áºááá¯á¡áá¯á¶ážááŒá¯áááºá¡ááœááºá áááºááẠGrafana ááœáẠáááá¯ááááºážáááºážáá¬áá¬á áá¬ážáá»á¬ážááŸáá·áº áá±ážááŒááºážáá»ááºáá»á¬ážááᯠáááºáá°áááºáááá¯á¡ááºáá«á áááºá á¡ááºááºáá®áá±ážááŸááºážááá¯ááœáá·áºáá«á Graphite ááá¯á· áááºááá áºáá»á¬ážáá±ážááá¯á·ááá·áº áá±á«ááºáá±á«ááºáá áºáá¯ááá·áºáá«á áááºážááá¯ááááºáá«á Grafana ááá¯ááœáá·áºáá«á ááá¯áá±áá¬ááœáẠáááºááŸáºáá¯ááºáá»á¬ážáááºáá®ážáᬠááá·áºáááºááá áºáá»á¬ážáá¡ááŒá¯á¡áá°ááá¯ááŒáá·áºáᬠMoira ááŸáá áºááá·áº á¡ááŒá±á¬ááºážááŒá¬ážáá»ááºáá»á¬ážááᯠáááºáá¶áááŸááááºááŒá áºáááºá
ááœááºáááºáá±ážááááºá DevOps á¡ááºáá»ááºáá®áá¬áá»á¬ážáá¡áá°á¡áá®ááá«áá² áááºááá¯ááºááá¯ááºáá¯ááºáá±á¬ááºááá¯ááºáá«áááºá áááºážááẠááá·áºááá±á¬áá»ááºááᯠááá¯ááẠá á±á¬áá·áºááŒáá·áºááá¯ááºáá±á¬ááŒá±á¬áá·áºá á¡áá¯ááºá ááẠááá¯á·ááá¯áẠá¡ááŒá±á¬ááºážá¡áá²áá»á¬ážááŒá¯áá¯ááºááẠáááºáá°á·ááá¯áá»áŸ áá±ážááŒááºážááẠáááá¯á¡ááºáá«á
áá«ááá¯á· áá¬ááᯠáááºááœááºáá¬áá²á
á¡á±á¬ááºááœááºáá±á¬áºááŒáá¬ážáá±á¬á¡áá¬á¡á¬ážáá¯á¶ážááẠá áááºáá°ážáááºá¡ááœá±ážáá»á¬ážáá¬ááá¯ááºá á¡áááºážáá¯á¶ážáááááŒá±ááŸááºážáá»á¬ážáá¯ááºáá±á¬ááºáá²á·áá±á¬á¡áá¬áá áºáá¯ááŒá áºáááºá
- ááœá²ááœá²áá±áá±á¬ áá±á¬ááºááŸááºážáááááá¬á áá»áœááºá¯ááºááá¯á·ááẠáá»áœááºá¯ááºááá¯á·á Graphite ááá¯ááŸá±á¬ááºáááºážáá»á¬ážááá¯á·ááœá¬ážááŒá®áž á¡áá»áá¯ážáá»áá¯ážáá±á¬ algorithms ááá¯á¡áá¯á¶ážááŒá¯á áááºááá áºáá áºáá¯á á®ááᯠá á áºáá±ážáá±ážááá·áº áááºáá±á¬ááºááŸá¯áá áºáá¯ááᯠáááºáá®ážááá¯áá«áááºá áá»áœááºá¯ááºááá¯á·ááŒáá·áºááŸá¯ááá¯áá±á¬ algorithms áá»á¬ážááŸáááŒá®ážá áá±áá¬ááŸááá«áááºá áááºážááŸáá·áºáááºááá¯á·á¡áá¯ááºáá¯ááºááááºááá¯áá»áœááºá¯ááºááá¯á·áááá«áááºá
- áááºáá¬áá±áá¬á áá»áœááºá¯ááºááá¯á·ááœáẠáááºáá±á¬ááºááŸá¯áá»á¬ážá áœá¬ááŸááá«áááºá áááºážááá¯á·ááŸáá·áºá¡áá¯ááºáá¯ááºáá±á¬áá°áá»á¬ážáá²á·ááá¯á· á¡áá»áááºááŸáá·áºá¡áá»áŸ ááŒá±á¬ááºážáá²áá«áááºá á á¬ááœááºá á¬áááºážáá»á¬ážááᯠááá¯ááºááá¯ááºá¡ááŒá²áááºážááááºážááááºážááŒááºážááẠááœá±ážáá»ááºá áá¬ááá¯ááºáá«á ááá¯á·ááŒá±á¬áá·áº áá»áœááºá¯ááºááá¯á·ááẠáá»áœááºá¯ááºááá¯á·á ááá¯ááºáááá¯áááºáá±á¬ááºááŸá¯áá»á¬ážáá²ááá¯á· áááºáá¬áá±áá¬ááᯠááŒáŸá¯ááºááŸá¶áá¬ážáá«áááºá áááºážááᯠáááºáá°áá®ááœááºááááºážá áááºážááŸáá·áº áá¯á¶á·ááŒááºááá¯ááºáá±á¬ áá¬áá¬á áá¬ážáá»á¬ážá SLA ááá¯á¡ááºáá»ááºáá»á¬ážá á¡ááŒá±á¬ááºážááŒá¬ážáá»ááºáá»á¬ážááᯠáááºááá·áºáá±áá¬ááŸáá·áº áááºáá°áá¶ááá¯á· áá±ážááá¯á·ááá·áºáááºáᯠáá±á¬áºááŒáá¬ážáááºá áááºáá±á¬ááºááŸá¯áá áºáá¯á¡á¬áž á¡áá¯á¶ážáá»ááá·áºá¡áá«á á¡áá»ááºá¡áááºá¡á¬ážáá¯á¶ážááᯠáá®ážááŒá¬ážááœááºáááºá áœá¬ áááºáá®ážáá¬ážáááºá ááááºá¡áá±ááŒáá·áºá áá áºáá¯ááẠá¡á áá»áá¯ážáááºá á¡ááŒá¬ážáá áºáá¯ááẠGrafana ááŸá áááºááŸáºáá¯ááºáá»á¬ážááá¯á· ááá·áºááºááŸá áºáá¯ááᯠáááºáááŸááááºááŒá áºáááºá
- á¡áááºááá¯ááºážááœááºá á±á¬áá·áºááŒáá·áºá developer áá»á¬ážá¡á¬ážáá¯á¶áž ááá¯áá²á·ááá¯á·áá±á¬á áá áºááᯠá¡áá¯á¶ážááŒá¯ááá·áºáááºáᯠáá»áœááºá¯ááºááá¯á·áá¯á¶ááŒááºáá«áááºá á€ááá á¹á ááœááºá áááºáá¡ááœá¬ážá¡áá¬ááẠá¡áááºááŸá¬ááŸáááááºážá áááºážááẠá¡áááºá¡áá¬ááŒá áºááááºážá áááºááá·áºáá±áá¬ááœáẠáá»áá±á¬ááºáááºá áááºážá á¡á¬ážáááºážáá»ááºáá»á¬ážááŸááááºááᯠáááºá¡ááŒá²áá¬ážáááºáááºá á¥ááá¬á¡á¬ážááŒáá·áºá áá áºáá¯áá¯áá±á¬ááºáá¬ááŒá®áž ááá·áºáááºáá±á¬ááºááŸá¯áá»ááºááœá¬ážáá«áá áááºáá±áá»á¬áá¶á០áá¯ááºážáá±á«áºááá¯á ááºááœááºááá¯ááºáá² ááááá±ážáá»ááºáá áºáá¯á០áááºážá¡ááŒá±á¬ááºážááᯠáááºáá±á·áá¬ááá¯ááºáááºááŒá áºááŒá®ážá áá±á¬ááºáá¯á¶ážáá±á«áºááŸááºáááºážáá»á¬ážááᯠáááºáá»ááºáá»ááºážááœáá·áºááŒá®áž ááá¯áá±áá¬ááœáẠááŒá áºáá»ááºáá²á·áááºáá»á¬ážááᯠááŒáá·áºááŸá¯ááá¯ááºáá«áááºá
- ááŒáá·áºáá¬ážáá±á¬á
áœááºážáá±á¬ááºáááºá áá»áœááºá¯ááºááá¯á·áááá±á¬áá»ááºááẠá¡áááºáááŒááºááŒá®ážááœá¬ážáá±ááŒá®áž ááá±á·ááœáẠáá
áºáááá
áºáá»áŸáẠáááºááá
áºáááºááá¯áž 2 ááá·áºááᯠáá¯ááºáá±á¬ááºáá«áááºá ááœááºáá²á·áá±á¬áá
áºááŸá
áºáá á€ááááºážááááºážááẠ000 ááŒá
áºáááºá ááŒá®ážááœá¬ážááŸá¯áááºáááºááŒá
áºáá±á«áºáá±ááŒá®ážá ááá¯ááá¯áááºááŸá¬ á¡áá»áááºá¡áááºážáááºááŒá¬ááŒá®ážáá±á¬áẠGraphite (ááá¯ážááá¯áž) ááẠdisk subsystem ááᯠááŒá®ážááŒá®ážáá¬ážáá¬ážáááºáá±á¬ááºáá¬áááºááŒá
áºáááºá áá«ááŒá±á¬áá²á·ááá·áºá¡ááá¯ááºážá á€á
á±á¬áá·áºááŒáá·áºáá±ážá
áá
áºááẠá¡á
áááºá¡ááá¯ááºážáá»á¬áž á¡ááŒááºá¡ááŸááºáá²ááŸááºááá¯ááºááŒááºážááŒá±á¬áá·áº á¡ááœááºá¡áá¯á¶ážáá»á¬ážáááºá áá
áºá
á¯á¶áá
áºáá±á¬ááºááẠGraphite á¡ááœáẠá¡áá°ážáááŒáá·áº áááºážááá¯á·á á¡ááŒá±áá¶á¡áá±á¬ááºá¡áŠáá»á¬ážááᯠááááºážááááºážááŒá®áž á¡áááºáááŒáẠáá»á²á·ááœááºáá±áá±á¬áºáááºáž áá»áœááºá¯ááºááá¯á·ááẠááá°áá®áá±á¬ áááºážááŒá±á¬ááºážáá
áºáá¯ááᯠááœá¬ážááẠáá¯á¶ážááŒááºáá²á·áááº- á¡áá¯á¶ážááŒá¯áá«á
á¡áááºááá¯ááŸáááºáá« áá»áœááºá¯ááºááá¯á·á ááá¯ááºážáá¬ááŸá¯áá»á¬ážá¡ááœáẠááá¯ááŸá±á¬ááºááŸá¯áá áºáá¯á¡ááŒá áºá á€á¡áá°ážá¡ááŒá±á¬ááºážááẠááŒá®ážáá¯áá®ážáá«ážááŒá áºááŒá®ážá áááºááá¯á·áá¯ááºáá±á¬ááºáá²á·áááºááᯠáááŒá¬áá®ááœáẠáá»áœááºá¯ááºá¡áá±ážá áááºááŒá±á¬ááŒáá«áááº- áááºááá¯á·áá±á¬á¡áááºá¡áá²áá»á¬ážááŸáá·áº áááºážááá¯á·áá»á±á¬áºááŒááºáá²á·áá¯á¶á ááœáŸá±á·ááŒá±á¬ááºážááŒááºážáá¯ááºáááºážá áẠáááºááá¯á·áá±á¬ááºááœááºáá²á·áááºá á ááºážááŸá±á¬ááºááŸá¯á¡ááŒá Ạááœá±ážáá»ááºáá¬ážáá±á¬ á¡á áááºá¡ááá¯ááºážáá»á¬ážááŸáá·áº áááºážááá¯á·áááœá²á·á ááºážáá¯á¶áá»á¬ážááᯠáá±á¬áºááŒáá«áááºá
ááá¯á
áá¯ááºáá²á·á¡ááœááºáá»á±ážáá°ážáááºáá«áááº! áá±á«ááºážá
ááºááŸáá·áºáááºáááºáá±á¬ ááá·áºáá±ážááœááºážáá»á¬ážááᯠáá±ážáá«á á€áá±áá¬ááœáẠááá¯á·ááá¯áẠá¡á±á¬ááºáá«ááá¯á·á
áºáá»á¬ážááœáẠááŒá±áááºááŒáá¯ážá
á¬ážáá«áááºá áá
áºá
á¯á¶áá
áºáŠážááẠá¡áá¬ážáá°á
á±á¬áá·áºááŒáá·áºáá±ážá
áá
áºááᯠáááºáá±á¬ááºááŒááºáž ááá¯á·ááá¯áẠá¡áá¬ážáá°á¡ááŒá±á¡áá±áá»áá¯ážááœáẠClickhouse ááá¯á·ááŒá±á¬ááºážááŒááºáž á¡ááœá±á·á¡ááŒá¯á¶ááŸáááá¯ááºááẠ- áááºážááᯠááŸááºáá»ááºáá»á¬ážááœáẠáá»áŸáá±áá«á
source: www.habr.com