AWS EC2 μΈμŠ€ν„΄μŠ€μ— μ„€μΉ˜λœ μ—˜λΌμŠ€ν‹±μ„œμΉ˜μ— λŒ€ν•΄ ν‚€λ°”λ‚˜λ₯Ό μ„€μΉ˜ν•˜κ³  μ‹€ν–‰ν•˜λ‹ˆ μœ„μ™€ 같이 μ—˜λΌμŠ€ν‹±μ„œμΉ˜ ν΄λŸ¬μŠ€ν„°μ— μ—°κ²°ν•  수 μ—†λ‹€λŠ” 화면이 λ…ΈμΆœλ˜μ—ˆμŠ΅λ‹ˆλ‹€. νšŒμ‚¬μ—μ„œ 이 λ¬Έμ œμ— λŒ€ν•΄ 머리λ₯Ό μ‹Έλ§€λ©΄μ„œ μ—¬λŸ¬κ°€μ§€λ₯Ό μ‹œλ„ν•΄λ³΄μ•˜μœΌλ‚˜ ν•΄κ²°λ˜μ§€ μ•Šμ•˜κ³  μ§‘μ—μ™€μ„œ μ‰¬λŠ” 김에 이와 κ΄€λ ¨λœ 정보λ₯Ό κ²€μƒ‰ν•΄λ³΄λ©΄μ„œ μ—¬λŸ¬κ°€μ§€ 확인 끝에 원인을 μ°Ύμ•„λ‚΄μ–΄ 이 글을 μž‘μ„±ν•©λ‹ˆλ‹€.

ν‚€λ°”λ‚˜ 응닡 νŽ˜μ΄λ‘œλ“œ

This Kibana installation has strict security requirements enabled that your current browser does not meet.

λ¨Όμ €, μ›Ή νŽ˜μ΄μ§€ ν™”λ©΄μ—μ„œλŠ” μ—˜λΌμŠ€ν‹±μ„œμΉ˜ ν΄λŸ¬μŠ€ν„°μ— μ—°κ²°ν•  수 μ—†λ‹€λŠ” λ‚΄μš©μ˜ λ©”μ‹œμ§€μ˜€μ§€λ§Œ μ‹€μ œλ‘œ ν‚€λ°”λ‚˜λ‘œλΆ€ν„° 받은 응닡 νŽ˜μ΄λ‘œλ“œλ₯Ό ν™•μΈν•΄λ³΄λ‹ˆ Content Security Policy κ΄€λ ¨λœ 였λ₯˜ λ‚΄μš©μ΄μ—ˆμŠ΅λ‹ˆλ‹€. 그리고 크둬 개발자 도ꡬ μ½˜μ†”μ—λŠ” μ•„λž˜μ™€ 같은 였λ₯˜ λ‘œκ·Έλ„ ν‘œμ‹œλ¨μ„ ν™•μΈν–ˆμŠ΅λ‹ˆλ‹€.

Refused to execute inline script because it violates the following Content Security Policy directive: "script-src 'unsafe-eval' 'nonce-LQ+1u6/j7+lb3KNy'".
Either the 'unsafe-inline' keyword, a hash ('sha256-SHHSeLc0bp6xt4BoVVyUy+3IbVqp3ujLaR+s+kSP5UI='), or a nonce ('nonce-...') is required to enable inline execution.  

CSP λΉ„ν™œμ„±ν™” μ‹œλ„

csp.strict: false

μ—˜λΌμŠ€ν‹±μ„œμΉ˜ ν΄λŸ¬μŠ€ν„°μ— μ—°κ²°ν•  수 μ—†λŠ” μ‚¬μœ μΈμ§€ λ‹€λ₯Έ λ¬Έμ œμΈμ§€λ₯Ό νŒλ‹¨ν•  수 μ—†μ–΄μ„œ CSPλ₯Ό λΉ„ν™œμ„±ν™” ν•΄λ³΄μ•˜μŠ΅λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜, CSP λΉ„ν™œμ„±ν™” 후에도 ν‚€λ°”λ‚˜μ—μ„œλŠ” λ™μΌν•˜κ²Œ μ—˜λΌμŠ€ν‹±μ„œμΉ˜ ν΄λŸ¬μŠ€ν„°μ— μ—°κ²°ν•  수 μ—†λ‹€κ³  ν‘œμ‹œλ˜μ—ˆκΈ°μ— 이둜 μΈν•œ λ¬Έμ œλŠ” μ•„λ‹˜μ„ 확인할 수 μžˆμ—ˆμŠ΅λ‹ˆλ‹€.

ν‚€λ°”λ‚˜ 둜그

사싀 ν‚€λ°”λ‚˜μ—μ„œ μ—˜λΌμŠ€ν‹±μ„œμΉ˜ ν΄λŸ¬μŠ€ν„°μ— μ—°κ²°ν•  수 μ—†λ‹€λŠ” λ©”μ‹œμ§€λ₯Ό λ³΄κ³ λ‚˜μ„œλŠ” μ—˜λΌμŠ€ν‹±μ„œμΉ˜μ™€ ν‚€λ°”λ‚˜μ˜ μ„€μ • 파일의 λ¬Έμ œκ°€ μ•„λ‹κΉŒ μ—¬λŸ¬κ°€μ§€ μ‚΄νŽ΄λ³΄μ•˜μ§€λ§Œ λ‹€λ₯Έ ν™˜κ²½μ—μ„œ μ‚¬μš©μ€‘μΈ μ„€μ •κ³Ό λ‹€λ₯Όλ°”κ°€ μ—†μ—ˆκΈ°μ— ν‚€λ°”λ‚˜ 둜그λ₯Ό 확인해야 ν–ˆμŠ΅λ‹ˆλ‹€.

Chromium with headless_shell

Reporting plugin self-check generated a warning: Error: Could not close browser client handle

κ°€μž₯ λ¨Όμ € μ˜μ‹¬μŠ€λŸ¬μš΄ μœ„ λ‘œκ·Έμ— λŒ€ν•΄ κ²€μƒ‰ν•΄λ³΄λ‹ˆ kibana/issues/53829μ—μ„œ μƒŒλ“œλ°•μŠ€ μ˜΅μ…˜μ„ μ„€μ •ν•œ 것을 보고 μ‹œλ„ν•΄λ³΄μ•˜μŠ΅λ‹ˆλ‹€.

xpack.reporting.capture.browser.chromium.disableSandbox: true

μœ„ μ‘°μΉ˜μ™€ ν•¨κ»˜ EC2에 λ…Έλ“œμ™€ ν¬λ‘œλ―Έμ›€ νŒ¨ν‚€μ§€λ₯Ό 직접 μ„€μΉ˜κΉŒμ§€ ν•΄λ³΄μ•˜μ§€λ§Œ μœ„ λ¬Έμ œκ°€ ν•΄μ†Œλ˜μ§€ μ•Šμ•˜μŠ΅λ‹ˆλ‹€.

ν”ŒλŸ¬κ·ΈμΈ 둜그

[error][status][plugin:xpack_main@7.3.2] Status changed from yellow to red - [data] Elasticsearch cluster did not respond with license information.

μ§‘μ—μ™€μ„œ ν‚€λ°”λ‚˜ 둜그λ₯Ό μ’€ 더 μžμ„Ένžˆ μ‚΄νŽ΄λ³΄λ‹ˆ μœ„μ™€ 같은 였λ₯˜ λ‘œκ·Έκ°€ λ°œμƒν•˜λŠ” 것을 ν™•μΈν•˜μ˜€μŠ΅λ‹ˆλ‹€. 사싀 νšŒμ‚¬μ—μ„œλŠ” ν”ŒλŸ¬κ·ΈμΈ 였λ₯˜μ΄λ―€λ‘œ ν‚€λ°”λ‚˜μ—μ„œ μ—˜λΌμŠ€ν‹±μ„œμΉ˜ ν΄λŸ¬μŠ€ν„°μ— μ—°κ²°ν•  수 μ—†λŠ” μ‚¬μœ μ™€λŠ” 상관없닀고 νŒλ‹¨ν–ˆμ—ˆμŠ΅λ‹ˆλ‹€. μ™œλƒν•˜λ©΄ μ—˜λΌμŠ€ν‹±μ„œμΉ˜μ— ν‚€λ°”λ‚˜ κ΄€λ ¨ μΈλ±μŠ€κΉŒμ§€λŠ” λ§Œλ“€μ–΄μ§€λ―€λ‘œ μ—˜λΌμŠ€ν‹±μ„œμΉ˜ ν΄λŸ¬μŠ€ν„°μ™€ 톡신이 λ˜λŠ” 상황이라고 생각할 수 밖에 μ—†μ—ˆμ„ν…Œλ‹ˆκΉŒμš”.

μ•„λ¬΄νŠΌ μœ„ λ‘œκ·Έμ— λŒ€ν•΄μ„œ κ²€μƒ‰ν•΄λ³΄λ‹ˆ kibana/issues/36079에 λΌμ΄μ„ΌμŠ€ 정보λ₯Ό ν™•μΈν•˜λŠ” λŒ“κΈ€μ΄ λˆˆμ— λ“€μ–΄μ™”κ³  λΌμ΄μ„ΌμŠ€ 정보λ₯Ό ν™•μΈν•΄λ³΄μ•˜μŠ΅λ‹ˆλ‹€.

[ec2-user ~]$ curl http://localhost:9200/_xpack/license?pretty
{ }

사싀 λΌμ΄μ„ΌμŠ€κ°€ μ—†λ‹€κ³  μƒκ°ν•˜μ§€λŠ” μ•Šμ•˜κ³  ν˜Ήμ‹œλ‚˜ νŠΈλΌμ΄μ–Ό λΌμ΄μ„ΌμŠ€μΈλ° λ§Œλ£Œλ˜μ–΄μ„œ 그런 것인가라고 μƒκ°λ˜ License Settings에 λ‚˜μ™€μžˆλŠ”λŒ€λ‘œ 베이직 λΌμ΄μ„ΌμŠ€ μœ ν˜•μ„ μ§€μ •ν•˜κ³  ν΄λŸ¬μŠ€ν„°λ₯Ό λ‹€μ‹œ μ‹€ν–‰ν•˜μ˜€μ§€λ§Œ 증상을 λ™μΌν–ˆμŠ΅λ‹ˆλ‹€.

κ·ΈλŸ¬λ‚˜, μ •λ§λ‘œ μ—˜λΌμŠ€ν‹±μ„œμΉ˜μ—λŠ” λΌμ΄μ„ΌμŠ€ 정보가 μ—†μ—ˆκ³  Start basic APIλ₯Ό 톡해 베이직 λΌμ΄μ„ΌμŠ€λ₯Ό μ‹œμž‘ν•  수 μžˆλ‹€κ³  ν•˜μ—¬ μ•„λž˜μ™€ 같이 λΌμ΄μ„ΌμŠ€λ₯Ό μΆ”κ°€ν•˜μ˜€μŠ΅λ‹ˆλ‹€.

[ec2-user ~]$ curl -X POST http://localhost:9200/_license/start_basic?pretty
{
  "acknowledged" : true,
  "basic_was_started" : true
}
[ec2-user ~]$ curl http://localhost:9200/_xpack/license?pretty
{
  "license" : {
    "status" : "active",
    "uid" : "fb6a45f5-4f26-45fe-9889-2380b9ec8801",
    "type" : "basic",
    "issue_date" : "2022-08-18T14:51:26.602Z",
    "issue_date_in_millis" : 1660834286602,
    "max_nodes" : 1000,
    "issued_to" : "cluster",
    "issuer" : "elasticsearch",
    "start_date_in_millis" : -1
  }
}

μ—˜λΌμŠ€ν‹±μ„œμΉ˜ ν΄λŸ¬μŠ€ν„°μ— 베이직 λΌμ΄μ„ΌμŠ€ 정보가 μžˆμœΌλ―€λ‘œ ν‚€λ°”λ‚˜μ—μ„œλŠ” 더이상 ν”ŒλŸ¬κ·ΈμΈ 였λ₯˜κ°€ λ°œμƒν•˜μ§€ μ•Šμ•˜μœΌλ©° ν‚€λ°”λ‚˜ μ£Όμ†Œλ‘œ λ‹€μ‹œ μ ‘μ†ν•˜λ‹ˆ μ—˜λΌμŠ€ν‹±μ„œμΉ˜ ν΄λŸ¬μŠ€ν„°μ— μ—°κ²°ν•  수 μ—†λ‹€λŠ” λ©”μ‹œμ§€λŠ” 더이상 ν‘œμ‹œλ˜μ§€ μ•Šμ•˜μŠ΅λ‹ˆλ‹€. 이둜써 ν‚€λ°”λ‚˜μ—μ„œ μ—˜λΌμŠ€ν‹±μ„œμΉ˜ ν΄λŸ¬μŠ€ν„°λ‘œ μ—°κ²°ν•œλ‹€λŠ” μ˜λ―ΈλŠ” X-Pack ν”ŒλŸ¬κ·ΈμΈμ— λŒ€ν•œ λΌμ΄μ„ΌμŠ€ 정보λ₯Ό ν™•μΈν•œλ‹€λŠ” 점으둜 이해할 수 μžˆμ„ 것 κ°™μŠ΅λ‹ˆλ‹€. μ—˜λΌμŠ€ν‹±μ„œμΉ˜ ν΄λŸ¬μŠ€ν„°κ°€ 만료된 νŠΈλΌμ΄μ–Ό λΌμ΄μ„ΌμŠ€λ₯Ό 가지고 μžˆλ”λΌλ„ ν‚€λ°”λ‚˜ λ˜λŠ” Start basic APIλ₯Ό 톡해 베이직 λΌμ΄μ„ΌμŠ€λ‘œ μ „ν™˜ν•  수 μžˆμŠ΅λ‹ˆλ‹€. λ”°λΌμ„œ, ν‚€λ°”λ‚˜λ₯Ό μ‹€ν–‰ν•˜κ³ λ‚˜μ„œ μ—˜λΌμŠ€ν‹±μ„œμΉ˜ ν΄λŸ¬μŠ€ν„°μ— μ—°κ²°ν•  수 μ—†λ‹€λŠ” 의미의 λ©”μ‹œμ§€λ₯Ό ν™•μΈν•˜λ‹€λ©΄ ν΄λŸ¬μŠ€ν„°μ— λΌμ΄μ„ΌμŠ€ 정보가 μžˆλŠ”μ§€ ν™•μΈν•΄λ³΄μ‹œκΈ° λ°”λžλ‹ˆλ‹€.

κ°μ‚¬ν•©λ‹ˆλ‹€.