
Introducción
Código en Github: Elasticsearch y Beats
Vamos a configurar Filebeat con Elasticsearch y Kibana. Si aún no tiene Elasticsearch y Kibana configurados, entonces siga estas instrucciones.
Este vídeo asume que estás usando Certificados firmados públicamente. Si estas usando Certificados autofirmados, Vaya aquí Por determinar.
Requisitos
A Running instance of Elasticsearch and Kibana.
Una instancia de otro servidor Ubuntu 20.04 que ejecuta cualquier tipo de servicio.
Pasos
Paso 1 - Descargar Filebeat [01:10]
En la máquina Ubuntu que ejecutará filebeat, ejecute estos comandos para descargar las dependencias:
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo gpg --dearmor -o /usr/share/keyrings/elasticsearch-keyring.gpg;
echo 'deb [signed-by=/usr/share/keyrings/elasticsearch-keyring.gpg] https://artifacts.elastic.co/packages/8.x/apt stable main' | sudo tee /etc/apt/sources.list.d/elastic-8.x.list;
apt-get install -y apt-transport-https;
apt-get install -y filebeat;
Paso 2: Configurar Filebeat [02:20]
Edite estos campos para el /etc/filebeat.yml
filebeat.inputs:
...etc...
- type: filestream
...etc...
enabled: true
...etc...
filebeat.config.modules:
path: ${path.config}/modules.d/*.yml
reload.enabled: true
# 10s reload for demonstration purposes
reload.period: 10s
setup.kibana:
host: "https://<kibana-domain>:<kibana-port>"
output.elasticsearch:
hosts: ["<elasticsearch-domain>:<elasticsearch-port>"]
protocol: "https"
username: "elastic"
password: "<your elastic password>"
El archivo filebeat.yml completo se puede encontrar aquí.
IMPORTANTE: Usamos el superusuario elástico para la configuración inicial. Reduciremos los privilegios más adelante.
Luego prueba tu configuración con estos comandos:
/usr/share/filebeat/bin/filebeat test config -c /etc/filebeat/filebeat.yml --path.data /var/lib/filebeat --path.home /usr/share/filebeat
/usr/share/filebeat/bin/filebeat test output -c /etc/filebeat/filebeat.yml --path.data /var/lib/filebeat --path.home /usr/share/filebeat
Confirme que recibe mensajes de éxito.
Paso 3 - Configurar Filebeat [11:12]
Ahora ejecute este comando para configurar los flujos de datos y las vistas de filebeat en Elasticsearch y Kibana:
/usr/share/filebeat/bin/filebeat setup -c /etc/filebeat/filebeat.yml --path.data /var/lib/filebeat --path.home /usr/share/filebeat
Una vez finalizado el comando, ve a Kibana Menú y visitar Panel para ver muchos paneles prediseñados.
Paso 4: Crear un usuario de publicación [12:58]
Crear rol
En Kibana, vaya a Gestión de pilas > Roles > Crear rol. Luego, completa estos campos:
Role name: filebeat-publisher
Cluster privileges: monitor read_ilm read_pipeline
Indices: filebeat-*
Privileges: create_doc
Crear usuario
En Kibana, vaya a Gestión de pila > Usuarios > Crear usuario. Luego, completa estos campos:
Username: filebeat-publisher
Full name: filebeat-publisher
Email address: anything@anything.com
Password: anything
Roles: filebeat-publisher editor
Crear una clave API para el usuario
En Kibana, vaya a Herramientas de desarrollo > Consola. Luego ejecute este comando:
POST /_security/api_key/grant
{
"grant_type": "password",
"username": "filebeat-publisher",
"password": "anything",
"api_key": {
"name": "filebeat-publisher"
}
}
Esto debería producir un resultado como el siguiente:
Token de usuario de Filebeat
Error tipográfico: el nombre metric
Debería mostrarse filebeat-publisher
en cambio
Editar el /etc/filebeat/filebeat.yml
comentando el elastic
nombre de usuario y contraseña y habilitar el api_key
Así:
output.elasticsearch:
...etc...
api_key: "${ES_API_KEY}"
#username: "elastic"
#password: ""
...etc...
Usaremos el almacén de claves de Filebeat para cargar secretos en tiempo de ejecución. Ahora ejecute este comando para configurar...ES_API_KEY
variable del almacén de claves:
/usr/share/filebeat/bin/filebeat keystore add ES_API_KEY -c /etc/filebeat/filebeat.yml --path.data /var/lib/filebeat --path.home /usr/share/filebeat
Prensa ingresar y cuando se le solicite, péguelo <id>:<api_key>
donde el <id>
y el <api_key>
son los valores de la respuesta del token de usuario que recibió anteriormente.
Paso 5 - Ejecutar Filebeat [19:00]
systemctl enable filebeat;
systemctl start filebeat;
En un momento, deberías comenzar a ver resultados en Kibana en cualquiera de los dos.Descubrir, Observabilidad, Gestión de pilas > Gestión de índices > Flujo de datos, Panel de control >Seleccionar un panel de control de Filebeat.
Paso 6: Habilitar otros módulos de registro [22:30]
En este punto, no hay muchos registros interesantes que revisar. Podemos volver al servidor de Filebeat y acceder a.../etc/filebeat/modules.d
directorio y renombre el relevante *.yml.disabled
a *.yml
archivo para indicar a Filebeat que envíe datos a Elasticsearch. Para algunos de estos servicios, es posible que deba agregar el enabled: true
opción a la *.yml
archivo, así como el tipo de conexión y los detalles de configuración apropiados.