Diferències
Ací es mostren les diferències entre la revisió seleccionada i la versió actual de la pàgina.
| Ambdós costats versió prèvia Revisió prèvia Següent revisió | Revisió prèvia | ||
| info:cursos:pue:devops:sesion13 [29/03/2019 09:56] – mate | info:cursos:pue:devops:sesion13 [26/11/2021 04:25] (actual) – [otros] mate | ||
|---|---|---|---|
| Línia 1: | Línia 1: | ||
| - | = sesión 13 | + | = sesión 13 ELK |
| == Container Orchestration Rosetta Stone | == Container Orchestration Rosetta Stone | ||
| ^ ^ unidad mínima ^ Gestor de disponibilidad\\ controllers ^ expose\\ services ^ webservices\\ exterior ^ | ^ ^ unidad mínima ^ Gestor de disponibilidad\\ controllers ^ expose\\ services ^ webservices\\ exterior ^ | ||
| Línia 98: | Línia 98: | ||
| image: docker.elastic.co/ | image: docker.elastic.co/ | ||
| volumes: | volumes: | ||
| - | - / | + | - / |
| depends_on: | depends_on: | ||
| - elasticsearch | - elasticsearch | ||
| Línia 113: | Línia 113: | ||
| environment: | environment: | ||
| ROUTE_URIS: ' | ROUTE_URIS: ' | ||
| + | DOCKER_LABELS: | ||
| volumes: | volumes: | ||
| - / | - / | ||
| Línia 119: | Línia 120: | ||
| networks: | networks: | ||
| - logstash | - logstash | ||
| - | | + | # |
| - | LOGSPOUT: ' | + | # |
| + | # OJO, se ignora a si mismo y no se vuelcan logs | ||
| deploy: | deploy: | ||
| mode: global | mode: global | ||
| Línia 179: | Línia 181: | ||
| } | } | ||
| </ | </ | ||
| + | [[https:// | ||
| + | procesar en ELK | ||
| + | |||
| + | logspout -> logstash -> kibana | ||
| + | |||
| + | - debemos habilitar las DOCKER_LABELS como variable de entorno en el deploy de la imagen (cualquier valor lo activa)< | ||
| + | version: ' | ||
| + | |||
| + | services: | ||
| + | db: | ||
| + | | ||
| + | | ||
| + | - db_data:/ | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | |||
| + | | ||
| + | | ||
| + | | ||
| + | - 80 | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | |||
| + | volumes: | ||
| + | db_data: | ||
| + | </ | ||
| + | - añadimos una etiqueta en nuestro contenedor para poder discriminar su origen (y formato) -> NO | ||
| + | - modificamos el logstash.conf para añadir un **if** por etiqueta y decirle que formato tiene< | ||
| + | if [docker][image] =~ /^cadena/ { | ||
| + | grok { | ||
| + | match => {" | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | |||
| + | * modificamos la configuración de **logstash.conf** para que tenga un nuevo INPUT (de syslog):< | ||
| + | input { | ||
| + | syslog { | ||
| + | codec => cef | ||
| + | port => 12345 | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | <code / | ||
| + | *.* @@< | ||
| + | </ | ||
| + | * facility.priority | ||
| + | * @ -> UDP (pérdida de paquetes permitida) | ||
| + | * @@ -> TCP (seguridad de entrega) | ||
| + | * el **-** indica **buffered**, | ||
| + | * para volcar los logs a una dirección IP/Puerto hay que hacer lo anterior y habilitar el **module(load=" | ||
| + | * para ver que está escuchando: '' | ||
| == otros | == otros | ||
| - | * [[whitedisplay.com]] | + | * [[http://www.whitedisplay.com]] |
| * grok debugger | * grok debugger | ||
| * vim | * vim | ||