Conceptos basicos
- Elasticsearch es un motor de búsqueda en tiempo real, distribuido y escalable que permite la búsqueda estructurada de texto completo. Por lo general, se utiliza para indexar y buscar grandes cantidades de datos de registro, y también se puede utilizar para buscar muchos tipos diferentes de documentos.
- Beats es una herramienta poderosa para la recopilación de datos. Coloque Beats en su servidor con su contenedor, o implemente Beats como una función, y luego procese los datos centralmente en Elastisearch. Si necesita un rendimiento de procesamiento más potente, Beats también puede enviar los datos a Logstash para su conversión y análisis.
- Los productos principales de Kibana están equipados con una serie de funciones clásicas: histograma, gráfico de líneas, gráfico circular, gráfico solar, etc. No solo eso, también puede usar la sintaxis de Vega para diseñar sus propios gráficos visuales. Todos estos aprovechan las capacidades de agregación completas de Elasticsearch.
Elasticsearch generalmente se implementa con Kibana. Kibana es un poderoso panel de visualización de datos de Elasticsearch. Kibana le permite navegar por los datos de registro de Elasticsearch a través de una interfaz web.
Instalación y despliegue
Aquí usamos Helm para la implementación, por lo que debemos instalar Helm primero.
wget -O helm.tgz https://get.helm.sh/helm-v3.1.1-linux- amd64.tar.gz tar - zxvf helm.tgz cd linux-amd64
mv helm / usr / local / bin && chmod a + x / usr / local / bin versión casco
Para más detalles, consulte: Kubernetes combat summary-Helm implementación (v3.1.1)
Luego descargamos el código fuente del almacén de Helm
wget -O helm-charts.tgz https://github.com/elastic/helm-charts/archive/7.6.2 .tar.gz tar -zxvf helm-charts.tgz
cd helm-charts-7.6.2
Cree un PV para elasticsearch. Aquí se usa NFS, pero también puede usar otros métodos.
# Se-pv.yaml
apiVersion: v1 tipo: volumen persistente metadatos: nombre: elasticsearch Especificaciones: capacidad: almacenamiento: 30Gi accessModes: - ReadWriteOnce persistentVolumeReclaimPolicy: Retener nfs: ruta: / nfsdata / elasticsearch servidor: *. *. *. *
kubectl create -f es-pv.yaml
Implementar búsqueda elástica
vim elasticsearch / values.yaml # Realizar cambios de acuerdo a sus propios nodos Réplicas: 1 minimumMasterNodes: 1 ....... # Cambiar la fuente de imagen y la versión del archivo: " registry.cn-shanghai.aliyuncs.com/leozhanggg/elastic/elasticsearch " imageTag: " 7.6.0 " imagePullPolicy: " IfNotPresent " ...... # Recursos propios para ajustar el tamaño de los recursos: peticiones: cpu: memoria " 1000m " : " 2Gi " límites: cpu: memoria " 1000m " : " 2Gi " ...... # Existe correspondiente al PV volumeClaimTemplate: accessModes: [ " ReadWriteOnce " ] recursos: peticiones: almacenamiento: 30Gi
helm install es --namespace = efk ./elasticsearch
Implementar filebeat
vim filebeat / values.yaml # Registro de catálogo de la colección hostPathRoot: / var / lib hostNetworking: falso # Cambiar la fuente de imagen y la versión del archivo: " registry.cn-shanghai.aliyuncs.com/leozhanggg/elastic/filebeat " imageTag: " 7.6.0 " imagePullPolicy: " IfNotPresent " helm install fb --namespace = efk ./filebeat
Departamento de kibana
Kibana vim / values.yaml # cambio de la fuente de imagen y la versión del archivo: " registry.cn-shanghai.aliyuncs.com/leozhanggg/elastic/kibana " imageTag: " 7.6.0 " imagePullPolicy: " IfNotPresent " ...... # Cambio NodePort modo de servicio: tipo: NodePort puerto: 5601 nodo Puerto: "30005" helm install kb --namespace = efk ./kibana
Espere a que se complete la implementación
[root ~] # kubectl get pod -n efk NOMBRE LISTO ESTADO RESTAURACIÓN EDAD elasticsearch -master-0 1/1 Running 0 28h filebeat -filebeat-967m2 1/1 Running 0 28h filebeat -filebeat-lr79k 1/1 Ejecutando 0 28h kibana -kibana-64f5869d86-qrkrq 1/1 Corriendo 0 28h
Visita masterip: puerto para ver registros
Por supuesto, esta no es la mejor implementación. En esta arquitectura, de acuerdo con las características del negocio, también puede agregar algunos middleware, como Redis, Kafak, etc.
Para obtener más detalles, consulte >>> Cómo supervisar los registros de clúster K8S EFK (Elasticsearch + Filebeat + Kibana) para recopilar registros de contenedores
Autor: Leozhang GG
Fuente: https://www.cnblogs.com/leozhanggg/p/12700363.html
Los derechos de autor de este artículo pertenecen al autor y al jardín del blog. Bienvenido a la reimpresión, pero esta declaración de párrafo debe conservarse sin el consentimiento del autor, y el enlace del texto original se encuentra en una posición obvia en la página del artículo, de lo contrario se reserva el derecho de ejercer la responsabilidad legal.