2016-09-29 3 views
2

Я пытаюсь указать экземпляр EC2 и установить на нем LAMP-сервер, используя Ansible from localhost. Я успешно подготовил экземпляр, но я не смог установить apache, php и mysql из-за этой ошибки «Не удалось подключиться к хосту через ssh».Ansible-Не удалось подключиться к хосту через ssh

OS: El Capitan 10.11.6

анзибль: 2.0.2.0

Вот сборник пьес: `---

- hosts: localhost 
    connection: local 
    gather_facts: no 
    vars_files: 
    - "vars/{{ project_name }}.yml" 
    - "vars/vpc_info.yml" 
    tasks: 
- name: Provision 
    local_action: 
    module: ec2 
    region: "xxxxxx" 
    vpc_subnet_id: "xxxxxx" 
    assign_public_ip: yes 
    key_name: "xxxxxxx" 
    instance_type: "t2.nano" 
    image: "xxxxxxxx" 

    wait: yes 
    instance_tags: 
     Name: "LAMP" 
     class: "test" 
     environment: "dev" 
     project: "{{ project_name }}" 
     az: a 
    exact_count: 1 
    count_tag: 
     Name: "LAMP" 
    monitoring: yes 
    register: ec2a 

- hosts: lamp 
    roles: 
    - lamp_server 

Содержание файла ansible.cfg:

[defaults] 
private_key_file=/Users/nico/.ssh/xxxxx.pem 

кадастр:

lamp  ansible_ssh_host=<EC2 IP> ansible_user=ubuntu 

Команда, используемая для запуска пьес:

ansible-playbook -i inventory ec2_up.yml -e project_name="lamp_server" -vvvv 

Выход:

ESTABLISH SSH CONNECTION FOR USER: ubuntu 
<xxxxxxxxxx> SSH: EXEC ssh -C -vvv -o ControlMaster=auto -o ControlPersist=60s -o 'IdentityFile="/Users/nico/.ssh/xxxxxxx.pem"' -o KbdInteractiveAuthentication=no -o PreferredAuthentications=gssapi-with-mic,gssapi-keyex,hostbased,publickey -o PasswordAuthentication=no -o User=ubuntu -o ConnectTimeout=10 -o ControlPath=/Users/nico/.ansible/cp/ansible-ssh-%h-%p-%r xxxxxxx '/bin/sh -c '"'"'(umask 22 && mkdir -p "` echo $HOME/.ansible/tmp/ansible-tmp-1475186461.08-93383010782630 `" && echo "` echo $HOME/.ansible/tmp/ansible-tmp-1475186461.08-93383010782630 `")'"'"'' 
52.28.251.117 | UNREACHABLE! => { 
    "changed": false, 
    "msg": "Failed to connect to the host via ssh.", 
    "unreachable": true 
} 

Я прочитал много потоков относительно этой ошибки, но ничего не помогло. :(

+1

Проблема решена: добавлена ​​-c paramiko в конце команды, которая запускает сборник пьес – NicoleB

+1

'ansible-playbook -i inventory ec2_up.yml -e project_name =" lamp_server "-vvvv -c paramiko' works – NicoleB

+0

, пожалуйста, добавьте это в ответ на этот вопрос и проверьте «принятый». Ничего неправильного ответа и принятия ваших собственных ответ. –

ответ

0

анзибль-Playbook -i инвентаризации ec2_up.yml -e project_name = "lamp_server" -vvvv -c paramiko

Смежные вопросы