Kibana: ν”ŒλŸ¬κ·ΈμΈ μ„€μΉ˜λ₯Ό μœ„ν•΄ http/https ν”„λ‘μ‹œ ν—ˆμš©

에 λ§Œλ“  2016λ…„ 01μ›” 13일  Β·  20μ½”λ©˜νŠΈ  Β·  좜처: elastic/kibana

λ³΄μ•ˆ λ„€νŠΈμ›Œν¬ 뒀에 μžˆλŠ” 고객은 'kibana ν”ŒλŸ¬κ·ΈμΈ --install'을 μ‚¬μš©ν•˜μ—¬ Kibana ν”ŒλŸ¬κ·ΈμΈμ„ μ„€μΉ˜ν•  수 μ—†μŠ΅λ‹ˆλ‹€. ν”ŒλŸ¬κ·ΈμΈ μ €μž₯μ†Œμ— λŒ€ν•œ ν˜ΈμΆœμ— μ‚¬μš©ν•  http λ˜λŠ” https ν”„λ‘μ‹œλ₯Ό κ΅¬μ„±ν•˜λŠ” κΈ°λŠ₯이 ν•„μš”ν•©λ‹ˆλ‹€.

Operations enhancement

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

Elasticsearch의 ν”ŒλŸ¬κ·ΈμΈ λͺ…령이 ν”„λ‘μ‹œ 지정을 μ§€μ›ν•˜κΈ° λ•Œλ¬Έμ— μœ„μ—μ„œ 직접 μ§€μ›ν•˜μ§€ μ•ŠλŠ” 이유 쀑 ν•˜λ‚˜λŠ” μœ νš¨ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.
https://www.elastic.co/guide/en/elasticsearch/reference/1.6/modules-plugins.html

bin/plugin -DproxyHost=host_name -DproxyPort=port_number --install mobz/elasticsearch-head

λͺ¨λ“  20 λŒ“κΈ€

@seang-es μš°λ¦¬λŠ” HTTP Connect 터널링 을 μ‚¬μš©ν•˜λŠ” μ†”λ£¨μ…˜μ„ κ΅¬ν˜„ν•  수 μžˆμŠ΅λ‹ˆκΉŒ?

@seang-es와 λ…Όμ˜ν•œ ν›„ λ³΄μ•ˆ λ„€νŠΈμ›Œν¬ 뒀에 μžˆλŠ” μ‚¬μš©μžλŠ” 자체 http ν”„λ‘μ‹œ μ„œλ²„λ₯Ό κ°–κ³  있으며 λ‹¨μˆœνžˆ μ΄λŸ¬ν•œ ν”„λ‘μ‹œλ₯Ό 톡해 Kibanaλ₯Ό μ§€μ‹œν•˜λŠ” κΈ°λŠ₯을 μ›ν•˜λŠ” κ²ƒμœΌλ‘œ λ³΄μž…λ‹ˆλ‹€.

μ‚¬μš©μžλŠ” kibana.yml의 μ˜΅μ…˜μ„ μˆ˜μ •ν•˜μ—¬ host 및 port λ₯Ό ν”„λ‘μ‹œ μ„œλ²„λ‘œ μ„€μ •ν•˜λ €κ³  ν•©λ‹ˆλ‹€.

인증 ν”„λ‘μ‹œ 섀정도 ν•„μš”ν•©λ‹ˆλ‹€.
κ΅¬ν˜„μ΄ μ™„λ£Œλ˜κΈ°λ₯Ό κΈ°λŒ€ν•©λ‹ˆλ‹€.

예, μ—¬κΈ°μ—μ„œ CONNECTλ₯Ό μ›ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. κ·Έλƒ₯ ν‰λ²”ν•œ 였래된 http ν”„λ‘μ‹œμž…λ‹ˆλ‹€.

@seang-es Elasticsearch의 bin/plugin 와 같은 λ‹€λ₯Έ ν”ŒλŸ¬κ·ΈμΈ μ„€μΉ˜ ν”„λ‘œκ·Έλž¨μ—μ„œλŠ” μ–΄λ–»κ²Œ μž‘λ™ν•©λ‹ˆκΉŒ? μ„€μΉ˜ ν”„λ‘œκ·Έλž¨μ΄ 인증된 ν”„λ‘μ‹œλ₯Ό μ„€μ •ν•˜κΈ° μœ„ν•œ CLI μ˜΅μ…˜μ΄ ν‘œμ‹œλ˜μ§€ μ•ŠμŠ΅λ‹ˆκΉŒ? λ˜ν•œ 이것에 λŒ€ν•΄ μƒκ°ν•œ 후에 이것은 OS μˆ˜μ€€μ—μ„œ μ²˜λ¦¬λ˜μ–΄μ•Όν•˜μ§€ μ•ŠμŠ΅λ‹ˆκΉŒ?

@spalger 및 @rashidkpc 와 λ…Όμ˜ν•œ ν›„ μ—¬κΈ°μ—μ„œ CONNECTλ₯Ό μ‚¬μš©ν•˜μ§€ μ•ŠμœΌλ €λŠ” μ΄μœ λŠ” λ§Žμ€ νšŒμ‚¬μ—μ„œ μ§€μ›ν•˜μ§€ μ•ŠκΈ° λ•Œλ¬Έμž…λ‹ˆλ‹€. μ œμ•ˆλœ μ˜΅μ…˜μ€ λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.

  1. 이것이 μ‚¬μš©μžμ—κ²Œ μ •λ§λ‘œ ν•„μš”ν•œμ§€ λ˜λŠ” μ‚¬μš©μžκ°€ λ™μΌν•œ μž‘μ—…μ„ μˆ˜ν–‰ν•  수 μžˆλ„λ‘ ν•˜λŠ” λ‹€λ₯Έ ν•΄κ²° 방법이 μžˆλŠ”μ§€ ν™•μΈν•˜μ‹­μ‹œμ˜€. @seang-es, 고객이 Elasticsearch ν”ŒλŸ¬κ·ΈμΈμ— λŒ€ν•΄ 이 문제λ₯Ό ν•΄κ²°ν•˜λŠ” 방법을 더 잘 이해할 수 μžˆλ„λ‘ @simianhacker 의 μ˜κ²¬μ— 응닡해 μ£Όμ‹œκ² μŠ΅λ‹ˆκΉŒ?
  2. λ‚œνŒŒμ„ μ΄ ν”„λ‘μ‹œλ₯Ό μ§€μ›ν•˜μ§€ μ•ŠκΈ° λ•Œλ¬Έμ— wreck.js λŒ€μ‹  request λ…Έλ“œ λͺ¨λ“ˆμ„ μ‚¬μš©ν•˜λ„λ‘ installedPlugins λͺ¨λ“ˆμ„ λ‹€μ‹œ μž‘μ„±ν•©λ‹ˆλ‹€.
  3. wreck.js ν™•μž₯ν•˜λŠ” http ν”„λ‘μ‹œ ν”ŒλŸ¬κ·ΈμΈμ„ μž‘μ„±ν•˜μ‹­μ‹œμ˜€.

3가지 쀑 이것이 많이 ν•„μš”ν•œ κΈ°λŠ₯이라면 μ˜΅μ…˜ 2λ₯Ό κ΅¬ν˜„ν•˜λŠ” 것이 κ°€μž₯ νŽΈμ•ˆν•©λ‹ˆλ‹€.

μΆ”κ°€ λ…Όμ˜ 끝에 Kibanaμ—μ„œ ν”ŒλŸ¬κ·ΈμΈ μ„€μΉ˜λ₯Ό μœ„ν•΄ http/https ν”„λ‘μ‹œλ₯Ό μΆ”κ°€ν•˜μ§€ μ•ŠκΈ°λ‘œ κ²°μ •ν–ˆμŠ΅λ‹ˆλ‹€. κ·Έ 주된 μ΄μœ λŠ” Elasticsearch도 이λ₯Ό μ§€μ›ν•˜μ§€ μ•Šκ³  파일 μ„€μΉ˜ ν”„λ‘œκ·Έλž¨μ„ μ‚¬μš©ν•˜μ—¬ μ˜€ν”„λΌμΈ μ„€μΉ˜λ₯Ό μˆ˜ν–‰ν•˜λŠ” ν•΄κ²° 방법이 있기 λ•Œλ¬Έμž…λ‹ˆλ‹€.

예λ₯Ό λ“€μ–΄:

bin/kibana plugin --install --url file:///home/username/plugin.tar.gz

_μ°Έκ³ _: μ ˆλŒ€ 경둜λ₯Ό μ‚¬μš©ν•΄μ•Ό ν•©λ‹ˆλ‹€ .

λ”°λΌμ„œ P1 λ ˆμ΄λΈ”μ„ μ œκ±°ν•˜κ³  이 문제λ₯Ό λ‹«μŠ΅λ‹ˆλ‹€.

둜컬 λ””λ ‰ν„°λ¦¬μ—μ„œ 파일 μ„€μΉ˜λ₯Ό ν¬ν•¨ν•˜λ„λ‘ Kibana ν”ŒλŸ¬κ·ΈμΈ μ„€λͺ…μ„œλ₯Ό μ—…λ°μ΄νŠΈν•˜κΈ° μœ„ν•΄ 문제 #5998을 μ œμΆœν–ˆμŠ΅λ‹ˆλ‹€.

Elasticsearch의 ν”ŒλŸ¬κ·ΈμΈ λͺ…령이 ν”„λ‘μ‹œ 지정을 μ§€μ›ν•˜κΈ° λ•Œλ¬Έμ— μœ„μ—μ„œ 직접 μ§€μ›ν•˜μ§€ μ•ŠλŠ” 이유 쀑 ν•˜λ‚˜λŠ” μœ νš¨ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.
https://www.elastic.co/guide/en/elasticsearch/reference/1.6/modules-plugins.html

bin/plugin -DproxyHost=host_name -DproxyPort=port_number --install mobz/elasticsearch-head

@avallen νŒŒμΌμ„ λ‹€μš΄λ‘œλ“œν•œ λ‹€μŒ μˆ˜λ™μœΌλ‘œ μ„€μΉ˜ν•΄λ„ λ©λ‹ˆκΉŒ?

이 μ†Œμœ„ ν•΄κ²° 방법이 μž‘λ™ν•˜μ§€ μ•ŠλŠ” 것 κ°™μŠ΅λ‹ˆλ‹€.

$bin/kibana plugin --install --url file:///opt/kibana-4.4.1-linux-x64/marvel-latest.tar.gz
Invalid install option. Please use the format <org>/<plugin>/<version>.

λ˜ν•œ ν”„λ‘μ‹œ 및/λ˜λŠ” μ˜€ν”„λΌμΈ ν”ŒλŸ¬κ·ΈμΈ μ„€μΉ˜λ₯Ό ν—ˆμš©ν•˜μ§€ μ•ŠμœΌλ©΄ 기본적으둜 쑰직의 90%κ°€ 이 버전을 μ‚¬μš©ν•˜μ§€ λͺ»ν•˜κ²Œ λ©λ‹ˆλ‹€...

μ˜€ν”„λΌμΈ μ„€μΉ˜μ˜ μ˜¬λ°”λ₯Έ 방법은 λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.

bin/kibana plugin -i marvel -u file:///tmp/marvel-latest.tar.gz

@stormpython PI λ ˆμ΄λΈ”μ„ μ œκ±°ν•΄μ•Ό ν•˜μ§€λ§Œ μ—΄λ¦° μƒνƒœλ‘œ μœ μ§€ν•˜λ©΄ μ•ˆ λ˜λ‚˜μš”?

μ΄λ ‡κ²Œ ν•˜λ©΄ HTTP ν”„λ‘μ‹œ λ’€μ—μ„œ μ˜¬λ°”λ₯΄κ²Œ μž‘λ™ν•˜λŠ” Dockerfile이 μ€‘λ‹¨λ©λ‹ˆλ‹€.

@stormpython - λͺ‡ 가지 이유둜 우슀꽝슀러운 μ„€λͺ…:

  • ElasticsearchλŠ” λ°œμ‹  ν”„λ‘μ‹œλ₯Ό 지원 ν•©λ‹ˆλ‹€(ν”ŒλŸ¬κ·ΈμΈμ„ μ„€μΉ˜ν•˜λŠ” μœ μΌν•œ 방법이기 λ•Œλ¬Έμ— μ•Œκ³  μžˆμŠ΅λ‹ˆλ‹€).
  • 합리적인 κ΄€λ¦¬μžλŠ” 데이터 μ„Όν„°(μ„œλ²„)μ—μ„œ λ¬΄μ œν•œμœΌλ‘œ λ‚˜κ°€λŠ” νŠΈλž˜ν”½μ„ ν—ˆμš©ν•˜μ§€ μ•ŠμœΌλ―€λ‘œ ν”ŒλŸ¬κ·ΈμΈ μ„€μΉ˜κ°€ λ‚˜κ°€λŠ” ν”„λ‘μ‹œλ₯Ό 톡해 진행될 κ²ƒμœΌλ‘œ μ˜ˆμƒν•΄μ•Ό ν•©λ‹ˆλ‹€. 기본적으둜 Kibanaκ°€ λ°œμ‹  ν”„λ‘μ‹œλ₯Ό 톡해 ν”ŒλŸ¬κ·ΈμΈμ„ μ„€μΉ˜ν•  수 μ—†μœΌλ©΄ ν”ŒλŸ¬κ·ΈμΈμ„ μ „ν˜€ μ„€μΉ˜ν•  수 μ—†λ‹€λŠ” κ²ƒμž…λ‹ˆλ‹€.
  • μ œμ•ˆν•œ ν•΄κ²° 방법은 관리 및 ꡬ성 관리(예: Puppet, Chef)λ₯Ό μƒλ‹Ήνžˆ λ³΅μž‘ν•˜κ²Œ λ§Œλ“­λ‹ˆλ‹€. 그리고 ν˜Όλž€μ„ μ•ΌκΈ°ν•©λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄ μ„ΌμŠ€ ν”ŒλŸ¬κ·ΈμΈ μ„€μΉ˜ 문제( 문제 7400 μ°Έμ‘°)κ°€ 파일 μ„€μΉ˜(ν•΄κ²° 방법)둜 μΈν•œ 것인지 ν™•μ‹€ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

Guyz, λ…Όμ˜ μ—¬λΆ€, κ²°μ • μ—¬λΆ€, λ‹€μ‹œ 생각해야 ν•©λ‹ˆλ‹€. 단 ν•˜λ‚˜μ˜ κ²°μ •λ§Œμ΄ μ˜¬λ°”λ₯Έ 결정이며(λ˜‘λ˜‘ν•œ κ²°μ •) 당신은 그것을 λ†“μ³€μŠ΅λ‹ˆλ‹€.

ν”„λ‘œμ νŠΈ μ „λ°˜μ— 걸쳐 μ„€μΉ˜ 일관성이 μ€‘μš”ν•˜λ―€λ‘œ Elasticsearchμ—μ„œ ν”„λ‘μ‹œ 지원을 μ‚΄νŽ΄λ³΄κ² μŠ΅λ‹ˆλ‹€.

puppet λ₯Ό μ‚¬μš©ν•˜κ³  νšŒμ‚¬ λ°©ν™”λ²½ λ’€μ—μ„œ elasticsearch 및 logstash 에 λŒ€ν•œ ν”ŒλŸ¬κ·ΈμΈμ„ μ„€μΉ˜ν•  수 μžˆμŠ΅λ‹ˆλ‹€( kibana μ œμ™Έ).

(1) exec μΈμŠ€ν„΄μŠ€μ—μ„œ ν™˜κ²½ λ³€μˆ˜ μ„€μ •

exec {
    "$name":
        command     => $command,
        creates     => $creates,
        environment => [ "http_proxy=http://1.2.3.4:3128" ],
        logoutput   => $logoutput,
        onlyif      => $onlyif,
        path        => ["/bin", "/sbin", "/usr/bin", "/usr/sbin"],
        returns     => [0,74],
    ;
}

λ˜λŠ”

(2) ν”„λ‘μ‹œ λ§€κ°œλ³€μˆ˜λ₯Ό Java에 μ „λ‹¬ν•©λ‹ˆλ‹€.

"${bin_plugin} -DproxyHost=1.2.3.4 -DproxyPort=3128 install -b --verbose $name"

λ‹€μŒμ€ ν”ŒλŸ¬κ·ΈμΈ μ„€μΉ˜λ₯Ό μœ„ν•œ ν”„λ‘μ‹œ 지원을 μΆ”κ°€ν•˜λŠ” #7967 μ‹œλ„μž…λ‹ˆλ‹€.

이것은 #12753으둜 μˆ˜μ •λ˜μ—ˆμœΌλ©° 6.1κ³Ό ν•¨κ»˜ λ¦΄λ¦¬μŠ€λ©λ‹ˆλ‹€. ν”ŒλŸ¬κ·ΈμΈ λͺ…령은 http_proxy , https_proxy 및 no_proxy ν™˜κ²½ λ³€μˆ˜λ₯Ό μ΄ν•΄ν•©λ‹ˆλ‹€.

쒋은 μ†Œμ‹ @timroes !
큰 κ°μ‚¬ν•©λ‹ˆλ‹€!

이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰