Возникли ошибки при использовании Chef-solo+vagran+AWS+ Mac OS X

Я намеревался использовать Vagrant, Chef-solo для создания среды AWS. Но у меня есть некоторые ошибки, которые я не могу решить. Кто-нибудь может помочь мне?

Шаги, которые я использовал:

  1. Установите все необходимое окружение на Mac OS X: например, vagrant, плагин vagrant, виртуальную коробку, шеф-повар, плагин шеф-повара и так далее.

  2. Загрузите бродячие файлы конфигурации:

    git clone https://github.com/ICTatRTI/ict-chef-repo
    
  3. Vagrantfile

    # -*- mode: ruby -*-
    # vi: set ft=ruby :
    Vagrant.configure("2") do |config|
      # All Vagrant configuration is done here. The most common configuration
      # options are documented and commented below. For a complete reference,
      # please see the online documentation at vagrantup.com.
      #config.vm.box_url = "https://opscode-vm.s3.amazonaws.com/vagrant/opscode_ubuntu-12.04_chef-11.2.0.box"
      #config.vm.box = "opscode-ubuntu-1204"
      config.vm.box = "dummy"
      config.vm.network :forwarded_port, guest: 80, host: 8888
      config.vm.network :forwarded_port, guest: 3306, host: 3333
      config.ssh.username = "ubuntu"
    
      config.vm.provider :aws do |aws, override|
      #config.vm.provider :aws do |aws|
        aws.access_key_id     = 'XXXXXXXXXXXXXXXQ'
        aws.secret_access_key = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
        aws.keypair_name = "usr-aws-2013"
        aws.availability_zone = "us-west-2c"
        aws.instance_type = "t1.micro"
        aws.region = "us-west-2"
        aws.ami = "ami-0849a03f"
        aws.security_groups = ['quicklaunch-1']
        aws.tags = { 
          'Name' => 'tong',
          'Description' => 'vagrant test'
        } 
        override.ssh.private_key_path = "~/.ssh/usr-aws-2013.pem"
        override.ssh.username = "ubuntu"
      end
      config.vm.provision :chef_solo do |chef|
    
         chef.node_name = 'base' 
         chef.cookbooks_path = "./cookbooks"
         chef.roles_path = "./roles"
         chef.add_role "base"
         chef.add_role "ushahidi"
       end
    
    end
    
  4. Бежать:

    vagrant up --provider=aws
    
  5. Получил следующие ошибки

    Bringing machine 'default' up with 'aws' provider...
    WARNING: Nokogiri was built against LibXML version 2.8.0, but has dynamically loaded 2.9.1
    [default] Warning! The AWS provider doesn't support any of the Vagrant
    high-level network configurations (`config.vm.network`). They
    will be silently ignored.
    [default] Launching an instance with the following settings...
    [default]  -- Type: t1.micro
    [default]  -- AMI: ami-0849a03f
    [default]  -- Region: us-west-2
    [default]  -- Availability Zone: us-west-2c
    [default]  -- Keypair: usr-aws-2013
    [default]  -- Security Groups: ["quicklaunch-1"]
    [default]  -- Block Device Mapping: []
    [default]  -- Terminate On Shutdown: false
    An error occurred while executing multiple actions in parallel.
    Any errors that occurred are shown below.
    
    An unexpected error ocurred when executing the action on the
    'default' machine. Please report this as a bug:
     The image id '[ami-0849a03f]' does not exist
    

person kkt    schedule 28.11.2013    source источник
comment
Мне кажется очевидным: в указанном регионе и зоне нет ami-0849a03f или у вас нет к нему доступа.   -  person Draco Ater    schedule 28.11.2013
comment
Привет @DracoAter. Я создаю экземпляр в консоли AWS EC2 и гарантирую, что экземпляр выглядит как i-bddcf889 t1.micro us-west-2b. И я изменяю Vagrantfile aws.availability_zone = us-west-2b aws .instance_type = t1.micro aws.region = us-west-2 aws.ami = ami-bddcf889, но он показывает те же ошибки   -  person kkt    schedule 28.11.2013


Ответы (1)


Экземпляр и AMI — это разные вещи, и у них тоже разные номера. Поэтому, если у вас есть i-bddcf889, вы не можете ссылаться на него в своем Vagrantfile как ami-bddcf889.

Вместо этого вам не нужно создавать/запускать экземпляр вручную — вы должны предоставить ami, из которого Vagrant сам создаст экземпляр. Например, возьмите тот, из которого вы сделали экземпляр вручную.

person Draco Ater    schedule 28.11.2013
comment
Привет, извините за поздний ответ, но, кажется, между нами есть разница во времени. Вы правы, и я совершенно неправильно это понимаю. Но как правильно получить этот амис-номер и регион? Нашел сайт, который может найти амис, но толком не знаю, как им пользоваться, Есть ли разница в файлах загрузчика между этими амисами? эти[ссылка]aws.amazon .com/marketplace/search/results/ - person kkt; 29.11.2013
comment
Не должно быть никаких различий, если ОС все еще одного типа (Linux, Windows, Mac) - person Draco Ater; 29.11.2013
comment
На моей странице консоли AWS я обнаружил, что у вас нет изображений, соответствующих критериям фильтра. Используйте элементы управления фильтром выше, чтобы просмотреть изображения, принадлежащие Amazon и другим компаниям. в тегах ‹b›AMIs‹/b›, нужно ли мне создавать/импортировать в него AMI? Можете ли вы сказать мне, как это сделать? - person kkt; 29.11.2013
comment
Ищите изображения, принадлежащие Amazon и другим компаниям — они общедоступны - person Draco Ater; 29.11.2013
comment
Большое спасибо~ Я ПОНЯЛ~ ЭТО РАБОТАЕТ! - person kkt; 29.11.2013