मैं उत्तरदायी मदद के साथ अमेज़ॅन ईसी 2 मशीनों को बनाना और प्रावधान करना चाहता हूं। अब, मैं निम्नलिखित त्रुटि मिलती है:उत्तर अमेज़ॅन ईसी 2। कुंजी जोड़ी मौजूद नहीं है
fatal: [localhost]: FAILED! => {"changed": false, "failed": true, "msg": "Instance creation failed => InvalidKeyPair.NotFound: The key pair '~/.keys/EC2-Kibi-Enterprise-Deployment.pem' does not exist"}
लेकिन .pem कुंजी मौजूद है:
$ ls -lh ~/.keys/EC2-Kibi-Enterprise-Deployment.pem
-r-------- 1 sergey sergey 1.7K Apr 6 09:56 /home/sergey/.keys/EC2-Kibi-Enterprise-Deployment.pem
और यह यूरोपीय संघ (आयरलैंड) क्षेत्र में बनाया गया था।
--
- name: Setup servers on Amazon EC2 machines
hosts: localhost
gather_facts: no
tasks:
- include_vars: group_vars/all/ec2_vars.yml
### Create Amazon EC2 instances
- name: Amazon EC2 | Create instances
ec2:
count: "{{ count }}"
key_name: "{{ key }}"
region: "{{ region }}"
zone: "{{ zone }}"
group: "{{ group }}"
instance_type: "{{ machine }}"
image: "{{ image }}"
wait: true
wait_timeout: 500
#vpc_subnet_id: "{{ subnet }}"
#assign_public_ip: yes
register: ec2
- name: Amazon EC2 | Wait for SSH to come up
wait_for:
host: "{{ item.public_ip }}"
port: 22
delay: 10
timeout: 60
state: started
with_items: "{{ ec2.instances }}"
- name: Amazon EC2 | Add hosts to the kibi_servers in-memory inventory group
add_host: hostname={{ item.public_ip }} groupname=kibi_servers
with_items: "{{ ec2.instances }}"
### END
### Provision roles
- name: Amazon EC2 | Provision new instances
hosts: kibi_servers
become: yes
roles:
- common
- java
- elasticsearch
- logstash
- nginx
- kibi
- supervisor
### END
और मेरे वर फ़ाइल:
count: 2
region: eu-west-1
zone: eu-west-1a
group: default
image: ami-d1ec01a6
machine: t2.medium
subnet: subnet-3a2aa952
key: ~/.keys/EC2-Kibi-Enterprise-Deployment.pem
क्या .pem फ़ाइल यहाँ साथ कुछ गड़बड़ है
यहाँ मेरी प्लेबुक है?
क्या मुझे स्थानीय रूप से एक एसएसएच कुंजी जोड़ी बनाने और अमेज़ॅन कंसोल में सार्वजनिक कुंजी आयात करने की आवश्यकता है? क्या यह कुंजी है? – trex
आपको एडब्ल्यूएस में सार्वजनिक कुंजी (निजी भाग नहीं) अपलोड करने की आवश्यकता है। आप इसे कंसोल के माध्यम से कर सकते हैं या आप उदाहरण के अनुसार Ansible के माध्यम से कर सकते हैं। – ydaetskcoR
लगता है कि 'ec2_keypair' मॉड्यूल मौजूद नहीं है। लेकिन [ec2_key] (http://docs.ansible.com/ansible/ec2_key_module.html) मॉड्यूल है। मैंने इसका इस्तेमाल किया और var key में 'key_name: ~/.ssh/EC2-Kibi-Enterprise' भी इंगित किया। अब मेरे पास निम्न त्रुटि है: 'विफल: [localhost] => (item = ssh-rsa एए ...", "msg": "या तो क्षेत्र या ec2_url निर्दिष्ट होना चाहिए"} ' – trex