Unable to make a PyEZ connection: ConnectUnknownHostErrorSSH Fails Due to Key File Permissions When I Try to Provision a Vagrant VM with Ansible on Windows/CygwinAnsible cannot connect to host via specified private keyPycharm no longer connects to vagrant machine after upgrading Vagrant and VirtualBoxVagrant ansible provisioner throwing error 'MODULE FAILURE' when running playbookfatal: [cor-001]: FAILED! => {“changed”: false, “msg”: "junos-eznc (aka PyEZ) >= 2.1.7 is required for this module. However, junos-eznc does not aCannot start the Docker service using Ansible on Vagrant boxAnsible delegate_to “Incorrect sudo password”ansible from_json filter - unable to use inventory_hostname How to download an artifact from nexus to a remote machine using Ansible playbook

Amortized Loans seem to benefit the bank more than the customer

Where is it? - The Google Earth Challenge Ep. 3

What organs or modifications would be needed for a life biological creature not to require sleep?

How to be sure services and researches offered by the University are not becoming cases of unfair competition?

What's the benefit of prohibiting the use of techniques/language constructs that have not been taught?

If I want an interpretable model, are there methods other than Linear Regression?

How to make a bold sparkline in Google Sheets?

'Overwrote' files, space still occupied, are they lost?

How do certain apps show new notifications when internet access is restricted to them?

Prove that a convergent real sequence always has a smallest or a largest term

Apostrophe in math formula prevents luatex compilation for Slovak

Why is the year in this ISO timestamp not 2019?

Is there a tool to measure the "maturity" of a code in Git?

Block diagram vs flow chart?

How to control the output voltage of a solid state relay

Parallel resistance in electric circuits

Are space camera sensors usually round, or square?

How to modify this code to add more vertical space in timeline that uses Tikz

Isometries of convex hypersurfaces

What makes a smart phone "kosher"?

Test to know when to use GLM over Linear Regression?

Why is this sentence grammatical?

How to give my students a straightedge instead of a ruler

Does my opponent need to prove his creature has morph?



Unable to make a PyEZ connection: ConnectUnknownHostError


SSH Fails Due to Key File Permissions When I Try to Provision a Vagrant VM with Ansible on Windows/CygwinAnsible cannot connect to host via specified private keyPycharm no longer connects to vagrant machine after upgrading Vagrant and VirtualBoxVagrant ansible provisioner throwing error 'MODULE FAILURE' when running playbookfatal: [cor-001]: FAILED! => {“changed”: false, “msg”: "junos-eznc (aka PyEZ) >= 2.1.7 is required for this module. However, junos-eznc does not aCannot start the Docker service using Ansible on Vagrant boxAnsible delegate_to “Incorrect sudo password”ansible from_json filter - unable to use inventory_hostname How to download an artifact from nexus to a remote machine using Ansible playbook






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;








0















I am trying to use juniper_junos_facts from the Ansible Junos module to query some VM's that I provisioned using Vagrant. However I am getting the following error.



fatal: [r1]: FAILED! => "changed": false, "msg": "Unable to make a PyEZ connection: ConnectUnknownHostError(r1)"
fatal: [r2]: FAILED! => "changed": false, "msg": "Unable to make a PyEZ connection: ConnectUnknownHostError(r2)"


I see in the following document Here on juniper.net that this error occurs when you don't have the host defined correctly in the inventory file. I don't believe this to be an issue with my inventory file because when I run ansible-inventory --host all appears to be in order



~/vagrant-projects/junos$ ansible-inventory --host r1

"ansible_ssh_host": "127.0.0.1",
"ansible_ssh_port": 2222,
"ansible_ssh_private_key_file": ".vagrant/machines/r1/virtualbox/private_key",
"ansible_ssh_user": "root"

~/vagrant-projects/junos$ ansible-inventory --host r2

"ansible_ssh_host": "127.0.0.1",
"ansible_ssh_port": 2200,
"ansible_ssh_private_key_file": ".vagrant/machines/r2/virtualbox/private_key",
"ansible_ssh_user": "root"



My playbook is copied from the following document which I got from Here on juniper.net.



My Inventory File



[vsrx]
r1 ansible_ssh_host=127.0.0.1 ansible_ssh_port=2222 ansible_ssh_private_key_file=.vagrant/machines/r1/virtualbox/private_key
r2 ansible_ssh_host=127.0.0.1 ansible_ssh_port=2200 ansible_ssh_private_key_file=.vagrant/machines/r2/virtualbox/private_key

[vsrx:vars]
ansible_ssh_user=root


My Playbook



---
- name: show version
hosts: vsrx
roles:
- Juniper.junos
connection: local
gather_facts: no

tasks:
- name: retrieve facts
juniper_junos_facts:
host: " inventory_hostname "
savedir: " playbook_dir "
- name: print version
debug:
var: junos.version









share|improve this question
























  • ConnectUnknownHostError(r1) means r1 is sent as host and not the IP to PyEZ. You need to pass ansible_ssh_host as host. I think if you don't pass any, we take them as default.

    – Nitin Kr
    Mar 20 at 16:19











  • Thanks for the feedback, can I ask how you pass ansible_ssh_host as host to PyEZ?

    – Barry Keegan
    Mar 22 at 7:38


















0















I am trying to use juniper_junos_facts from the Ansible Junos module to query some VM's that I provisioned using Vagrant. However I am getting the following error.



fatal: [r1]: FAILED! => "changed": false, "msg": "Unable to make a PyEZ connection: ConnectUnknownHostError(r1)"
fatal: [r2]: FAILED! => "changed": false, "msg": "Unable to make a PyEZ connection: ConnectUnknownHostError(r2)"


I see in the following document Here on juniper.net that this error occurs when you don't have the host defined correctly in the inventory file. I don't believe this to be an issue with my inventory file because when I run ansible-inventory --host all appears to be in order



~/vagrant-projects/junos$ ansible-inventory --host r1

"ansible_ssh_host": "127.0.0.1",
"ansible_ssh_port": 2222,
"ansible_ssh_private_key_file": ".vagrant/machines/r1/virtualbox/private_key",
"ansible_ssh_user": "root"

~/vagrant-projects/junos$ ansible-inventory --host r2

"ansible_ssh_host": "127.0.0.1",
"ansible_ssh_port": 2200,
"ansible_ssh_private_key_file": ".vagrant/machines/r2/virtualbox/private_key",
"ansible_ssh_user": "root"



My playbook is copied from the following document which I got from Here on juniper.net.



My Inventory File



[vsrx]
r1 ansible_ssh_host=127.0.0.1 ansible_ssh_port=2222 ansible_ssh_private_key_file=.vagrant/machines/r1/virtualbox/private_key
r2 ansible_ssh_host=127.0.0.1 ansible_ssh_port=2200 ansible_ssh_private_key_file=.vagrant/machines/r2/virtualbox/private_key

[vsrx:vars]
ansible_ssh_user=root


My Playbook



---
- name: show version
hosts: vsrx
roles:
- Juniper.junos
connection: local
gather_facts: no

tasks:
- name: retrieve facts
juniper_junos_facts:
host: " inventory_hostname "
savedir: " playbook_dir "
- name: print version
debug:
var: junos.version









share|improve this question
























  • ConnectUnknownHostError(r1) means r1 is sent as host and not the IP to PyEZ. You need to pass ansible_ssh_host as host. I think if you don't pass any, we take them as default.

    – Nitin Kr
    Mar 20 at 16:19











  • Thanks for the feedback, can I ask how you pass ansible_ssh_host as host to PyEZ?

    – Barry Keegan
    Mar 22 at 7:38














0












0








0








I am trying to use juniper_junos_facts from the Ansible Junos module to query some VM's that I provisioned using Vagrant. However I am getting the following error.



fatal: [r1]: FAILED! => "changed": false, "msg": "Unable to make a PyEZ connection: ConnectUnknownHostError(r1)"
fatal: [r2]: FAILED! => "changed": false, "msg": "Unable to make a PyEZ connection: ConnectUnknownHostError(r2)"


I see in the following document Here on juniper.net that this error occurs when you don't have the host defined correctly in the inventory file. I don't believe this to be an issue with my inventory file because when I run ansible-inventory --host all appears to be in order



~/vagrant-projects/junos$ ansible-inventory --host r1

"ansible_ssh_host": "127.0.0.1",
"ansible_ssh_port": 2222,
"ansible_ssh_private_key_file": ".vagrant/machines/r1/virtualbox/private_key",
"ansible_ssh_user": "root"

~/vagrant-projects/junos$ ansible-inventory --host r2

"ansible_ssh_host": "127.0.0.1",
"ansible_ssh_port": 2200,
"ansible_ssh_private_key_file": ".vagrant/machines/r2/virtualbox/private_key",
"ansible_ssh_user": "root"



My playbook is copied from the following document which I got from Here on juniper.net.



My Inventory File



[vsrx]
r1 ansible_ssh_host=127.0.0.1 ansible_ssh_port=2222 ansible_ssh_private_key_file=.vagrant/machines/r1/virtualbox/private_key
r2 ansible_ssh_host=127.0.0.1 ansible_ssh_port=2200 ansible_ssh_private_key_file=.vagrant/machines/r2/virtualbox/private_key

[vsrx:vars]
ansible_ssh_user=root


My Playbook



---
- name: show version
hosts: vsrx
roles:
- Juniper.junos
connection: local
gather_facts: no

tasks:
- name: retrieve facts
juniper_junos_facts:
host: " inventory_hostname "
savedir: " playbook_dir "
- name: print version
debug:
var: junos.version









share|improve this question














I am trying to use juniper_junos_facts from the Ansible Junos module to query some VM's that I provisioned using Vagrant. However I am getting the following error.



fatal: [r1]: FAILED! => "changed": false, "msg": "Unable to make a PyEZ connection: ConnectUnknownHostError(r1)"
fatal: [r2]: FAILED! => "changed": false, "msg": "Unable to make a PyEZ connection: ConnectUnknownHostError(r2)"


I see in the following document Here on juniper.net that this error occurs when you don't have the host defined correctly in the inventory file. I don't believe this to be an issue with my inventory file because when I run ansible-inventory --host all appears to be in order



~/vagrant-projects/junos$ ansible-inventory --host r1

"ansible_ssh_host": "127.0.0.1",
"ansible_ssh_port": 2222,
"ansible_ssh_private_key_file": ".vagrant/machines/r1/virtualbox/private_key",
"ansible_ssh_user": "root"

~/vagrant-projects/junos$ ansible-inventory --host r2

"ansible_ssh_host": "127.0.0.1",
"ansible_ssh_port": 2200,
"ansible_ssh_private_key_file": ".vagrant/machines/r2/virtualbox/private_key",
"ansible_ssh_user": "root"



My playbook is copied from the following document which I got from Here on juniper.net.



My Inventory File



[vsrx]
r1 ansible_ssh_host=127.0.0.1 ansible_ssh_port=2222 ansible_ssh_private_key_file=.vagrant/machines/r1/virtualbox/private_key
r2 ansible_ssh_host=127.0.0.1 ansible_ssh_port=2200 ansible_ssh_private_key_file=.vagrant/machines/r2/virtualbox/private_key

[vsrx:vars]
ansible_ssh_user=root


My Playbook



---
- name: show version
hosts: vsrx
roles:
- Juniper.junos
connection: local
gather_facts: no

tasks:
- name: retrieve facts
juniper_junos_facts:
host: " inventory_hostname "
savedir: " playbook_dir "
- name: print version
debug:
var: junos.version






ansible vagrant junos-automation pyez






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Mar 20 at 14:43









Barry KeeganBarry Keegan

315 bronze badges




315 bronze badges















  • ConnectUnknownHostError(r1) means r1 is sent as host and not the IP to PyEZ. You need to pass ansible_ssh_host as host. I think if you don't pass any, we take them as default.

    – Nitin Kr
    Mar 20 at 16:19











  • Thanks for the feedback, can I ask how you pass ansible_ssh_host as host to PyEZ?

    – Barry Keegan
    Mar 22 at 7:38


















  • ConnectUnknownHostError(r1) means r1 is sent as host and not the IP to PyEZ. You need to pass ansible_ssh_host as host. I think if you don't pass any, we take them as default.

    – Nitin Kr
    Mar 20 at 16:19











  • Thanks for the feedback, can I ask how you pass ansible_ssh_host as host to PyEZ?

    – Barry Keegan
    Mar 22 at 7:38

















ConnectUnknownHostError(r1) means r1 is sent as host and not the IP to PyEZ. You need to pass ansible_ssh_host as host. I think if you don't pass any, we take them as default.

– Nitin Kr
Mar 20 at 16:19





ConnectUnknownHostError(r1) means r1 is sent as host and not the IP to PyEZ. You need to pass ansible_ssh_host as host. I think if you don't pass any, we take them as default.

– Nitin Kr
Mar 20 at 16:19













Thanks for the feedback, can I ask how you pass ansible_ssh_host as host to PyEZ?

– Barry Keegan
Mar 22 at 7:38






Thanks for the feedback, can I ask how you pass ansible_ssh_host as host to PyEZ?

– Barry Keegan
Mar 22 at 7:38













1 Answer
1






active

oldest

votes


















1
















As you're using connection: local you need to give the module full connection details (usually packaged in a provider dictionary at the play level to reduce repetition):



 - name: retrieve facts
juniper_junos_facts:
host: " ansible_ssh_host "
port: " ansible_ssh_port "
user: " ansible_ssh_user "
passwd: " ansible_ssh_pass "
ssh_private_key_file: " ansible_ssh_private_key_file "
savedir: " playbook_dir "


Full docs are here (watch out for the correct role version in the URL): https://junos-ansible-modules.readthedocs.io/en/2.1.0/juniper_junos_facts.html where you can also see what the defaults are.



To fully explain the "provider" method, your playbook should look something like this:



---
- name: show version
hosts: vsrx
roles:
- Juniper.junos
connection: local
gather_facts: no

vars:
connection_info:
host: " ansible_ssh_host "
port: " ansible_ssh_port "
user: " ansible_ssh_user "
passwd: " ansible_ssh_pass "
ssh_private_key_file: " ansible_ssh_private_key_file "

tasks:
- name: retrieve facts
juniper_junos_facts:
provider: " connection_info "
savedir: " playbook_dir "
- name: print version
debug:
var: junos.version






share|improve this answer






















  • 1





    This worked, thank you so much cmsirbu. I did have to add 1 line to the conncetion_info to point to my ssh_key that I was using which was ssh_private_key_file: " ansible_ssh_private_key_file "

    – Barry Keegan
    Mar 28 at 13:20











Your Answer






StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");

StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);

else
createEditor();

);

function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/4.0/"u003ecc by-sa 4.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);



);














draft saved

draft discarded
















StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55263504%2funable-to-make-a-pyez-connection-connectunknownhosterror%23new-answer', 'question_page');

);

Post as a guest















Required, but never shown

























1 Answer
1






active

oldest

votes








1 Answer
1






active

oldest

votes









active

oldest

votes






active

oldest

votes









1
















As you're using connection: local you need to give the module full connection details (usually packaged in a provider dictionary at the play level to reduce repetition):



 - name: retrieve facts
juniper_junos_facts:
host: " ansible_ssh_host "
port: " ansible_ssh_port "
user: " ansible_ssh_user "
passwd: " ansible_ssh_pass "
ssh_private_key_file: " ansible_ssh_private_key_file "
savedir: " playbook_dir "


Full docs are here (watch out for the correct role version in the URL): https://junos-ansible-modules.readthedocs.io/en/2.1.0/juniper_junos_facts.html where you can also see what the defaults are.



To fully explain the "provider" method, your playbook should look something like this:



---
- name: show version
hosts: vsrx
roles:
- Juniper.junos
connection: local
gather_facts: no

vars:
connection_info:
host: " ansible_ssh_host "
port: " ansible_ssh_port "
user: " ansible_ssh_user "
passwd: " ansible_ssh_pass "
ssh_private_key_file: " ansible_ssh_private_key_file "

tasks:
- name: retrieve facts
juniper_junos_facts:
provider: " connection_info "
savedir: " playbook_dir "
- name: print version
debug:
var: junos.version






share|improve this answer






















  • 1





    This worked, thank you so much cmsirbu. I did have to add 1 line to the conncetion_info to point to my ssh_key that I was using which was ssh_private_key_file: " ansible_ssh_private_key_file "

    – Barry Keegan
    Mar 28 at 13:20
















1
















As you're using connection: local you need to give the module full connection details (usually packaged in a provider dictionary at the play level to reduce repetition):



 - name: retrieve facts
juniper_junos_facts:
host: " ansible_ssh_host "
port: " ansible_ssh_port "
user: " ansible_ssh_user "
passwd: " ansible_ssh_pass "
ssh_private_key_file: " ansible_ssh_private_key_file "
savedir: " playbook_dir "


Full docs are here (watch out for the correct role version in the URL): https://junos-ansible-modules.readthedocs.io/en/2.1.0/juniper_junos_facts.html where you can also see what the defaults are.



To fully explain the "provider" method, your playbook should look something like this:



---
- name: show version
hosts: vsrx
roles:
- Juniper.junos
connection: local
gather_facts: no

vars:
connection_info:
host: " ansible_ssh_host "
port: " ansible_ssh_port "
user: " ansible_ssh_user "
passwd: " ansible_ssh_pass "
ssh_private_key_file: " ansible_ssh_private_key_file "

tasks:
- name: retrieve facts
juniper_junos_facts:
provider: " connection_info "
savedir: " playbook_dir "
- name: print version
debug:
var: junos.version






share|improve this answer






















  • 1





    This worked, thank you so much cmsirbu. I did have to add 1 line to the conncetion_info to point to my ssh_key that I was using which was ssh_private_key_file: " ansible_ssh_private_key_file "

    – Barry Keegan
    Mar 28 at 13:20














1














1










1









As you're using connection: local you need to give the module full connection details (usually packaged in a provider dictionary at the play level to reduce repetition):



 - name: retrieve facts
juniper_junos_facts:
host: " ansible_ssh_host "
port: " ansible_ssh_port "
user: " ansible_ssh_user "
passwd: " ansible_ssh_pass "
ssh_private_key_file: " ansible_ssh_private_key_file "
savedir: " playbook_dir "


Full docs are here (watch out for the correct role version in the URL): https://junos-ansible-modules.readthedocs.io/en/2.1.0/juniper_junos_facts.html where you can also see what the defaults are.



To fully explain the "provider" method, your playbook should look something like this:



---
- name: show version
hosts: vsrx
roles:
- Juniper.junos
connection: local
gather_facts: no

vars:
connection_info:
host: " ansible_ssh_host "
port: " ansible_ssh_port "
user: " ansible_ssh_user "
passwd: " ansible_ssh_pass "
ssh_private_key_file: " ansible_ssh_private_key_file "

tasks:
- name: retrieve facts
juniper_junos_facts:
provider: " connection_info "
savedir: " playbook_dir "
- name: print version
debug:
var: junos.version






share|improve this answer















As you're using connection: local you need to give the module full connection details (usually packaged in a provider dictionary at the play level to reduce repetition):



 - name: retrieve facts
juniper_junos_facts:
host: " ansible_ssh_host "
port: " ansible_ssh_port "
user: " ansible_ssh_user "
passwd: " ansible_ssh_pass "
ssh_private_key_file: " ansible_ssh_private_key_file "
savedir: " playbook_dir "


Full docs are here (watch out for the correct role version in the URL): https://junos-ansible-modules.readthedocs.io/en/2.1.0/juniper_junos_facts.html where you can also see what the defaults are.



To fully explain the "provider" method, your playbook should look something like this:



---
- name: show version
hosts: vsrx
roles:
- Juniper.junos
connection: local
gather_facts: no

vars:
connection_info:
host: " ansible_ssh_host "
port: " ansible_ssh_port "
user: " ansible_ssh_user "
passwd: " ansible_ssh_pass "
ssh_private_key_file: " ansible_ssh_private_key_file "

tasks:
- name: retrieve facts
juniper_junos_facts:
provider: " connection_info "
savedir: " playbook_dir "
- name: print version
debug:
var: junos.version







share|improve this answer














share|improve this answer



share|improve this answer








edited Mar 28 at 17:15

























answered Mar 28 at 12:20









cmsirbucmsirbu

262 bronze badges




262 bronze badges










  • 1





    This worked, thank you so much cmsirbu. I did have to add 1 line to the conncetion_info to point to my ssh_key that I was using which was ssh_private_key_file: " ansible_ssh_private_key_file "

    – Barry Keegan
    Mar 28 at 13:20













  • 1





    This worked, thank you so much cmsirbu. I did have to add 1 line to the conncetion_info to point to my ssh_key that I was using which was ssh_private_key_file: " ansible_ssh_private_key_file "

    – Barry Keegan
    Mar 28 at 13:20








1




1





This worked, thank you so much cmsirbu. I did have to add 1 line to the conncetion_info to point to my ssh_key that I was using which was ssh_private_key_file: " ansible_ssh_private_key_file "

– Barry Keegan
Mar 28 at 13:20






This worked, thank you so much cmsirbu. I did have to add 1 line to the conncetion_info to point to my ssh_key that I was using which was ssh_private_key_file: " ansible_ssh_private_key_file "

– Barry Keegan
Mar 28 at 13:20









Got a question that you can’t ask on public Stack Overflow? Learn more about sharing private information with Stack Overflow for Teams.







Got a question that you can’t ask on public Stack Overflow? Learn more about sharing private information with Stack Overflow for Teams.




















draft saved

draft discarded















































Thanks for contributing an answer to Stack Overflow!


  • Please be sure to answer the question. Provide details and share your research!

But avoid


  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.

To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55263504%2funable-to-make-a-pyez-connection-connectunknownhosterror%23new-answer', 'question_page');

);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

SQL error code 1064 with creating Laravel foreign keysForeign key constraints: When to use ON UPDATE and ON DELETEDropping column with foreign key Laravel error: General error: 1025 Error on renameLaravel SQL Can't create tableLaravel Migration foreign key errorLaravel php artisan migrate:refresh giving a syntax errorSQLSTATE[42S01]: Base table or view already exists or Base table or view already exists: 1050 Tableerror in migrating laravel file to xampp serverSyntax error or access violation: 1064:syntax to use near 'unsigned not null, modelName varchar(191) not null, title varchar(191) not nLaravel cannot create new table field in mysqlLaravel 5.7:Last migration creates table but is not registered in the migration table

용인 삼성생명 블루밍스 목차 통계 역대 감독 선수단 응원단 경기장 같이 보기 외부 링크 둘러보기 메뉴samsungblueminx.comeh선수 명단용인 삼성생명 블루밍스용인 삼성생명 블루밍스ehsamsungblueminx.comeheheheh

155 수학 과학 기타 둘러보기 메뉴eh추가해eh문서를 완성해