Ansible: 인벀토리가 host_list / script μš”κ΅¬ 사항을 μΆ©μ‘±ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€ (Ansible 2.7.1).

에 λ§Œλ“  2018λ…„ 11μ›” 18일  Β·  45μ½”λ©˜νŠΈ  Β·  좜처: ansible/ansible



μš”μ•½


macOSμ—μ„œ Homebrewλ₯Ό μ‚¬μš©ν•˜μ—¬ ansible 버전 2.7.1둜 μ—…κ·Έλ ˆμ΄λ“œ ν•œ ν›„ verbose μ˜΅μ…˜μœΌλ‘œ ν”Œλ ˆμ΄ 뢁을 μ‹€ν–‰ν•  λ•Œ λ‹€μŒ 정보 κ²½κ³ κ°€ ν‘œμ‹œλ©λ‹ˆλ‹€.

/etc/ansible/hosts did not meet host_list requirements, check plugin documentation if this is unexpected
/etc/ansible/hosts did not meet script requirements, check plugin documentation if this is unexpected

λ‚΄ ν”Œλ ˆμ΄ 뢁은 λ¬Έμ œμ—†μ΄ μ‹€ν–‰λ˜κ³  μ™„λ£Œλ©λ‹ˆλ‹€. 과거에 호슀트 νŒŒμΌμ— λ¬Έμ œκ°€ μ—†μ—ˆμœΌλ©° ansible 2.7.0μ—μ„œμ΄ λ©”μ‹œμ§€κ°€ ν‘œμ‹œλ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

문제 μœ ν˜•
  • 버그 μ‹ κ³ 
ꡬ성 μš”μ†Œ 이름


host_list ν”ŒλŸ¬κ·ΈμΈ (인벀토리 파일)
슀크립트 ν”ŒλŸ¬κ·ΈμΈ (인벀토리 파일)

ANSIBLE 버전

ansible 2.7.1
  config file = /etc/ansible/ansible.cfg
  configured module search path = ['/Users/myuser/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/local/Cellar/ansible/2.7.1/libexec/lib/python3.7/site-packages/ansible
  executable location = /usr/local/bin/ansible
  python version = 3.7.1 (default, Nov  6 2018, 18:45:35) [Clang 10.0.0 (clang-1000.11.45.5)]
ꡬ성

ANSIBLE_PIPELINING(/etc/ansible/ansible.cfg) = True
DEFAULT_HOST_LIST(/etc/ansible/ansible.cfg) = ['/etc/ansible/hosts']
DEFAULT_REMOTE_USER(/etc/ansible/ansible.cfg) = myuser
RETRY_FILES_ENABLED(/etc/ansible/ansible.cfg) = False
OS / ν™˜κ²½


macOS High Sierra 10.13.6

μž¬ν˜„ 단계


ansible 버전 2.7.1둜 μ „ν™˜ν•˜κ³  μžμ„Έν•œ 정보가 ν™œμ„±ν™” 된 ν”Œλ ˆμ΄ 뢁을 μ‹€ν–‰ν•©λ‹ˆλ‹€.

ansible-playbook test.yml -v

μ˜ˆμƒ κ²°κ³Ό

Using /etc/ansible/ansible.cfg as config file
PLAY [localhost] *************************************************************************************************************************************

TASK [Gathering Facts] *******************************************************************************************************************************
ok: [localhost]
μ‹€μ œ κ²°κ³Ό


ν”Œλ ˆμ΄ 뢁은 λ¬Έμ œμ—†μ΄ μ‹€ν–‰λ˜κ³  μ™„λ£Œλ©λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ ansible의 μžμ„Έν•œ 정보 λ©”μ‹œμ§€λŠ” μ‚¬μš© κ°€λŠ₯ν•œ μ΅œμ‹  버전 (Homebrewμ—μ„œ)의 재고 νŒŒμΌμ— λ¬Έμ œκ°€ μžˆμŒμ„ μ‹œμ‚¬ν•©λ‹ˆλ‹€.

Using /etc/ansible/ansible.cfg as config file
/etc/ansible/hosts did not meet host_list requirements, check plugin documentation if this is unexpected
/etc/ansible/hosts did not meet script requirements, check plugin documentation if this is unexpected
PLAY [localhost] *************************************************************************************************************************************

TASK [Gathering Facts] *******************************************************************************************************************************
ok: [localhost]
affects_2.7 bug module python3 core

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

checked λ₯Όλ°›λŠ” ν”ŒλŸ¬κ·ΈμΈμ΄ 무엇을 ν•˜λ˜μ§€λ³΄κ³ ν•΄μ•Όν•©λ‹ˆλ‹€. 단지 무언가 μ˜³μ§€ μ•Šλ‹€κ³  λ§ν•˜λŠ” κ²ƒλ§ŒμœΌλ‘œλ„ 무엇이 잘λͺ»λ˜μ—ˆλŠ”지 μ „ν˜€ μ•Œ μˆ˜μ—†λŠ” 것은 잘λͺ»λœ κ²ƒμž…λ‹ˆλ‹€. "μš”κ΅¬ 사항을 μΆ©μ‘±ν•˜μ§€ μ•ŠμŒ"λ©”μ‹œμ§€κ°€ 아무 μ΄μœ μ—†μ΄ ν‘œμ‹œλ˜λ©° μ œκ±°ν•΄μ•Όν•˜κ±°λ‚˜ WHAT, WHERE 및 WHYλΌλŠ” μ‹€μ œ 이유λ₯Ό μ œκ³΅ν•΄μ•Όν•©λ‹ˆλ‹€.

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

μ•ˆλ…•ν•˜μ„Έμš” @ mil1i ,이 문제λ₯Ό μ œμΆœν•΄ μ£Όμ…”μ„œ κ°μ‚¬ν•©λ‹ˆλ‹€!

봇 도움말을 보렀면 μ—¬κΈ°λ₯Ό ν΄λ¦­ν•˜μ‹­μ‹œμ˜€.

μ„€λͺ…μ—μ„œ 식별 된 파일 :

μ΄λŸ¬ν•œ 파일이 μ •ν™•ν•˜μ§€ μ•Šμ€ 경우 μ„€λͺ…μ˜ component name μ„Ήμ…˜μ„ μ—…λ°μ΄νŠΈν•˜κ±°λ‚˜ !component 봇 λͺ…령을 μ‚¬μš©ν•˜μ‹­μ‹œμ˜€.

봇 도움말을 보렀면 μ—¬κΈ°λ₯Ό ν΄λ¦­ν•˜μ‹­μ‹œμ˜€.

μ΄λŠ” -v μ΄μƒμœΌλ‘œ ansible을 μ‹€ν–‰ν•  λ•Œ μΆ”κ°€ 정보λ₯Ό μ œκ³΅ν•˜κΈ° μœ„ν•΄ https://github.com/ansible/ansible/pull/46766 μ—μ„œ μ˜λ„μ μœΌλ‘œ κ΅¬ν˜„λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

μΆ”κ°€ μ§ˆλ¬Έμ΄μžˆλŠ” 경우 IRC λ˜λŠ” 메일 λ§λ¦¬μŠ€νŠΈμ— λ“€λ₯΄μ‹­μ‹œμ˜€.

IMO, μΆ”κ°€ 정보가 μ•„λ‹™λ‹ˆλ‹€. μš”κ΅¬ 사항이 μΆ©μ‘±λ˜μ§€ μ•Šμ€ 이유λ₯Ό μ–ΈκΈ‰ν–ˆκ±°λ‚˜ μƒˆλ‘œμš΄ μš”κ΅¬ 사항에 λŒ€ν•œ 링크 λ§ŒμžˆλŠ” 경우 유용 ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

μƒˆλ‘œμš΄ μš”κ΅¬ 사항이 μ—†μŠ΅λ‹ˆλ‹€. ν”ŒλŸ¬κ·ΈμΈμ„ κ±΄λ„ˆ λ›΄ μ΄μœ μ— λŒ€ν•œ 정보 만 μ œκ³΅ν•©λ‹ˆλ‹€. μ—¬λŸ¬ 가지 μ΄μœ κ°€ μžˆμŠ΅λ‹ˆλ‹€.이 경우 ν”ŒλŸ¬κ·ΈμΈμ— λŒ€ν•œ '확인'단계λ₯Ό ν†΅κ³Όν•˜μ§€ λͺ»ν–ˆκΈ° λ•Œλ¬Έμ— 고유 ν•œ μš”κ΅¬ 사항이 μžˆμ–΄μ•Όν•©λ‹ˆλ‹€. λ¬Έμ„œ (ansible-doc -t 인벀토리 μ°Έμ‘°))

λ‚˜λŠ” λ©”μ‹œμ§€μ—μ„œ WHY, 단지 WHAT, 그리고 μ œλŒ€λ‘œ μž‘λ™ν•˜μ§€ μ•ŠλŠ”λ‹€λŠ” λ©”μ‹œμ§€λ₯Ό λ³Ό 수 μ—†μŠ΅λ‹ˆλ‹€. ansible-doc -t inventory ini 은 (λŠ”) 확인할 μˆ˜μ—†λŠ” ν•­λͺ©μ— λŒ€ν•œ 힌트λ₯Ό μ œκ³΅ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. 확인 단계에 뢈만 μ‚¬ν•­μ΄μžˆλŠ” 경우 Ansible μ†ŒμŠ€ μ½”λ“œλ₯Ό μ‚¬μš©ν•˜μ§€ μ•ŠλŠ” 경우 아무 μ˜λ―Έκ°€μ—†λŠ” λͺ¨ν˜Έν•œ λ©”μ‹œμ§€κ°€ μ•„λ‹ˆλΌ ꡬ체적으둜 μ„€λͺ…ν•΄μ•Όν•©λ‹ˆλ‹€ (쀄, μ—΄, μ˜¬λ°”λ₯΄μ§€ μ•Šμ€ 것).

μ΄μœ λŠ” μš”κ΅¬ 사항이 μΆ©μ‘±λ˜μ§€ μ•Šμ•˜κ³  ꡬ문 뢄석 였λ₯˜κ°€ 또 λ‹€λ₯Έ 이유 일 수 있으며 νŠΉμ • μ˜ˆμ™Έ / 트 레이크 백을 μ œκ³΅ν•˜κΈ° λ•Œλ¬Έμž…λ‹ˆλ‹€. 각 ν”ŒλŸ¬κ·ΈμΈμ—λŠ” 고유 ν•œ μš”κ΅¬ 사항과 검증이 있으며, λ§Žμ€ 경우 파일 λ‚΄μš©κ³Ό 관련이 μ—†μ§€λ§Œ 파일 자체의 νŠΉμ„±κ³Ό 관련이 μžˆμŠ΅λ‹ˆλ‹€.

-vvvλ₯Ό μ‚¬μš©ν•˜λ©΄ μš”κ΅¬ 사항이 μΆ©μ‘±λ˜μ§€ μ•ŠλŠ” 이유 쀑 ν•˜λ‚˜ 이상을 λ³Ό 수 μžˆμŠ΅λ‹ˆλ‹€.
Skipping due to inventory source not existing or not being readable by the current user

-vvvλŠ” -v λ©”μ‹œμ§€ 만 ν‘œμ‹œν•©λ‹ˆλ‹€. -vvvvvv도 λ§ˆμ°¬κ°€μ§€μž…λ‹ˆλ‹€. 적어도 ini 기반 μΈλ²€ν† λ¦¬μ˜ 경우 μ‘΄μž¬ν•˜μ§€ μ•ŠλŠ” λ¬Έμ œμ— λŒ€ν•œ 경고에 λŒ€ν•œ λ²„κ·Έμ²˜λŸΌ λ³΄μž…λ‹ˆλ‹€.

ν•œ 예둜 λ‹€λ₯Έ μ΄μœ κ°€ μžˆμŠ΅λ‹ˆλ‹€. λͺ¨λ“  μ΄μœ κ°€ νŠΉμ • 정보λ₯Ό ν‘œμ‹œν•˜λŠ” 것은 μ•„λ‹ˆλ©° νŠΉμ • ν”ŒλŸ¬κ·ΈμΈμ— 따라 λ‹€λ¦…λ‹ˆλ‹€. ini μΈλ²€ν† λ¦¬λŠ”μ΄ 문제λ₯Ό 직접 μΌμœΌν‚€μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. iniκ°€ νŒŒμΌμ„ μˆ˜λ½ν•˜κΈ° 전에 2 개의 λ‹€λ₯Έ ν”ŒλŸ¬κ·ΈμΈμ΄ '확인'되기 λ•Œλ¬Έμ— 직접보고 μžˆμŠ΅λ‹ˆλ‹€.

checked λ₯Όλ°›λŠ” ν”ŒλŸ¬κ·ΈμΈμ΄ 무엇을 ν•˜λ˜μ§€λ³΄κ³ ν•΄μ•Όν•©λ‹ˆλ‹€. 단지 무언가 μ˜³μ§€ μ•Šλ‹€κ³  λ§ν•˜λŠ” κ²ƒλ§ŒμœΌλ‘œλ„ 무엇이 잘λͺ»λ˜μ—ˆλŠ”지 μ „ν˜€ μ•Œ μˆ˜μ—†λŠ” 것은 잘λͺ»λœ κ²ƒμž…λ‹ˆλ‹€. "μš”κ΅¬ 사항을 μΆ©μ‘±ν•˜μ§€ μ•ŠμŒ"λ©”μ‹œμ§€κ°€ 아무 μ΄μœ μ—†μ΄ ν‘œμ‹œλ˜λ©° μ œκ±°ν•΄μ•Όν•˜κ±°λ‚˜ WHAT, WHERE 및 WHYλΌλŠ” μ‹€μ œ 이유λ₯Ό μ œκ³΅ν•΄μ•Όν•©λ‹ˆλ‹€.

점진적 κ°œμ„ , μ½”λ“œμ˜ ν•΄λ‹Ή 뢀뢄은 이유λ₯Ό μ•Œμ§€ λͺ»ν•©λ‹ˆλ‹€. ν”ŒλŸ¬κ·ΈμΈμ΄ 확인 λ‹¨κ³„μ—μ„œ κ±°λΆ€ν–ˆλ‹€λŠ” κ²ƒμž…λ‹ˆλ‹€. 이전보닀 더 λ§Žμ€ 정보λ₯Ό μ–»μ—ˆμœΌλ©° ν•΄λ‹Ή λ‹¨κ³„μ—μ„œ κ±°λΆ€λ˜μ—ˆμŒμ„ λͺ°λžμŠ΅λ‹ˆλ‹€.

λͺ¨λ“  것이 λ‚˜ μžμ‹ μ„ μœ„ν•΄ 원본 ν¬μŠ€ν„°λ‘œ μ‹€ν–‰λ˜κΈ° λ•Œλ¬Έμ— κ°œμ„  된 κ²ƒμ²˜λŸΌ 보이지 μ•ŠμŠ΅λ‹ˆλ‹€.

참으둜 맀우 ν˜Όλž€ μŠ€λŸ½μŠ΅λ‹ˆλ‹€.

λ˜ν•œμ΄ λ©”μ‹œμ§€κ°€ ν˜Όλž€ μŠ€λŸ¬μ› μŠ΅λ‹ˆλ‹€.

그의 "였λ₯˜"λ©”μ‹œμ§€κ°€ λ„μ›€μ΄λ˜μ§€ μ•ŠλŠ”λ‹€λŠ” 데 λ™μ˜ν•©λ‹ˆλ‹€. μ΅œμ†Œν•œ host_list μš”κ΅¬ 사항을 ν¬ν•¨ν•˜λŠ” λ¬Έμ„œμ˜ νŠΉμ • μž₯에 λŒ€ν•œ 링크가 μžˆμ–΄μ•Όν•©λ‹ˆλ‹€. λ‚΄ ν”Œλ ˆμ΄ 뢁은 λ¬Έμ œμ—†μ΄ μ‹€ν–‰λ˜λ©° μ •ν™•νžˆμ΄ λ©”μ‹œμ§€κ°€ λ°œμƒν•˜λŠ” μ΄μœ μ™€ 문제λ₯Ό ν•΄κ²°ν•˜λŠ” 방법에 λŒ€ν•œ λ‹¨μ„œκ°€ μ—†μŠ΅λ‹ˆλ‹€.

점진적 κ°œμ„ , μ½”λ“œμ˜ ν•΄λ‹Ή 뢀뢄은 이유λ₯Ό μ•Œμ§€ λͺ»ν•©λ‹ˆλ‹€. ν”ŒλŸ¬κ·ΈμΈμ΄ 확인 λ‹¨κ³„μ—μ„œ κ±°λΆ€ν–ˆλ‹€λŠ” κ²ƒμž…λ‹ˆλ‹€. 이전보닀 더 λ§Žμ€ 정보λ₯Ό μ–»μ—ˆμœΌλ©° ν•΄λ‹Ή λ‹¨κ³„μ—μ„œ κ±°λΆ€λ˜μ—ˆμŒμ„ λͺ°λžμŠ΅λ‹ˆλ‹€.

κ·Έλ ‡λ‹€λ©΄ κ·Έ ν”ŒλŸ¬κ·ΈμΈμ€ μœ μš©ν•œ 정보λ₯Ό 가지고 있기 λ•Œλ¬Έμ— λ©”μ‹œμ§€λ₯Ό 더 잘 νŠΈλ¦¬κ±°ν•΄μ•Όν• κΉŒμš”?

λ©”μ‹œμ§€κ°€ ν˜Όλž€ μŠ€λŸ½λ‹€λŠ” 데 λ™μ˜ν•©λ‹ˆλ‹€. λ‚˜λŠ” "host_list μš”κ΅¬ 사항"이 무엇인지, μ–΄λ–€ ν”ŒλŸ¬κ·ΈμΈμ΄ λ§ν•˜λŠ”μ§€ μ „ν˜€ λͺ°λžλ‹€.

인벀토리 ν”ŒλŸ¬κ·ΈμΈ λ¬Έμ„œλ₯Ό 읽은 ν›„ ν•΄κ²° 방법을 μ°Ύμ•˜μŠ΅λ‹ˆλ‹€. μ‚¬μš©μ€‘μΈ 인벀토리 ν”ŒλŸ¬κ·ΈμΈλ§ŒμœΌλ‘œ Ansible을 κ΅¬μ„±ν•˜λŠ” 경우 λ‹€λ₯Έ ν”ŒλŸ¬κ·ΈμΈμ˜ μš”κ΅¬ 사항을 μΆ©μ‘±ν•˜μ§€ μ•ŠλŠ” νŒŒμΌμ— λŒ€ν•œ κ²½κ³ λ₯Ό ν”Όν•  수 μžˆμŠ΅λ‹ˆλ‹€.

[inventory]

# avoid "did not meet _ requirements" warnings when using -v
# see https://github.com/ansible/ansible/issues/48859
enable_plugins = ini

μ–΄λ–€ ν”ŒλŸ¬κ·ΈμΈμ΄ λ©”μ‹œμ§€λ₯Ό μƒμ„±ν–ˆλŠ”μ§€ μ–΄λ–»κ²Œ μ•Œ 수 μžˆμŠ΅λ‹ˆκΉŒ? 적어도 νžŒνŠΈκ°€ 될 κ²ƒμž…λ‹ˆλ‹€. ν”ŒλŸ¬κ·ΈμΈ λͺ©λ‘μ„ ν•˜λ‚˜ (yaml)둜 쀄 μ˜€μ§€λ§Œ μ—¬μ „νžˆ λ©”μ‹œμ§€κ°€ ν‘œμ‹œλ˜μ§€λ§Œ 인벀토리가 μ œλŒ€λ‘œ ꡬ문 뢄석 된 것 κ°™μŠ΅λ‹ˆλ‹€.

λ©”μ‹œμ§€μ—λŠ” 항상 ν”ŒλŸ¬κ·ΈμΈ 이름 host_list / ini / script / yaml / etcκ°€ μžˆμ—ˆμœΌλ©° μƒˆ λ©”μ‹œμ§€λŠ” 이제 λ©”μ‹œμ§€ 쀑간이 μ•„λ‹Œ μ‹œμž‘ 뢀뢄에 λ„£μŠ΅λ‹ˆλ‹€.

μ•„λ‹ˆμ—μš”. λΆˆν‰μ„ν•˜λŠ” ν”ŒλŸ¬κ·ΈμΈμ˜ 이름이 μ•„λ‹ˆλΌ μ²˜μŒμ— λΆˆν‰λ˜λŠ” 파일이 μžˆμŠ΅λ‹ˆλ‹€.

/Users/alan/Source/ansible_home/hosts.iniκ°€ host_list μš”κ΅¬ 사항을 μΆ©μ‘±ν•˜μ§€ μ•Šμ•˜μŠ΅λ‹ˆλ‹€. μ˜ˆμƒμΉ˜ λͺ»ν•œ 경우 ν”ŒλŸ¬κ·ΈμΈ λ¬Έμ„œλ₯Ό ν™•μΈν•˜μ‹­μ‹œμ˜€.

ν”ŒλŸ¬κ·ΈμΈ μ΄λ¦„μ²˜λŸΌ λ³΄μ΄λŠ” 것이 μ—†μŠ΅λ‹ˆλ‹€. @ leedm777이 μ œμ•ˆν–ˆλ“―μ΄ 인벀토리 ν™œμ„±ν™” ν”ŒλŸ¬κ·ΈμΈμ„ ini둜 μ œν•œν•˜λ©΄ λ©”μ‹œμ§€κ°€ μ œκ±°λ˜λ―€λ‘œ 파일 μ΄λ¦„μ˜ 힌트쑰차 μ˜¬λ°”λ₯΄μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

enable_plugins = iniκ°€ λ©”μ‹œμ§€λ₯Ό μ€‘μ§€ν•œλ‹€λŠ” 점을 κ°μ•ˆν•  λ•Œ λ‹€λ₯Έ 인벀토리 ν”ŒλŸ¬κ·ΈμΈμ΄ ini νŒŒμΌμ„ 잘λͺ» μž…λ ₯ν•˜κ³  λΆ€μ μ ˆν•œ 였λ₯˜ λ©”μ‹œμ§€μ™€ ν•¨κ»˜ λΆˆν‰ν•˜λŠ” κ²ƒμ²˜λŸΌ λ³΄μž…λ‹ˆλ‹€. 이것이 버그가 μ•„λ‹Œ μ΄μœ λŠ” λ¬΄μ—‡μž…λ‹ˆκΉŒ?

@alanbantuit λŠ” μœ„μ˜ PRμ—μ„œ μƒˆ λ©”μ‹œμ§€λ₯Ό μ½μŠ΅λ‹ˆλ‹€. 즉, ν”ŒλŸ¬κ·ΈμΈμ„ μ‹œμž‘ν•  λ•Œ

κ·€ν•˜μ˜ μ˜ˆμ—μ„œ 'host_list'λŠ” ν”ŒλŸ¬κ·ΈμΈμ΄λ©°, λ‚΄κ°€ λ™μ˜ν•˜λŠ” 것은 λͺ…ν™•ν•˜μ§€ μ•ŠμœΌλ―€λ‘œ μ‹œμž‘ 뢀뢄에 μžˆλ„λ‘ λ³€κ²½ν–ˆμŠ΅λ‹ˆλ‹€.

κ·Έλž˜μ„œ ν˜•μ œλŠ” λ¬΄μ—‡μž…λ‹ˆκΉŒ? ν”ŒλŸ¬κ·ΈμΈ "host_list"λŠ” λ¬΄μ—‡μž…λ‹ˆκΉŒ ??

λ‚˜λŠ” μΆ”κ°€ν–ˆλ‹€

[inventory]
enable_plugins = host_list, script, yaml, ini, auto

λ‚΄ confν•˜μ§€λ§Œ 같은 λ©”μ‹œμ§€

이것은 μž‘μ„±μžμ—κ²ŒλŠ” λ²„κ·Έμ²˜λŸΌ 보이지 μ•Šμ§€λ§Œ 일반 μ‚¬μš©μžμ—κ²ŒλŠ” λΆ„λͺ…νžˆ 문제λ₯Ό μΌμœΌν‚€λŠ” 버그 μœ ν˜•μœΌλ‘œ λ³΄μž…λ‹ˆλ‹€. 였λ₯˜κ°€ μ•„λ‹ˆλΌλŠ” 문ꡬ가 더 λͺ…ν™•ν•΄μ•Όν•˜λ©° ν”ŒλŸ¬κ·ΈμΈ 이름은 λ”°μ˜΄ν‘œλ‘œ λ¬Άμ–΄μ•Όν•©λ‹ˆλ‹€.

INFO somefile.inv does not meet the requirements of the "host_list" plugin

ν…μŠ€νŠΈκ°€ 이미 λ³€κ²½λ˜μ—ˆμŠ΅λ‹ˆλ‹€, https://github.com/ansible/ansible/pull/49080 , λ˜ν•œ ν‘œμ‹œλ˜λŠ” μžμ„Έν•œ λ‚΄μš©μ΄ μ˜¬λΌκ°”μŠ΅λ‹ˆλ‹€.

이것은 κ²½κ³  λ‚˜ 였λ₯˜κ°€ μ•„λ‹ˆλΌ μžμ„Έν•œ 정보 섀정을 μ‚¬μš©ν•  λ•Œ ν‘œμ‹œλ˜λŠ” 정보 λ©”μ‹œμ§€ μΌλΏμž…λ‹ˆλ‹€. μžμ„Έν•œ 정보 ν‘œμ‹œμ— λŒ€ν•œ λ©”μ‹œμ§€λŠ” 였λ₯˜κ°€ μ•„λ‹ˆλ©° 항상 ν‘œμ‹œλ˜λ©° 였λ₯˜μ— λŒ€ν•œ μžμ„Έν•œ 정보λ₯Ό 얻을 수 μžˆμ§€λ§Œ 였λ₯˜ 및 κ²½κ³ μ—λŠ” 자체 ν‘œμ‹œ κΈ°λŠ₯이 μžˆμŠ΅λ‹ˆλ‹€.

흠 μ°Έ, κ²½κ³ λŠ” 보라색, 였λ₯˜λŠ” 빨간색

κ·Έλž˜λ„ λ©”μ‹œμ§€κ°€ 무엇인지 λͺ¨λ₯΄κ² μŠ΅λ‹ˆλ‹€ .D

μ–΄λ–€ μ½”λ“œκ°€ μž…λ ₯에 λŒ€ν•œ 정보 λ©”μ‹œμ§€λ₯Ό λ°©μΆœν•˜μ§€ μ•ŠμœΌλ©΄ ν…ŒμŠ€νŠΈ, κ·Έ ν…ŒμŠ€νŠΈλ₯Ό ν†΅κ³Όν•˜λŠ” μž…λ ₯에 λŒ€ν•΄ 정보 λ©”μ‹œμ§€λ₯Ό λ°©μΆœν•œλ‹€ 같은 μž…λ ₯ ν…ŒμŠ€νŠΈ λ‹€λ₯Έ μ½”λ“œλ₯Ό μ „λ‹¬ν•˜λŠ” 것을 λ‚˜ 보인닀. 그것은 μΌκ΄€λ˜κ³  더 유읡 ν•  κ²ƒμž…λ‹ˆλ‹€. μ—¬κΈ° μž…λ ₯이 μ–΄λ”˜κ°€μ— ν…ŒμŠ€νŠΈλ₯Ό 톡과 ν•œ κ²ƒμ²˜λŸΌ λ³΄μ΄μ§€λ§Œ μš°λ¦¬λŠ” 어디에 μžˆλŠ”μ§€ λͺ¨λ¦…λ‹ˆλ‹€.

ν…ŒμŠ€νŠΈλ₯Ό ν†΅κ³Όν•˜λ©΄ ν”ŒλŸ¬κ·ΈμΈμ΄ μž…λ ₯을 '처리'ν•˜λŠ” 것을 λ³Ό 수 μžˆμŠ΅λ‹ˆλ‹€.이 λ©”μ‹œμ§€λŠ” ν”ŒλŸ¬κ·ΈμΈμ΄μ΄λ₯Ό μ‹œλ„ν•˜μ§€ μ•Šμ€ μ΄μœ μ— λŒ€ν•œ 정보λ₯Ό μ œκ³΅ν•˜κΈ°μœ„ν•œ κ²ƒμž…λ‹ˆλ‹€.

이 λ¬Έμ œκ°€ μ„€λͺ…에 λͺ…μ‹œλœ 였λ₯˜ λ©”μ‹œμ§€λ₯Ό 검색 ν•œ ν›„ 처음으둜 λ‚˜νƒ€λ‚˜λŠ” λ¬Έμ œλΌλŠ” 점이 μž¬λ°ŒμŠ΅λ‹ˆλ‹€. 그것이 λ‚΄ 재고 λͺ©λ‘κ³Ό μ΄μƒν•œ μ μ΄μ—†λŠ” λ¬Έμ„œ 예제λ₯Ό 비ꡐ ν•œ ν›„ 해결책을 μ°ΎκΈ° μœ„ν•΄ν•΄μ•Όν–ˆλ˜ 일이기 λ•Œλ¬Έμž…λ‹ˆλ‹€.

μ €λŠ” Ansible νŒ€μ„ μ‘΄κ²½ν•˜κ³  κ·Έλ“€μ˜ μž‘μ—…μ— κ°μ‚¬ν•˜μ§€λ§Œ @bcoca λŠ” 멋진 λ³€ν™”κ°€ μ•„λ‹™λ‹ˆλ‹€. λ‹΅λ³΄λ‹€λŠ” μ§ˆλ¬Έμ„ 남기기 λ•Œλ¬Έμ— ν˜Όλž€μŠ€λŸ½κ³  λΆˆν•„μš”ν•©λ‹ˆλ‹€.

Ansible이 λ‚΄ μž…λ ₯ νŒŒμΌμ— λ¬Έμ œκ°€μžˆλŠ” 경우 κ°•μ œ μ’…λ£Œν•˜κ³  λ¬Έμ œκ°€ 무엇인지 μ •ν™•νžˆ μ•Œλ € μ£Όλ©΄ 문제λ₯Ό ν•΄κ²°ν•˜κ³  μž‘μ—…μ„ 계속할 수 μžˆμŠ΅λ‹ˆλ‹€.

인벀토리 ν”ŒλŸ¬κ·ΈμΈμ΄ μž‘λ™ν•˜λŠ” 방식은 λͺ©λ‘μ„ 가지고 μžˆλ‹€λŠ” κ²ƒμž…λ‹ˆλ‹€. μ†ŒμŠ€κ°€ λͺ©λ‘μ„ μ‚΄νŽ΄λ³΄κ³  ν•΄λ‹Ή μ†ŒμŠ€κ°€ ν”ŒλŸ¬κ·ΈμΈκ³Ό μΌμΉ˜ν•˜λŠ”μ§€ ν™•μΈν•œ λ‹€μŒ νŒŒμ‹± ν•  수 있으면 κ²½κ³ λ₯Ό λ°›κ²Œλ©λ‹ˆλ‹€ (ν† κΈ€ν•˜μ—¬ 였λ₯˜λ‘œ λ§Œλ“€ 수 있음). ) ν”ŒλŸ¬κ·ΈμΈμ΄ νŒŒμΌμ„ 읽을 μˆ˜μ—†λŠ” 경우.

즉, hosts.iniκ°€ 주어지면 λ¨Όμ € 'host_list'(인라인 호슀트 λ¬Έμžμ—΄ -i "host1, host2," )λ₯Ό μ‹œλ„ν•œ λ‹€μŒ script (동적 슀크립트의 경우), yaml, ini (이λ₯Ό κ±΄λ„ˆ λ›΄ 경우 'auto')λ₯Ό μ°¨λ‘€λ‘œ μ‹œλ„ν•©λ‹ˆλ‹€. ). ν”ŒλŸ¬κ·ΈμΈμ΄ μ†ŒμŠ€λ₯Ό κ±΄λ„ˆ λ›΄ 이유,이 경우 '확인'단계λ₯Ό ν†΅κ³Όν•˜μ§€ λͺ»ν–ˆλ‹€λŠ” λ©”μ‹œμ§€λ₯Ό μΆ”κ°€ν–ˆμŠ΅λ‹ˆλ‹€. μœ„μ˜ PR은이 λ©”μ‹œμ§€λ₯Ό 더 λͺ…ν™•ν•˜κ²Œν•©λ‹ˆλ‹€.

λ‹€μ‹œ λ§ν•˜μ§€λ§Œ, 이것은 였λ₯˜λ‚˜ κ²½κ³ κ°€ μ•„λ‹ˆλ©°, verboseλ₯Ό μ‹€ν–‰ν•  λ•Œλ°›λŠ” λ§Žμ€ λ©”μ‹œμ§€ 쀑 ν•˜λ‚˜μž…λ‹ˆλ‹€.

이제이 토둠을 μ½μ—ˆμœΌλ―€λ‘œμ΄ λ©”μ‹œμ§€κ°€ 무엇인지 μ΄ν•΄ν•©λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ λ‚΄κ°€ 이것을 μ‘°μ‚¬ν•˜κ³  μ½λŠ” 데 20 λΆ„ 정도 μ†Œμš”λ˜μ—ˆλ‹€λŠ” 점은 μ£Όλͺ©ν•  κ°€μΉ˜κ°€ μžˆμŠ΅λ‹ˆλ‹€. (그리고 λŒ“κΈ€μ€ 더 λ§Žμ€ μ‚¬μš©μžμ—κ²Œ 우렀 μ‚¬ν•­μž„μ„ λ‚˜νƒ€λƒ…λ‹ˆλ‹€.) Ansible 및 / λ˜λŠ” verbose λͺ¨λ“œλ‘œ μœ μš©ν•œ λͺ¨λ“  μž‘μ—…μ€ μ“Έλͺ¨μ—†λŠ” κ²ƒμœΌλ‘œ κ°„μ£Όλ©λ‹ˆλ‹€ ._

μ €μ—κ²Œ λ¬Έμ œλŠ” "-v"λ˜λŠ” "-vv"λ₯Ό μ‚¬μš©ν•˜λ©΄ μž‘λ™ν•˜μ§€ μ•ŠλŠ” ν”ŒλŸ¬κ·ΈμΈμ΄λ³΄κ³ λ˜μ§€λ§Œ μ–΄λ–€ 것이 μž‘λ™ν–ˆλŠ”μ§€λŠ” ν‘œμ‹œν•˜μ§€ μ•ŠλŠ”λ‹€λŠ” κ²ƒμž…λ‹ˆλ‹€. μ–΄λ–€ ν”ŒλŸ¬κ·ΈμΈμ΄ μž‘λ™ν•˜λŠ”μ§€ ν™•μΈν•˜λ €λ©΄ 전체 "-vvv"둜 μ΄λ™ν•΄μ•Όν•©λ‹ˆλ‹€. ν”ŒλŸ¬κ·ΈμΈ 성곡 λ©”μ‹œμ§€λ₯Ό 항상 ν”ŒλŸ¬κ·ΈμΈ μ‹€νŒ¨ λ©”μ‹œμ§€μ™€ λ™μΌν•œ μžμ„Έν•œ μˆ˜μ€€μœΌλ‘œ ν‘œμ‹œν•˜λ©΄ μ΄λŸ¬ν•œ ν˜Όλ™μ„ ν”Όν•  수 μžˆμŠ΅λ‹ˆλ‹€.

@flatrocks λ‹€μ‹œ, μœ„μ˜ PRμ„λ³΄μ‹­μ‹œμ˜€.

λ‚˜λŠ” λ©”μ‹œμ§€λ„ ν˜Όλž€ μŠ€λŸ½λ‹€κ³  λ§ν•΄μ•Όν•œλ‹€. 이것이 내가이 버그λ₯Ό 읽게 된 μ΄μœ μ΄λ‹€.

이것은 μ—¬μ „νžˆ ​​V = 1에 μΈμ‡„λ˜λŠ” 디버깅 μˆ˜μ€€ λ©”μ‹œμ§€μ— κ°€κΉμ§€λ§Œ 쒋지 μ•ŠμŠ΅λ‹ˆλ‹€. μ•„μ΄λŸ¬λ‹ˆ ν•œ 점은 μ΄λŸ¬ν•œ λ©”μ‹œμ§€κ°€ μΈμ‡„λ˜μ§€λ§Œλ‘œλ“œ 된 경우 호슀트 νŒŒμΌμ„λ‘œλ“œν•˜λŠ” 데 μ–΄λ–€ ν”ŒλŸ¬κ·ΈμΈμ΄ μ‚¬μš©λ˜μ—ˆλŠ”μ§€ μ•Œ 수 μ—†λ‹€λŠ” κ²ƒμž…λ‹ˆλ‹€.

λ‚˜λŠ” 버그가 μ§„μ§œλΌκ³  μƒκ°ν•˜λ©° λͺ‡ 가지 문제λ₯Ό κ°•μ‘°ν•©λ‹ˆλ‹€.

  • λ©”μ‹œμ§€μ— ν”ŒλŸ¬κ·ΈμΈ 이름이 μ˜¬λ°”λ₯΄κ²Œ μ–ΈκΈ‰λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€. '파일이 FOO 인벀토리 ν”ŒλŸ¬κ·ΈμΈ μš”κ΅¬ 사항을 μΆ©μ‘±ν•˜μ§€ μ•Šμ•„λ‘œλ“œλ₯Ό κ±΄λ„ˆ λ›°μ—ˆμŠ΅λ‹ˆλ‹€.
  • 인벀토리 파일의 μ „μ²΄λ‘œλ“œμ— λŒ€ν•œ λ©”μ‹œμ§€ μ—¬μ•Όν•©λ‹ˆλ‹€.
  • 인벀토리 νŒŒμΌμ˜λ‘œλ“œ κ±΄λ„ˆ λ›°λŠ” 것은 더 큰 상세도가 ν™œμ„±ν™” 된 κ²½μš°μ—λ§Œ V> = 2 정도가 ν‘œμ‹œλ˜μ–΄μ•Όν•©λ‹ˆλ‹€.
  • λ¬Έμ„œμ— λŒ€ν•œ 영ꡬ 링크가 ν¬ν•¨λ˜μ§€ μ•Šμ€ RTFD λ©”μ‹œμ§€λŠ” λ‚˜μœ μ‚¬μš©μž κ²½ν—˜μ„ μ œκ³΅ν•©λ‹ˆλ‹€. μ‚¬μš©μžμ—κ²Œ λ¬Έμ„œλ₯Ό μ½μœΌλΌλŠ” λ©”μ‹œμ§€κ°€ ν‘œμ‹œλ˜λ©΄ URL을 ν¬ν•¨ν•΄μ•Όν•©λ‹ˆλ‹€.

이 λ©”μ‹œμ§€ λ‹€μŒμ— "제곡된 호슀트 νŒ¨ν„΄κ³Ό 일치 ν•  수 μ—†μŠ΅λ‹ˆλ‹€. 'λͺ¨λ‘'λ¬΄μ‹œ"λΌλŠ” λ©”μ‹œμ§€κ°€ ν‘œμ‹œλ˜λ―€λ‘œ λΆ„λͺ…νžˆ μ–΄λ”˜κ°€μ—μ„œ μž‘λ™ν•˜μ§€ μ•Šμ§€λ§Œμ΄ 문제λ₯Ό μ°Ύκ±°λ‚˜ μˆ˜μ •ν•˜λŠ” 방법에 λŒ€ν•œ 정보가 μ—†μŠ΅λ‹ˆλ‹€. ν™•μ‹€νžˆ 더 λ‚˜μ€ 였λ₯˜ λ©”μ‹œμ§€κ°€ ν•„μš”ν•©λ‹ˆλ‹€.

이 정보 λ©”μ‹œμ§€λ₯Όλ°›μ§€ μ•ŠκΈ° μœ„ν•΄ μΌμΉ˜ν•΄μ•Όν•˜λŠ” μš”κ΅¬ 사항 μœ ν˜•μ„ μ•Œ 수 μžˆμŠ΅λ‹ˆκΉŒ?

PR 컀밋 μˆ˜μ •μ˜ μƒˆ λ©”μ‹œμ§€λŠ” λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.
display.vvv("%s declined parsing %s as it did not pass it's verify_file() method" % (plugin_name, source))

λΏ‘λΏ‘
" it 's "λŒ€μ‹  " its "μ—¬μ•Όν•˜μ§€ μ•ŠμŠ΅λ‹ˆκΉŒ?
https://github.com/ansible/ansible/blob/devel/lib/ansible/inventory/manager.py#L281
그건 κ·Έλ ‡κ³ ,이 μ„€λͺ…에 κ°μ‚¬λ“œλ¦½λ‹ˆλ‹€.

λ„€,β€œκ·Έκ²ƒβ€μ€β€œκ·Έκ²ƒβ€μ˜ μ†Œμœ κ²©μ΄ μ•„λ‹ˆλΌβ€œκ·Έ κ²ƒμ΄λ‹€β€μ˜ μΆ•μ•½μž…λ‹ˆλ‹€. μ†Œμœ κ²©μ€ "그것"μž…λ‹ˆλ‹€.

보낸 μ‚¬λžŒ : "sremy" [email protected]
λ°›λŠ” μ‚¬λžŒ : "ansible / ansible" [email protected]
μ°Έμ‘° : "Alan Brenner" [email protected] , "λŒ“κΈ€" [email protected]
전솑 : 2019 λ…„ 1 μ›” 4 일 κΈˆμš”μΌ μ˜€μ „ 7:05:19
제λͺ© : Re : [ansible / ansible] 인벀토리가 host_list / script μš”κ΅¬ 사항을 μΆ©μ‘±ν•˜μ§€ μ•ŠμŒ (Ansible 2.7.1) (# 48859)

PR 컀밋 μˆ˜μ •μ˜ μƒˆ λ©”μ‹œμ§€λŠ” λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.
display.vvv ( "% s이 (κ°€) verify_file () λ©”μ„œλ“œλ₯Ό ν†΅κ³Όν•˜μ§€ λͺ»ν–ˆκΈ° λ•Œλ¬Έμ— % s ꡬ문 뢄석을 κ±°λΆ€ν–ˆμŠ΅λ‹ˆλ‹€."% (plugin_name, source))

[ https://github.com/bcoca | @bcoca ]
"it 's"λŒ€μ‹  "its"μ—¬μ•Όν•˜μ§€ μ•ŠμŠ΅λ‹ˆκΉŒ?
[ https://github.com/ansible/ansible/blob/devel/lib/ansible/inventory/manager.py#L281 | https://github.com/ansible/ansible/blob/devel/lib/ansible/inventory/manager.py#L281 ]
그건 κ·Έλ ‡κ³ ,이 μ„€λͺ…에 κ°μ‚¬λ“œλ¦½λ‹ˆλ‹€.

β€”
λŒ“κΈ€μ„ λ‹¬μ•˜ κΈ° λ•Œλ¬Έμ— μˆ˜μ‹  ν•œ κ²ƒμž…λ‹ˆλ‹€.
이 이메일에 직접 λ‹΅μž₯ ν•˜μ„Έμš” . [ https://github.com/notifications/unsubscribe-auth/AAigO-Cbc5kdXQNhBL8mpkefzwoemKN9ks5u_0N_gaJpZM4YoJPK | μŠ€λ ˆλ“œ μŒμ†Œκ±°].

이 λͺ¨λ“  것을 읽은 ν›„ λ§ˆμΉ¨λ‚΄ λ‚΄ 머릿속에 μ˜³μ€μ§€ λˆ„κ΅°κ°€ λ§ν•΄μ£Όμ„Έμš”. 인벀토리λ₯Ό μ½κΈ°μœ„ν•œ μ—¬λŸ¬ 가지 ν”ŒλŸ¬κ·ΈμΈμ΄ μžˆμŠ΅λ‹ˆλ‹€ (λ‚˜λŠ” yaml을 μ‚¬μš©ν•©λ‹ˆλ‹€).

이 λͺ¨λ“  것은 ini μŠ€νƒ€μΌ, 슀크립트 λ˜λŠ” λ‹€λ₯Έ μ–΄λ–€ 것에 λŒ€ν•œ 인벀토리 확인을 ν†΅κ³Όν•˜μ§€ λͺ»ν–ˆλ‹€λŠ” κ²ƒμž…λ‹ˆλ‹€.

@sgutermann 예, ini μŠ€ν¬λ¦½νŠΈμ— λŒ€ν•œ 인벀토리 확인을 ν†΅κ³Όν•˜μ§€

ansible.cfgμ—μ„œ 방금 μ‚¬μš©ν•œ 경우 :

[inventory]
# enable inventory plugins, default: 'host_list', 'script', 'yaml', 'ini'
enable_plugins = yaml

그러면 κ·Έ "정보 톡지"κ°€ μ‚¬λΌμ§‘λ‹ˆλ‹€. λ‚˜λŠ” 그것이 λ¬΄μ—‡μ„μœ„ν•œ 것인지 λͺ…ν™•ν•˜μ§€ μ•Šλ‹€λŠ” 것에 λ™μ˜ν•œλ‹€. κ·ΈλŸ¬λ‚˜ μ•½κ°„μ˜ μ‹œν–‰ 착였 끝에 λ‚˜λŠ” κ·Έ "톡지"λ₯Ό 제거 ν•  수 μžˆμ—ˆλ‹€. λ‚˜λŠ” λͺ¨λ“  것에 ini ν˜•μ‹μ„ μ‚¬μš©ν•˜κ³  "μΌνšŒμ„±"을 μ‹€ν–‰ν•˜μ§€ μ•ŠλŠ”λ‹€. κ·Έλž˜μ„œ λ‚˜λŠ” 단지 ini와 tadaλ₯Ό μ‚¬μš©ν•œλ‹€. 더 이상 μ§œμ¦λ‚˜λŠ” λ©”μ‹œμ§€λŠ” μ—†λ‹€.

이 였λ₯˜λŠ” λ¬΄μ—‡μž…λ‹ˆκΉŒ? μ €λŠ” Ansible을 μ‚¬μš© 해보고 싢은 μ΄ˆλ³΄μžμž…λ‹ˆλ‹€.

ν•˜μ§€λ§Œ 였λ₯˜κ°€ λ°œμƒν•˜μ—¬ ν•΄κ²° 방법을 λͺ¨λ₯΄κ² μŠ΅λ‹ˆλ‹€ .....

λ‚˜λŠ” λ˜ν•œ νΌνŒ…μ—λ„ λΆˆκ΅¬ν•˜κ³  이것을 계속 μ–»μŠ΅λ‹ˆλ‹€.

enable_plugins = ini

λ‚΄ ansible.cfg νŒŒμΌμ— μžˆμŠ΅λ‹ˆλ‹€. 정말 μ§œμ¦λ‚˜ ...

@bcoca , @ssbarneaκ°€ μ œμ•ˆν•œλŒ€λ‘œ λ©”μ‹œμ§€λ₯Ό λͺ…ν™•νžˆν•˜λ©΄ μ—„μ²­λ‚œ 도움이 될 κ²ƒμž…λ‹ˆλ‹€. PR의 λ©”μ‹œμ§€λŠ” 그닀지 λͺ…ν™•ν•˜μ§€ μ•ŠμœΌλ©° μ œμ•ˆμ€ μ‚¬μš©μžκ°€ λ‹€λ₯Έ 인벀토리λ₯Ό μœ„ν•΄ "κ±΄λ„ˆ λ›°κΈ°"κ°€ μ•„λ‹Œ "ν™•μΈλ˜μ§€ μ•ŠμŒ"으둜 인해 "거절"λ˜λŠ” 이유λ₯Ό νŒŒμ•…ν•˜κΈ° μœ„ν•΄ λ‚΄λΆ€λ₯Ό μ‚΄νŽ΄ λ³΄λŠ” 것을 λ°©μ§€ν•˜λŠ” 데 λ„μ›€μ΄λ©λ‹ˆλ‹€. ν”ŒλŸ¬κ·ΈμΈ. λ©”μ‹œμ§€λŠ” λ˜ν•œ μ œμ•ˆ λœλŒ€λ‘œ ν”ŒλŸ¬κ·ΈμΈμ„ 인벀토리 ν”ŒλŸ¬κ·ΈμΈμœΌλ‘œ μ‹λ³„ν•΄μ•Όν•©λ‹ˆλ‹€. λ˜ν•œ μ²˜μŒμ— 정보 λ©”μ‹œμ§€λ₯Ό μ œκ³΅ν•˜κ³  μ‹€μ œλ‘œλ‘œλ“œλ˜λŠ” 인벀토리 ν”ŒλŸ¬κ·ΈμΈμ˜ μˆ˜μ€€κ³Ό μΌμΉ˜ν•˜λ„λ‘ μžμ„Έν•œ 정도λ₯Ό μ„€μ •ν•΄ μ£Όμ…”μ„œ κ°μ‚¬ν•©λ‹ˆλ‹€. 였늘 "λ‚΄κ°€ 뭘 잘λͺ» ν–ˆλ‚˜?" :)

2.7.8μ—μ„œλŠ” λ‹€μŒ λ©”μ‹œμ§€κ°€ ν‘œμ‹œλ©λ‹ˆλ‹€.

Using /root/ansible/ansible.cfg as config file
/root/ansible/hosts did not meet host_list requirements, check plugin documentation if this is unexpected
/root/ansible/hosts did not meet script requirements, check plugin documentation if this is unexpected

λ‚˜μ—κ²ŒλŠ” host_list와 scriptκ°€ ν”ŒλŸ¬κ·ΈμΈμ˜ μ‹€μ œ μ΄λ¦„μ΄λΌλŠ” 것이 λΆ„λͺ…ν•˜μ§€ μ•Šμ•˜μŠ΅λ‹ˆλ‹€.

λ‹€μŒκ³Ό 같이 더 λͺ…ν™• ν•  것이라고 μƒκ°ν•©λ‹ˆλ‹€.

Using /root/ansible/ansible.cfg as config file
/root/ansible/hosts did not meet requirements for "host_list" plugin, check plugin documentation if this is unexpected
/root/ansible/hosts did not meet requirements for "script" plugin, check plugin documentation if this is unexpected

@candlerb 같은 문제!

[ root @ localhost ~] _ ### ansible-playbook -i / etc / ansible / hosts openshift-ansible / playbooks / openshift-node / bootstrap.retry -vvv_
ansible ν”Œλ ˆμ΄ 뢁 2.7.10
ꡬ성 파일 = /etc/ansible/ansible.cfg
κ΅¬μ„±λœ λͺ¨λ“ˆ 검색 경둜 = [u '/ root / .ansible / plugins / modules', u '/ usr / share / ansible / plugins / modules']
ansible 파이썬 λͺ¨λ“ˆ μœ„μΉ˜ = /usr/lib/python2.7/site-packages/ansible
μ‹€ν–‰ κ°€λŠ₯ μœ„μΉ˜ = / usr / bin / ansible-playbook
python 버전 = 2.7.5 (κΈ°λ³Έκ°’, 2019 λ…„ 3 μ›” 26 일, 22:13:06) [GCC 4.8.5 20150623 (Red Hat 4.8.5-36)]
/etc/ansible/ansible.cfgλ₯Ό ꡬ성 파일둜 μ‚¬μš©
/ etc / ansible / hostsκ°€ host_list μš”κ΅¬ 사항을 μΆ©μ‘±ν•˜μ§€ μ•Šμ•˜μŠ΅λ‹ˆλ‹€. μ˜ˆμƒμΉ˜ λͺ»ν•œ 경우 ν”ŒλŸ¬κ·ΈμΈ μ„€λͺ…μ„œλ₯Ό ν™•μΈν•˜μ‹­μ‹œμ˜€.
/ etc / ansible / hostsκ°€ 슀크립트 μš”κ΅¬ 사항을 μΆ©μ‘±ν•˜μ§€ μ•Šμ•˜μŠ΅λ‹ˆλ‹€. μ˜ˆμƒμΉ˜ λͺ»ν•œ 경우 ν”ŒλŸ¬κ·ΈμΈ μ„€λͺ…μ„œλ₯Ό ν™•μΈν•˜μ‹­μ‹œμ˜€.
ini ν”ŒλŸ¬κ·ΈμΈμ„ μ‚¬μš©ν•˜μ—¬ / etc / ansible / hosts 인벀토리 μ†ŒμŠ€λ₯Ό ꡬ문 λΆ„μ„ν–ˆμŠ΅λ‹ˆλ‹€.
였λ₯˜! ν”Œλ ˆμ΄ 뢁은 μ—°κ·Ή λͺ©λ‘μ΄μ–΄μ•Όν•©λ‹ˆλ‹€.

였λ₯˜κ°€ '/root/openshift-ansible/playbooks/openshift-node/bootstrap.retry': 쀄 1, μ—΄ 1μ—μžˆλŠ” 것 κ°™μŠ΅λ‹ˆλ‹€.
μ •ν™•ν•œ ꡬ문 λ¬Έμ œμ— 따라 파일의 λ‹€λ₯Έ 곳에 μžˆμŠ΅λ‹ˆλ‹€.

λ¬Έμ œκ°€λ˜λŠ” 쀄은 λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.

master.istic.linsoft.com

였λ₯˜! ν”Œλ ˆμ΄ 뢁은 μ—°κ·Ή λͺ©λ‘μ΄μ–΄μ•Όν•©λ‹ˆλ‹€.

그것은 λ‹€λ₯Έ λ¬Έμ œμž…λ‹ˆλ‹€. YAML ν”Œλ ˆμ΄ 뢁인 κ²ƒμ²˜λŸΌ μž¬μ‹œλ„ νŒŒμΌμ„ μ œκ³΅ν•˜κ³  μžˆμ§€λ§Œ 그렇지 μ•ŠμŠ΅λ‹ˆλ‹€. μ‹€νŒ¨ν•œ 호슀트의 λͺ©λ‘μž…λ‹ˆλ‹€.

μ‚¬μš© : ansible-playbook /path/to/bootstrap.yml --limit @/path/to/bootstrap.retry

버그가 μ•„λ‹ˆλ―€λ‘œ μ—¬κΈ°μ„œ 더 이상 λ…Όμ˜ν•˜μ§€ λ§ˆμ‹œκΈ° λ°”λžλ‹ˆλ‹€. λŒ€μ‹  ansible-project google 그룹을 μ‚¬μš©ν•˜μ„Έμš”.

μ•Ό ! λΉ λ₯Έ 응닡에 κ°μ‚¬λ“œλ¦½λ‹ˆλ‹€
그렇지 μ•ŠμœΌλ©΄ μ—¬μ „νžˆ 같은 λ¬Έμ œκ°€ λ°œμƒν•©λ‹ˆλ‹€.
...

λ₯΄ 딀. 21 avr. 2019 Γ  08:54, Brian Candler [email protected] a
Γ©crit :

였λ₯˜! ν”Œλ ˆμ΄ 뢁은 μ—°κ·Ή λͺ©λ‘μ΄μ–΄μ•Όν•©λ‹ˆλ‹€.

그것은 λ‹€λ₯Έ λ¬Έμ œμž…λ‹ˆλ‹€. μž¬μ‹œλ„ νŒŒμΌμ„ μ œκ³΅ν•˜λŠ” κ²ƒμ²˜λŸΌ
YAML ν”Œλ ˆμ΄ 뢁이며 그렇지 μ•ŠμŠ΅λ‹ˆλ‹€. μ‹€νŒ¨ν•œ 호슀트의 λͺ©λ‘μž…λ‹ˆλ‹€.

μ‚¬μš© : ansible-playbook /path/to/bootstrap.yml --limit
@ / path / to / bootstrap.retry

이것은 버그가 μ•„λ‹ˆλ―€λ‘œ μ—¬κΈ°μ—μ„œ 더 μ΄μƒμ˜ λ…Όμ˜λ₯Ό μžμ œν•˜μ‹­μ‹œμ˜€.
λŒ€μ‹  ansible-project google κ·Έλ£Ή.

β€”
λŒ“κΈ€μ„ λ‹¬μ•˜ κΈ° λ•Œλ¬Έμ— μˆ˜μ‹  ν•œ κ²ƒμž…λ‹ˆλ‹€.
이 이메일에 직접 λ‹΅μž₯ν•˜κ³  GitHubμ—μ„œ ν™•μΈν•˜μ„Έμš”.
https://github.com/ansible/ansible/issues/48859#issuecomment-485232650 ,
λ˜λŠ” μŠ€λ ˆλ“œ μŒμ†Œκ±°
https://github.com/notifications/unsubscribe-auth/ALWB2BCFZ5OPUOJSKEXNP6TPRQMT7ANCNFSM4GFASPFA
.

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