๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
DataBase

[Data ์ˆ˜์ง‘ ๋ฐ ์—ฐ๋™] filebeat, kafka, logstash ์‚ฌ์šฉํ•ด์„œ elasticsearch ๋ฐ์ดํ„ฐ ์—…๋กœ๋“œ ํ•˜๋Š” ๋ฐฉ๋ฒ•

by HANdeveloper 2024. 3. 19.
๐Ÿ’กflow ์ดํ•ด

 

1. ์šฐ์„  ๋‚ด๊ฐ€ ์ˆ˜์ง‘ํ•˜๋ ค๋Š” ๋ฐ์ดํ„ฐ์˜ ๊ตฌ์กฐ๋Š” master / detail ๋กœ ๋‚˜๋ˆ„์–ด์ ธ ์žˆ์Œ

  - ์ธ๋ฑ์Šค ํ•˜๋‚˜๋กœ field๋ผ๋Š” ๊ตฌ๋ถ„์ž๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘ํ•  ์˜ˆ์ •

2. filebeat.yml์—์„œ data input, output ์„ธํŒ…ํ•ด์คŒ

3. kafka ํ† ํ”ฝ์œผ๋กœ ์œ„ ํŒŒ์ผ์„ ์ˆ˜์ง‘ํ•˜๋„๋ก ํ•จ

4. logstash๋Š” ํ† ํ”ฝ๊ณผ ์—ฐ๊ฒฐํ•˜์—ฌ ํ† ํ”ฝ ์•ˆ์— ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์ง‘ํ•˜์—ฌ elastic์— ๋ฟŒ๋ ค์คŒ

filebeat > kafka > logstash > elasticsearch

 

๐Ÿ’ก์‹ค์Šต

 

1. filebeat.yml (permission X์ธ ๊ฒฝ์šฐ sudo๋กœ ์ง„ํ–‰)

filebeat inputs ๋ถ€๋ถ„์— fields๋กœ master / detail ๊ตฌ๋ถ„ํ•ด์ฃผ๋„๋ก ํ•จ

๋‹ค๋ฅธ output๋ถ€๋ถ„ ์ฃผ์„์ฒ˜๋ฆฌํ•ด์ฃผ๊ณ  kafka ๋ถ€๋ถ„๋งŒ ์ฃผ์„์ œ๊ฑฐํ•˜์—ฌ ํ† ํ”ฝ ์„ค์ •ํ•ด์ฃผ๋„๋ก ํ•จ 

(hosts์— https๋ถ™์ด์ง€ ์•Š๋„๋ก ์œ ์˜ํ•˜๊ธฐ!)

์ €์žฅ ํ›„ ํŒŒ์ผ๋น„ํŠธ ์‹คํ–‰ํ•˜๊ธฐ ./filebeat -e (sudo ./filebeat -e)

 

2. ์นดํ”„์นด ํด๋”๋กœ ์ด๋™ํ•˜์—ฌ ์„œ๋ฒ„ ๊ธฐ๋™์‹œํ‚ค๊ธฐ

./bin/kafka-server-start.sh ./config/kraft/server.properties

 

3. topic list ํ™•์ธํ•˜๊ธฐ

bin/kafka-topics.sh --bootstrap-server localhost:9092 --list

apple-topic ๋“ค์–ด์˜จ ๊ฑธ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Œ

๊ทธ๋Ÿผ ์ € ํ† ํ”ฝ์•ˆ์— filebeat๋กœ ์œ ๋ฐ์ดํ„ฐ๊ฐ€ ์ˆ˜์ง‘๋˜์–ด ์žˆ๋Š” ๊ฒƒ!

 

์•„๋ž˜ ๋ช…๋ น์–ด ํ†ตํ•ด์„œ ํ† ํ”ฝ ์•ˆ ๋ฐ์ดํ„ฐ๋“ค์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Œ

bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic apple-topic

 

4. ๋กœ๊ทธ์Šคํƒœ์‹œ ํด๋”๋กœ ์ด๋™ (์•„๋ž˜ ๋ช…๋ น์–ด ์ž…๋ ฅ)

vi kafka.conf

์•„๋ž˜์™€ ๊ฐ™์ด ์ž…๋ ฅํ•ด์คŒ
input {
 kafka {
    bootstrap_servers => "localhost:9092"
    group_id => "logstash"
    topics => ["apple-topic"] 
    auto_offset_reset => "earliest"
  }
}

output {
  elasticsearch {
    hosts => ["https://localhost:9200"]
    index => "apple_test"
    ssl_certificate_verification => false
    user => "elastic"
    password => "elastic"
  }
}

  

5. ๋กœ๊ทธ์Šคํƒœ์‹œ ์‹คํ–‰ - elasticsearch๋กœ ์ธ๋ฑ์Šค ์ƒ์„ฑ๋˜์–ด ์ถ”๊ฐ€๋จ

bin/logstash -f kafka.conf

 

 

'DataBase' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[Kafka] Additional Components  (0) 2024.04.09
[Kafka] Core Overview  (0) 2024.04.02
[Elastic Search] Lab 5.3 aggregations  (0) 2024.01.30
[Elastic Search] Analyzer (tokenizer, char_filter, token filter)  (1) 2024.01.10
[Elastic Search] Multi cluster operations (CCR,CCS)  (0) 2024.01.10

๋Œ“๊ธ€