èæ¯
äžèšã§èšãã°-信念ã®ç£èŠãšé åã«ã€ããŠã®çŽ¹ä»ã å€ãã®äººãç¥ã£ãŠããããã«ãåæ£ã·ã¹ãã ãç£èŠããããã®ã€ãã³ããããŒåŠçããŒã«ã§ãããªãŒãã³ã«åè¡ããŸãã ç£èŠã«é¢ããç§ã®æ¬ã§ã¯ ããªãŒãã³ãæ°ããç£èŠææ³ãšãã¿ãŒã³ã調æ»ããããã®äž»èŠãªããŒã«ãšããŠäœ¿çšããããã·ã¥ã¢ãã«ã䜿çšãããã¯ã€ãããã¯ã¹ç£èŠïŒéžæçãã©ãã¯ããã¯ã¹ç£èŠïŒã®ã¢ãŒããã¯ãã£ã«ã€ããŠèª¬æããŸããã
ç§ã話ããŠããããšãç解ããããã«ãããã€ãã®æŠå¿µã説æããŸãã ãã©ãã¯ããã¯ã¹ã¢ãã¿ãªã³ã°ã¯ããµãŒãã¹ãŸãã¯ã¢ããªã±ãŒã·ã§ã³ã®å€éšç¹æ§ããã§ãã¯ãã圹å²ãæãããŸãããµãŒãã¹ã®éããŠããããŒãã«æ¥ç¶ããããšãæ£ããããŒã¿ãŸãã¯å¿çã³ãŒããè¿ãããããšã¯å¯èœã§ããã ãã©ãã¯ããã¯ã¹ç£èŠã®äŸã¯ãICMPèŠæ±ãšå¿çã®ç¢ºèªã§ãã
ãã¯ã€ãããã¯ã¹ã¢ãã¿ãªã³ã°ã¯ããµãŒãã¹ãŸãã¯ã¢ããªã±ãŒã·ã§ã³å ã§çºçããŠããããšã«çŠç¹ãåœãŠãŸãã é©åãªããŒã«ãåããã¢ããªã±ãŒã·ã§ã³ã¯ãããèªäœãŸãã¯å éšã³ã³ããŒãã³ãã®ç¶æ ããã©ã³ã¶ã¯ã·ã§ã³ãŸãã¯ã€ãã³ãã®çµæãè¿ããŸãã ãã®ããŒã¿ã¯ããã¢ããªã±ãŒã·ã§ã³ã®åäœããšãã質åã§ã¯ãªãããã¢ããªã±ãŒã·ã§ã³ã®åäœããšãã質åã«åçããŸãã ãã¯ã€ãããã¯ã¹ç£èŠã¯ãã€ãã³ãããã°ããŸãã¯ã¡ããªãã¯ãç¹å¥ãªç£èŠããŒã«ã«è»¢éããããç£èŠããŒã«ã«ãããã®åŸã®åéã®ããã«æ å ±ãå€éšã«æäŸããŸãã
ææ°ã®ç£èŠã«æºããã»ãšãã©ã®äººã¯ããã¯ã€ãããã¯ã¹ç£èŠã«å€§èŠæš¡ãªæè³ãå¿ èŠã§ããããšãç解ããŠããŸãã ã¢ããªã±ãŒã·ã§ã³å ããååŸãããæ å ±ã¯ãè¡šé¢äžã§ååŸãããæ å ±ããããããžãã¹ããã³éçšã«ãšã£ãŠéåžžã«äŸ¡å€ããããŸãã ããã¯ããã©ãã¯ããã¯ã¹ã®ç£èŠããªãœãŒã¹ã®æµªè²»ã§ããããšãæå³ãããã®ã§ã¯ãããŸããã ãµãŒãã¹ãšã¢ããªã±ãŒã·ã§ã³ã®å€éšç£èŠã¯ãç¹ã«å¶åŸ¡ã§ããªããµãŒãã¹ããå€éšããèŠãå Žåãããšãã°ã«ãŒãã£ã³ã°ãDNSã®åé¡ãªã©ãå éšããã¢ã¯ã»ã¹ã§ããªãã³ã³ããã¹ããæäŸããå Žåã«åœ¹ç«ã¡ãŸãã
ãã®æ¬ã§ã¯ããã«ã§ã¯ãªãããã·ã¥ã¢ãã«ã§ã®äœæ¥ã«çŠç¹ãåœãŠãŠããŸãã ãŸãããã®æ¬ã§ã¯ããã«ã¢ãã«ããããã·ã¥ã¢ãã«ããŒã¹ã®ç£èŠã®å©ç¹ã«å€ãã®æ³šæãæãããŠããŸãã å€ãã®ïŒã»ãšãã©ã§ã¯ãªãã«ããŠãïŒç£èŠã·ã¹ãã ã¯ããã«/ããŒãªã³ã°ã¢ãã«ã«åºã¥ããŠç¹å¥ã«æ§ç¯ãããŠããŸãã ãã®ã¢ãã«ã§ã¯ãã·ã¹ãã ã¯ç£èŠãããµãŒãã¹ãŸãã¯ã¢ããªã±ãŒã·ã§ã³ãããŒãªã³ã°ããŸãã 次ã«ãããã·ã¥ã¢ãã«ã§ã¯ãã¢ããªã±ãŒã·ã§ã³ãšãµãŒãã¹èªäœãããŒã¿ãç£èŠã·ã¹ãã ã«éä¿¡ããŸãã
å€ãã®çç±ïŒãã®äžéšã¯äžèŠããŠæããã§ã¯ãããŸããïŒã®ãããç§ã¯ããã·ã¥ã¢ãã«ã奜ã¿ãŸãã ããããäž¡æ¹ã®ã¢ãããŒãã®æ©èœã¯ãå€ãã®çç±ã§ïŒããšãã°ãèŠæš¡ã®çç±ã§ïŒå®è£ ã«å¹²æžããŸããã ãããŠãæåã®å¯èœæ§ã¯ãå®è£ ãŸãã¯ããŒã«ã«é¢ããçŽäºã«äŸåããŸããã ãŸã第äžã«ãããŒã«ã¯ããªãã«é©ããŠããã¹ãã§ããããã¬ã³ããç¬æ䞻矩ã軜çã«è¿œãããšã¯æå³ããããŸããã
ãã«ã¢ãã«ã«åºã¥ããäž»èŠãªç£èŠããŒã«ã®1ã€ã§ããããã¡ããŠã¹ã®å ¥éãã¥ãŒããªã¢ã«ãæžãããã«ãªã£ããã£ããã¯ãã«ããŽãªã«å±ããªããšãã欲æ±ãšãã³ãã¥ããã£ã«ããéãã®ç解ã®æ¬ åŠã§ããã ç¹ã«ã³ã³ãããšKubernetesã®äžçã§ã¯éåžžã«äººæ°ããããŸãã
ããã¡ããŠã¹ã®çŽ¹ä»
Prometheusã¯ã以åGoogleã§åããŠããSoundcloudãšã³ãžãã¢ã«ãã£ãŠéçºãããŸããã Goã§æžãããŠããããªãŒãã³ãœãŒã¹ã§ããã Cloud Native Computing Foundationã®ãµããŒãã§éçºãããŠããŸãã ãã®ãããžã§ã¯ãã®ã€ã³ã¹ãã¬ãŒã·ã§ã³ã¯ãGoogleã®Borgmonã§ããã
ããã¡ããŠã¹ã¯ãã¯ã€ãããã¯ã¹ç£èŠã«çŠç¹ãåœãŠãŠããŸãã ã¢ããªã±ãŒã·ã§ã³ããã³ãµãŒãã¹ããååŸããæç³»åããŒã¿ãåéããŸãã ã¢ããªã±ãŒã·ã§ã³ã¯ããã®ããŒã¿ãåç¬ã§ããŸãã¯ãšã¯ã¹ããŒã¿ãŒãšåŒã°ãããã©ã°ã€ã³ãä»ããŠæäŸããŸãã
Prometheusãã©ãããã©ãŒã ã¯ãæç³»åããŒã¿ãåéããã³ä¿åãããµãŒããŒã«åºã¥ããŠããŸãã ã¡ã¿ããŒã¿ã®ã©ãã«ãšåŒã°ããã¡ããªãã¯åãšããŒ/å€ã®ãã¢ãçµã¿åãããå€æ¬¡å æç³»åã¢ãã«ããããŸãã æç³»åããŒã¿ã¯ãµãŒããŒã«ä¿åãããåã ã®ãµãŒããŒã¯èªåŸçã§ãããåæ£ã¹ãã¬ãŒãžããç¬ç«ããŠããŸãã
ãã©ãããã©ãŒã ã«ã¯ãã¯ã©ã€ã¢ã³ãã©ã€ãã©ãªãšãç¹å®ã®æ©èœãšã³ã³ããŒãã³ãã®å€æ°ã®ãšã¯ã¹ããŒã¿ãŒãå«ãŸããŠããŸãã ããšãã°ãStatsDãšã¯ã¹ããŒã¿ãŒã¯ãæç³»åã®StatsDããŒã¿ãPrometheus圢åŒã«å€æããŸãã ããã«ãå°éã®çä¿¡ããŒã¿ãåä¿¡ããããã®ããã·ã¥ã²ãŒããŠã§ã€ãšãããªã¬ãŒã«ãã£ãŠäœæãããéç¥ãåŠçã§ããã¢ã©ãŒããããŒãžã£ãŒããŸãã¯Prometheusã«ãã£ãŠåéãããããŒã¿ã®ãããå€ãè¶ ããå Žåã«ã¢ã©ãŒããããŒãžã£ãŒããããŸãã
ãã詳现ãªã¢ãŒããã¯ãã£ã«ã€ããŠã¯ãPrometheusã®ããã¥ã¡ã³ããã芧ãã ããã
èšçœ®
ããã¡ããŠã¹ãµãŒããŒ-åãååã®ããã¡ããŠã¹ã®ãã€ããªãã¡ã€ã«ã ææ°ããŒãžã§ã³ãååŸããŠè§£åããŸãã
$ wget https://github.com/prometheus/prometheus/releases/download/v1.8.0/prometheus-1.8.0.darwin-amd64.tar.gz $ tar -xzf prometheus-*.tar.gz $ cd prometheus-1.8.0.darwin-amd64/
å ¬åŒWebãµã€ãã¯ãããŸããŸãªè¿œå ã³ã³ããŒãã³ãããã¹ãããŠããŸããéç¥ãéä¿¡ããããã®ã¢ã©ãŒããããŒãžã£ãŒãšãããŸããŸãªãµãŒãã¹ã®ãšã¯ã¹ããŒã¿ãŒã§ãã
ã«ã¹ã¿ãã€ãº
解åããã°ããã®ããã¡ããŠã¹ãã€ããªãã¡ã€ã«ã¯ãYAMLãã¡ã€ã«ãä»ããŠèšå®ãããŸãã ãããäœã§ãããèŠãŠã¿ãŸãããïŒ
global: scrape_interval: 15s evaluation_interval: 15s external_labels: monitor: 'codelab-monitor' rule_files: # - "first.rules" # - "second.rules" scrape_configs: - job_name: 'prometheus' static_configs: - targets: ['localhost:9090']
ãã®æ§æãã¡ã€ã«ã§ã¯ã3ã€ã®YAMLãããã¯ãå®çŸ©ãããŠããŸãã
ã°ããŒãã«
æåã®ã°ããŒãã«ãããã¯ã«ã¯ããµãŒããŒã®åäœãå¶åŸ¡ããããã®ã°ããŒãã«èšå®ãå«ãŸããŠããŸãã
scrape_intervalã¯ãã¢ããªã±ãŒã·ã§ã³ãŸãã¯ãµãŒãã¹ã®ããŒãªã³ã°ééãèšå®ããŸãããã®äŸã§ã¯15ç§ã§ãã ããã¯ãããŒã¿ã¹ã±ãŒã«ã®è§£å床ãã€ãŸãåããŒã¿ãã€ã³ããã«ããŒããæéã§ãã
evaluation_intervalã¯ãã«ãŒã«ã«åŸã£ãŠããŒã¿ãåŠçããé »åºŠãPrometheusã«äŒããŸãã ã«ãŒã«ã«ã¯ãèšé²ã«ãŒã«ãšã¢ã©ãŒãã«ãŒã«ã®2ã€ã®äž»ãªã¿ã€ãããããŸãã èšé²ã«ãŒã«ã䜿çšãããšãé »ç¹ã«äœ¿çšããããªãœãŒã¹éçŽåã®åŒãäºåèšç®ããçµæãæ°ããæç³»åããŒã¿ãšããŠä¿åã§ããŸãã ã¢ã©ãŒãã«ãŒã«ã䜿çšãããšãã¢ã©ãŒãã®æ¡ä»¶ã決å®ã§ããŸãã ããã¡ããŠã¹ã¯15ç§ããšã«ãããã®ç¶æ ãïŒåïŒãã§ãã¯ããŸãã
External_labelsã«ã¯ãããšãã°ã¢ã©ãŒããçæããããšãã«ãµãŒããŒäžã«ååšããã¡ããªãã¯ã«è¿œå ãããã©ãã«ã®ããŒ/å€ã®ãã¢ã®ãªã¹ããå«ãŸããŸãã
ã«ãŒã«ãã¡ã€ã«
2çªç®ã®ãããã¯-rule_filesã«ã¯ãèšé²ãŸãã¯èŠåã®ã«ãŒã«ãå«ããã¡ã€ã«ã®ãªã¹ããå«ãŸããŠããŸãã
調æ»æ§æ
æåŸã®scrape_configsãããã¯ã«ã¯ãPrometheusãããŒãªã³ã°ãããã¹ãŠã®ç®æšã衚瀺ãããŸãã ããã¡ããŠã¹ã¯ç®æšã€ã³ã¹ã¿ã³ã¹ãåŒã³åºããã€ã³ã¹ã¿ã³ã¹ã°ã«ãŒãã¯ãžã§ããåŒã³åºããŸãã ããã©ã«ãã§ã¯ãããã¡ããŠã¹ãšãã1ã€ã®ã¿ã¹ã¯ã®ã¿ããããŸãã ãã®äžã«ãã€ã³ã¹ã¿ã³ã¹ã®ãªã¹ããæã€static_configããããŸãïŒããã©ã«ãã§ã¯ãPrometheusãµãŒããŒã¯1ã€ã ãã§ãïŒã localhostããŒã9090ãããŒãªã³ã°ããŠããµãŒããŒèªäœã®ç¶æ ã¡ããªãã¯ãååŸããŸãã ã¡ããªãã¯ã¯/ã¡ããªãã¯ã§ãããšæ³å®ããããããããŒã«ã«ãã¹ãã¢ãã¬ã¹ã¯ããŒã«ã«ã«ããŒãªã³ã°ãããŸãïŒ9090 /ã¡ããªãã¯ã ãã¹ã¯ãmetric_pathãªãã·ã§ã³ã䜿çšããŠå€æŽã§ããŸãã
å€ç¬ãªã¿ã¹ã¯ã¯éå±ãªã®ã§ããã1ã€è¿œå ããŠããŒã«ã«DockerããŒã¢ã³ãããŒãªã³ã°ããŸãã Docker ããã¥ã¡ã³ãã®æé ã䜿çšããŠãlocalhostïŒ9323 / metricsããã¡ããªãã¯ãè¿ãããã«ããŒã¢ã³ãæ§æããŸãã ãã®åŸãdockerãšããå¥ã®ã¿ã¹ã¯ãè¿œå ããŸãã
- job_name: 'docker' static_configs: - targets: ['localhost:9323']
ãžã§ãã«ã¯ãååãšãDockerããŒã¢ã³ã¡ããªãã¯ã¹ãåä¿¡ããããã®ã¢ãã¬ã¹ãåç §ããã€ã³ã¹ã¿ã³ã¹ããããŸãã ããã©ã«ãã®ãã¹ã¯åã³/ã¡ããªãã¯ã§ãã
å®å šãªèšå®ãã¡ã€ã«ã¯ãã¡ãã«ãããŸã ã
ãµãŒããŒèµ·å
ãµãŒããŒãèµ·åããŠãäœãèµ·ãããèŠãŠã¿ãŸãããã
$ ./prometheus -config.file "prometheus.yml"
ãã€ããªãã¡ã€ã«ãå®è¡ããã³ãã³ãã©ã€ã³ãã©ã°-config.fileã§æ§æãã¡ã€ã«ãæå®ããŸãã ããã§ãPrometheusãµãŒããŒãå®è¡ãããprometheusããã³dockerãžã§ãã®ã€ã³ã¹ã¿ã³ã¹ãããŒãªã³ã°ããçµæãè¿ããŸãã
ããã·ã¥ããŒã
Prometheusã«ã¯ãçµæã確èªã§ããçµã¿èŸŒã¿ã®ã€ã³ã¿ãŒãã§ã€ã¹ããããŸãã ãããè¡ãã«ã¯ã httpïŒ// localhostïŒ9090 / graphããã©ãŠã¶ãŒã§éããŸã ã
[ã«ãŒãœã«ã«ã¡ããªãã¯ãæ¿å ¥]ãã¯ãªãã¯ãããšãåéãããã¡ããªãã¯ã®1ã€ãéžæã§ããŸãã HTTPãªã¯ãšã¹ããèŠãŠã¿ãŸãããã ãããè¡ãã«ã¯ãã¡ããªãã¯http_requests_totalãéžæããŠããå®è¡ããã¯ãªãã¯ããŸãã
èŠçŽ ãšå€ã®ãªã¹ãã衚瀺ãããŸãã次ã«äŸã瀺ããŸãã
http_requests_total{code="200",handler="prometheus",instance="localhost:9090",job="prometheus",method="get"}
ãããã®èŠçŽ ã¯ãè¿œå ã®ãã£ã¡ã³ã·ã§ã³ã§åºåãããã¡ããªãã¯ã§ãïŒã¡ããªãã¯ã©ãã«ã§æäŸãããŸãïŒã ããšãã°ãhttp_requests_totalã¡ããªãã¯ã«ã¯ããªã¯ãšã¹ããçæããããã»ã¹ã«é¢ããæ å ±ãå«ããã³ãã©ã©ãã«ããããŸãã ãããã®ã©ãã«ã®ãããããå«ãç¹å®ã®ã¡ããªãã¯ãéžæãããšãã¡ããªãã¯ã®ãªã¹ããæžããããšãã§ããŸãã
PrometheusãµãŒããŒã«çµã¿èŸŒãŸããŠããåŒèšèªã®æè»æ§ã«ãããã¡ããªãã¯ã®æ€çŽ¢ãšéèšãç°¡åã«ãªããŸãã
ãã³ãã©ãŒã©ãã«ã䜿çšããŠãããã¡ããŠã¹ãã³ãã©ãŒã®ã¿ã®ã¡ããªãã¯ãéžæããŸããã
ããã«ãHTTPèŠæ±ã®ã¡ããªãã¯ãéçŽããŸãã 5å以å ã«HTTPãªã¯ãšã¹ãã®æ°ãã¿ã¹ã¯å¥ã«åé¡ããå¿ èŠããããšããŸãããã ãããè¡ãã«ã¯ããªã¯ãšã¹ããæ確ã«ããŸãã
sum(rate(http_requests_total[5m])) by (job)
[å®è¡]ãã¯ãªãã¯ããŠãã¯ãšãªãå®è¡ããŸãã
ããã«ã[ã°ã©ã]ã¿ããéžæãããšãçµæã°ã©ãã衚瀺ã§ããŸãã
ãã®äžã«ãéå»5åéã®HTTPãªã¯ãšã¹ãã®ç·æ°ãã¿ã¹ã¯ããšã«ã°ã«ãŒãåãããŠè¡šç€ºãããŸãã
ãããã®ã¯ãšãªãèšé²ã«ãŒã«ãšããŠä¿åãããã®ã«ãŒã«ããæ°ããã¡ããªãã¯ãèªåçã«å®è¡ããã³äœæã§ããããã«ããŸãã
ãããè¡ãã«ã¯ããã¡ã€ã«ãrule_filesãããã¯ã«è¿œå ããŸãã
rule_files: - "first.rules" # - "second.rules"
ãããŠãfirst.rulesãã¡ã€ã«ã«æ¬¡ã®ã«ãŒã«ãèšè¿°ããŸãã
job:http_requests_total:sum = sum(rate(http_requests_total[5m])) by (job)
ããã«ãããæ°ãããžã§ããäœæãããŸãïŒhttp_requests_totalïŒåãžã§ãã®åèšã¡ããªãã¯ã
ããã§ãã¡ããªãã¯ããã°ã©ããäœæããããã·ã¥ããŒãã«è¿œå ã§ããŸãã
ã¢ã©ãŒã
éçŽã®ãããªèŠåã¯ã«ãŒã«ããŒã¹ã§ãã èŠåã«ãŒã«ãè¿œå ããã«ã¯ãå¥ã®ãã¡ã€ã«ãrule_filesãããã¯ã«ç»é²ããå¿ èŠããããŸãã
rule_files: - "first.rules" - "second.rules"
second.ruleãã¡ã€ã«ã§ãã€ã³ã¹ã¿ã³ã¹ãèœã¡ããšãã«éç¥ããæ°ããã«ãŒã«ãäœæããŸãã ãããè¡ãããã«ãåéã«æšæºã¡ããªãã¯ã®1ã€ã䜿çšããŸããupã¯ç¶æ ã¡ããªãã¯ã§ããããã®å€ã¯ãããŒãªã³ã°ãæåããå Žåã¯1ãããŒãªã³ã°ã倱æããå Žåã¯0ã§ãã
ã«ãŒã«ãã¡ã€ã«ã«ã¢ã©ãŒãã«ãŒã«ãè¿œå ããŸãã 次ã®ããã«ãªããŸãã
ALERT InstanceDown IF up == 0 FOR 5m LABELS { severity = "moderate" } ANNOTATIONS { summary = "Instance {{ $labels.instance }} down", description = "{{ $labels.instance }} of job {{ $labels.job }} has been down for more than 5 minutes.", }
ã¢ã©ãŒãã«ãŒã«ã¯æ¡ä»¶ä»ããªã¯ãšã¹ãã«å°ã䌌ãŠããŸãã InstanceDownãšããååãšäžé£ã®ã«ãŒã«ãæå®ããŸãã InstanceDownã¢ã©ãŒãã¯ãã¢ããã¡ããªãã¯ã0ã®å ŽåïŒã€ãŸããã¡ããªãã¯ã®åéã倱æããå ŽåïŒã5åéããªã¬ãŒãããŸãã ã¢ã©ãŒãã«ã©ãã«ãè¿œå ããŸããïŒé倧床=äžïŒã€ãŸããé倧床=äžïŒããã³æ³šéã 泚éã䜿çšãããšãã€ãã³ãã®èª¬æãªã©ãããå€ãã®æ å ±ãã¢ã©ãŒãã«è¿œå ã§ããŸãã ã¢ãããŒã·ã§ã³ã«ã¯{{}}ãå«ãŸããŠããŸã-Goã§ã®æšæºåã®ããã®æ¬åŒ§ã§ãå€æ°ãç»é²ãããŠããŸãã ãã®ããã ãã³ãã¬ãŒãã䜿çšããŠã¢ã©ãŒããã«ã¹ã¿ãã€ãºã§ããŸãã ãã®å Žåã$ labelså€æ°ã«ã¯ã¡ããªãã¯ã©ãã«ãå«ãŸããŸããããšãã°ã$ labels.instanceã¯ã€ã³ã¹ã¿ã³ã¹åãè¿ãã$ labels.jobã¯ãžã§ãã®ååãªã©ãè¿ããŸãã
DockerããŒã¢ã³ãåæ¢ããŠãã5ååŸãPrometheusã¯ã¢ã©ãŒããèµ·åãã AlertmanagerãããŒãžã£ãŒã«ã¡ãã»ãŒãžãéä¿¡ããŸãïŒ AlertmanagerãããŒãžã£ãŒã¯ãæåã«åå¥ã«ã€ã³ã¹ããŒã«ããŠå®è¡ãããã Alerta toolãªã©ã®ä»ã®ããŒã«ã䜿çšããå¿ èŠããããŸã ïŒã çŸåšã®éç¥ã¯ã[ã¢ã©ãŒã]ã¿ãã®ããã·ã¥ããŒãã§ç¢ºèªã§ããŸãã
ãããã«
Prometheusã¯ãã€ã³ã¹ããŒã«ãšèšå®ãç°¡åãªåªãããã©ãããã©ãŒã ã§ãã èšå®ã¯YAMLã§èª¬æãããŠãããã³ãŒããšããŠã®ã€ã³ãã©ã¹ãã©ã¯ãã£ïŒIaCïŒã¢ãããŒãã®äœ¿çšãç°¡çŽ åããŸãã ã¹ã¿ã³ãã¢ãã³ãµãŒããŒã®ãããã§ãåçŽãªç°å¢ãç°¡åã«ç£èŠã§ããŸãã æ®å¿µãªãããããè€éãªç°å¢ã®å€ãã®äŸãèŠã€ããããšãã§ããªãã£ããããæé©ãªæ¹æ³ãèŠã€ããããã«å®éšãšããŸããŸãªã¢ãããŒãã«æéãè²»ãã䟡å€ããããŸãã
ããŒã¿ã¢ãã«ã¯éåžžã«æè»æ§ããããç¹ã«å°è±¡çãªã®ã¯ãã¡ããªãã¯ã®ã©ãã«ä»ããšæ€çŽ¢ã容æã§ããããšã§ãã ç§ã¯ã»ãšãã©ã®ã¯ã©ã€ã¢ã³ãã©ã€ãã©ãªãšããã€ãã®ãšã¯ã¹ããŒã¿ãŒã«äŒããŸããã ããŒã«ãäœæããã¡ããªãã¯ãçæããããšã¯ããã»ã©å°é£ã§ã¯ãããŸããã
çµã¿èŸŒã¿ã®ã€ã³ã¿ãŒãã§ã€ã¹ã¯ã¯ãªãŒã³ã§ãšã¬ã¬ã³ãã§ãããã¯ãšãªèšèªãšäžç·ã«ããªãœãŒã¹ã®ãããã°ãŸãã¯ã¹ã±ãžã¥ãŒãªã³ã°ã«é©ããããŒã«ã®ããã«èŠããŸãã èšé²ã«ãŒã«ã¯ãã¡ããªãã¯ã®éèšã«é©ããŠããŸãã
ã¹ãã¬ãŒãžãã»ãã¥ãªãã£ããµãŒããŒæ€åºããã®ä»ã®å©çšå¯èœãªçµ±åãå°ãç 究ããŸãããå¯èœæ§ã¯å æ¬çã«èŠããŸãã GitHubããã°ããæ€çŽ¢ãããšãããŒã«ãçµ±åãããã³ãµã³ãã«ã®å°è±¡çãªã»ããã瀺ãããŠãããããã¯ééããªãéå§ã«ååãªã¯ãã§ãã
ã¡ã€ã³ãã©ãããã©ãŒã ã«ã¯ååãªããã¥ã¡ã³ãããããŸãããäžéšã®é¢é£ãããžã§ã¯ãã§ã¯ããªãæ··chaãšããŠäžå®å šã§ãã Prometheusã®ç¥èãéãããŠããŠããããã1æéã§åäœããæ§æãäœæã§ããŸããã
åæåã¹ã¯ãªãããããã±ãŒãžåã¹ã¯ãªãããªãã§åäžã®ãã€ããªãã¡ã€ã«ãé åžããããšã¯ãããã«äœ¿çšã§ãããœãªã¥ãŒã·ã§ã³ãšã¯èšããŸããããããã§ãå€ãã®ãããžã§ã¯ãã§æå¹ãªãœãªã¥ãŒã·ã§ã³ã§ãã ãŸãã䜿çšã§ããæ§æ管çã·ã¹ãã ã«ã¯ããŸããŸãªæºåã¹ã¯ãªããããããŸãã ãã ããPrometheusã®ãããªã»ãšãã©ã®ç 究ããŒã«ã¯ãã€ã³ã¹ããŒã«ãåç¬ã§åŠçããå¯èœæ§ãé«ããªããŸãã ã³ã³ãããšKubernetesã®ãµããŒãã¯ããããã®ããŒã«ã䜿çšããŠãã人ã ã«ãšã£ãŠé åçã§ãã ãŸããïŒãã€ã¯ãïŒãµãŒãã¹ãšåçãŸãã¯ã¯ã©ãŠãã¹ã¿ãã¯ã®ç 究è ã¯ããµãŒããŒã®èªåŸæ§ãšç§»æ€æ§ã«é¢å¿ãæã€ã§ãããã
ç£èŠãå®è£ ããå¿ èŠããããããžã§ã¯ããããå Žåã¯ãPrometheusããå§ãããŸãã ã¢ã¯ãã£ããã£ã«DockerãKubernetesãªã©ã®ã³ã³ãããããŒã«ãé¢ä¿ããŠããå Žåããæéãããã䟡å€ããããŸãã æè»æ§ããããããä»ã®æ¢åã®ãã©ãããã©ãŒã ãããã¯ããã«åªããããŒã«ãã¢ãŒããã¯ãã£ã«é©ããŠããŸãã
PSãã®æçš¿ã®ã€ã³ã¹ãã¬ãŒã·ã§ã³ã¯ãCindy Sridharanã«ãã£ãŠæžãããCloud Nativeã®æ代ã®Monitoringã§ããã ã·ã³ãã£ããããšãïŒ
çµãã
圹ã«ç«ã€ããšãé¡ã£ãŠããŸãã