F'dan l-artikolu, se nesploraw kif niskjeraw Elasticsearch u Kibana nużaw Docker Compose. Dawn huma żewġ komponenti ewlenin tal-ELK Stack( Elasticsearch, Logstash, Kibana), li jgħinuk tfittex, tanalizza, u Ħares id-dejta b'mod effettiv. Hawn taħt jinsabu l-konfigurazzjonijiet dettaljati u kif jaħdem kull komponent.
1. Elasticsearch
a. Konfigurazzjoni Bażika
Elasticsearch huwa kkonfigurat biex jaħdem f'kontenitur Docker bil-parametri li ġejjin:
Image: L-immaġni uffiċjali Elasticsearch, il-verżjoni
8.17.2, tintuża.Modalità ta' nodu wieħed: Ippermettiet permezz tal-varjabbli ambjentali
discovery.type=single-node.Sigurtà: Is-sigurtà X-Pack hija attivata(
xpack.security.enabled=true), u l-password għall-elasticutent hija ssettjata għalYVG6PKplG6ugGOw.Netwerk: Elasticsearch jisma' fuq l-interfaces tan-netwerk kollha(
network.host=0.0.0.0).JVM Memory: Konfigurat bi
-Xms1g(memorja inizjali) u-Xmx1g(memorja massima).
b. Ports u Volumes
Ports: Port
9200(HTTP) u9300(komunikazzjoni interna) huma mmappjati mill-kontenitur għall-host.Volumes: Id-dejta ta' Elasticsearch hija maħżuna fil-
elasticsearch-datavolum.
c. Kontroll tas-saħħa
Kontroll tas-saħħa huwa stabbilit biex jimmonitorja Elasticsearch l-istatus billi jsejjaħ l- /_cluster/health API mal elastic -utent. Jekk l-API tonqos milli tirrispondi, il-kontenitur jerġa 'jibda.
2. Kibana
a. Konfigurazzjoni Bażika
Kibana huwa kkonfigurat biex jgħaqqad Elasticsearch u jaħdem f'kontenitur Docker bil-parametri li ġejjin:
Image: L-immaġni uffiċjali Kibana, il-verżjoni
8.17.2, tintuża.Elasticsearch Konnessjoni: L Elasticsearch -indirizz huwa ssettjat għal
http://elasticsearch:9200.Awtentikazzjoni: Kibana juża
kibana_userbil-passwordYVG6PKplG6ugGOwbiex jgħaqqad ma' Elasticsearch.
b. Ports u Netwerks
Ports: Il-port
5601huwa mmappjat mill-kontenitur għall-host biex jaċċessa l- Kibana interface.Netwerks: Kibana huwa konness mal-
elk-network.
c. Dipendenza fuq Elasticsearch
Kibana jibda biss wara Elasticsearch li jkun lest, u jiżgura konnessjoni b'suċċess bejn iż-żewġ servizzi.
3. Volum u Netwerk
a. Volum
elasticsearch-data: Dan il-volum jintuża biex jaħżen Elasticsearch id-dejta, u jiżgura l-persistenza tad-dejta anki jekk il-kontenitur jitħassar.
b. Netwerk
elk-network:
bridgeJinħoloq netwerk biex jgħaqqad u Elasticsearch servizzi Kibana.
4. Kif tuża
a. Jibdew is-Servizzi
Biex tibda Elasticsearch u Kibana, mexxi l-kmand li ġej:
docker-compose up -d
b. Ħolqien ta' Kibana Utent(Jekk Meħtieġa)
Jekk trid tuża utent iddedikat għal Kibana, tista 'toħloq wieħed bil-kmand li ġej:
docker exec -it elasticsearch /bin/elasticsearch-users useradd kibana_user -p you_password-r kibana_system
Biex tuża password token minflok password, tista' toħloq waħda bil-kmand li ġej:
docker exec -it elasticsearch /usr/share/elasticsearch/bin/elasticsearch-service-tokens create elastic/kibana kibana-token
5. Issolvi l-problemi
Jekk tiltaqa' ma' żbalji, tista' tiċċekkja r-reġistri tal-kontejners billi tuża:
docker logs elasticsearch docker logs kibanaBiex terġa 'tibda Kibana:
Kontenut sħiħ tal- Docker Compose Fajl
Hawn taħt hemm il-kontenut sħiħ tal- docker-compose-els.yml fajl:
version: '3.7'
services:
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:8.17.2
container_name: elasticsearch
environment:
- discovery.type=single-node
- xpack.security.enabled=true
- ELASTIC_PASSWORD=you_password
- network.host=0.0.0.0
- ES_JAVA_OPTS=-Xms1g -Xmx1g
ports:
- '9200:9200'
- '9300:9300'
volumes:
- elasticsearch-data:/usr/share/elasticsearch/data
ulimits:
memlock:
soft: -1
hard: -1
networks:
- elk-network
healthcheck:
test: ["CMD-SHELL", "curl -u elastic:YVG6PKplG6ugGOw --silent --fail localhost:9200/_cluster/health || exit 1"]
interval: 10s
retries: 5
start_period: 30s
timeout: 5s
kibana:
image: docker.elastic.co/kibana/kibana:8.17.2
container_name: kibana
ports:
- '5601:5601'
environment:
- ELASTICSEARCH_HOSTS=http://elasticsearch:9200
- ELASTICSEARCH_USERNAME=kibana_user
- ELASTICSEARCH_PASSWORD=you_password
networks:
- elk-network
depends_on:
elasticsearch:
condition: service_healthy
volumes:
elasticsearch-data:
driver: local
networks:
elk-network:
driver: bridge
Konklużjoni
B'din il Docker Compose -konfigurazzjoni, tista 'faċilment tuża Elasticsearch u Kibana taqdi l-ħtiġijiet tiegħek ta' tfittxija, analiżi u viżwalizzazzjoni tad-dejta. Ippersonalizza u estendi din il-konfigurazzjoni biex taqbel mar-rekwiżiti speċifiċi tal-proġett tiegħek!

