2012-08-01 8 views
11

Witam Próbuję gumowego klejnotu z ec2, ale mam problemy z przejściem przez sekcję szybkiego startu. Z jakiegoś powodu mgła pod gumą nie znajduje pary. Oto szczegóły:Guma 2 (mgła) i błąd keypair

w irb (ścieżka tutaj jest zawarta w mojej właściwości rubber.yml key_file - gsg-keypair jest moim kluczem prywatnym bez rozszerzenia pem, a klucz publiczny jest w tym samym katalogu):

1.9.3p125 :010 > File.open("#{Dir[(File.expand_path('~') rescue '/root') + '/.ec2/*'].first}") 


=> #<File:/home/charlie/.ec2/gsg-keypair> 

Ale za każdym razem uruchomić: Gumowa osłona: create_staging akceptując wszystkie ustawienia domyślne jestem coraz to:

/home/charlie/.rvm/gems/[email protected]/gems/excon-0.15.4/lib/excon/connection.rb:276:in `request_kernel': The key pair 'gsg-keypair' does not exist (Fog::Compute::AWS::NotFound) 
from /home/charlie/.rvm/gems/[email protected]/gems/excon-0.15.4/lib/excon/connection.rb:105:in `request' 
from /home/charlie/.rvm/gems/[email protected]/gems/fog-1.5.0/lib/fog/core/connection.rb:20:in `request' 
from /home/charlie/.rvm/gems/[email protected]/gems/fog-1.5.0/lib/fog/aws/compute.rb:368:in `request' 
from /home/charlie/.rvm/gems/[email protected]/gems/fog-1.5.0/lib/fog/aws/requests/compute/run_instances.rb:117:in `run_instances' 
from /home/charlie/.rvm/gems/[email protected]/gems/fog-1.5.0/lib/fog/aws/models/compute/server.rb:182:in `save' 
from /home/charlie/.rvm/gems/[email protected]/gems/fog-1.5.0/lib/fog/core/collection.rb:50:in `create' 
from /home/charlie/.rvm/gems/[email protected]/gems/rubber-2.0.5/lib/rubber/cloud/fog.rb:27:in `create_instance' 
from /home/charlie/.rvm/gems/[email protected]/gems/rubber-2.0.5/lib/rubber/thread_safe_proxy.rb:13:in `method_missing' 
from /home/charlie/.rvm/gems/[email protected]/gems/rubber-2.0.5/lib/rubber/recipes/rubber/instances.rb:295:in `create_instance' 
from /home/charlie/.rvm/gems/[email protected]/gems/rubber-2.0.5/lib/rubber/recipes/rubber/instances.rb:215:in `block (2 levels) in create_instances' 

jakiś pomysł dlaczego tak się dzieje?

Dzięki Charlie

Odpowiedz

36

Właśnie doświadczyłem tego, a to, co się stało:

W pliku rubber.yml miałem:
region: us-east-1

Jednak, gdy tworzę klucz parę w konsoli AWS, byłem w innym regionie.
Musisz utworzyć parę kluczy w tym samym regionie, który określono w pliku rubber.yml.

enter image description here

Nadzieja to pomaga!

+0

To działa. Dzięki. –

3

W nowym interfejsie AWS region znajduje się w prawym górnym rogu. Wybrać dowolny obszar, który chcesz, wystarczy upewnić się, że plik config/rubber/rubber.yml jest dokładny:

cloud_providers: 
aws: 
# REQUIRED The AWS region that you want to use. 
# 
# Options include 
#us-east-1 
# eu-west-1 
# ap-northeast-1 
# ap-southeast-1 
# ap-southeast-2 
# 
region: us-east-1 

My config/rubber/rubber.yml jest dokładnie tak, jak powyżej, i to działa. Dzięki Johnnycakes za rozwiązanie tego!

1

Przepraszamy za "przywrócenie" starego numeru, ale może to być przydatne dla kogoś.

Miałem podobny problem, z wyjątkiem tego, że moje regiony były dokładnie takie same. Mój problem polegał na tym, że zmieniono nazwę pliku klucza i wygląda na to, że powinien być nazywany dokładnie "Nazwą pary kluczy" w AWS/EC2/Keypairs.

0

Dodałem tę linię do mojego pliku rubber/deploy.rb i zajął się tym. Ta linia była [domyślna] launch-wizard-1 to nazwa mojej instancji ec2 aws. dodaj .. assign_security_groups: [launch-wizard-1].