Метаданные Amazon EC2 - PullRequest
       8

Метаданные Amazon EC2

2 голосов
/ 29 апреля 2009

Мы находимся в процессе миграции из центра обработки данных в Amazon. Мы небольшая компания, и вместо того, чтобы модернизировать наше оборудование, мы обнаружили, что это заманчиво для перехода в «облако». Мы собрали собственные AMI с нуля и в настоящее время решаем, как настроить среды.

Я использовал консоль управления Amazon и Elasticfox для управления ресурсами, но столкнулся с проблемой более долгосрочного управления. Когда у нас работает несколько серверов, трудно сказать, какие из них какие. Та же проблема существует с ресурсами EBS и их снимками. Похоже, что через инструменты AMI нет никакого способа добавить метаданные к ресурсам, чтобы выделить их с хорошим псевдонимом. Я прочитал ответ на другой вопрос, где группы безопасности использовались для «именования» экземпляров AMI, но это все еще оставляет меня с управлением EBS / snapshot.

Я знаю, что есть такие сервисы, как RightScale и Scalr, которые, я считаю, добавляют эти функции, но мне интересно, как другие справляются с этим самостоятельно?

Ответы [ 2 ]

1 голос
/ 09 мая 2009

Возможно, вы уже нашли решение, но я подумал, что отвечу на всякий случай.

Я начал проект с открытым исходным кодом несколько месяцев назад, чтобы помочь организовать инфраструктуры EC2. Он хранит метаданные в SimpleDB.

Вы создаете конфигурацию своего компьютера в Ruby DSL, где все организовано в среды и роли. Вот типичная конфигурация:

env :stage do
  size 'm1.small'                # Default EC2 machine type for the 'stage'

  role :app do
    positions 1                  # Only 1 machine
    addresses '11.22.33.44'      # Define an elastic IP

    disks do                     # Define EBS volumes
      path "/rudy/disk1" do      # The path to mount
        size 100                 # The size in GB
        device "/dev/sdr"        # The unique disk device
      end
    end
  end
  role :db do
    size 'm1.large'              # Use more powerful machine for db
    ami 'ami-dc1038a8'           # A 64-bit debian
  end
end

Затем вы можете запустить среду из командной строки:

$ rudy startup
The following machines were started:
m-us-east-1b-stage-app-01  ec2-11-22-33-44.us-east-1.compute.amazonaws.com

$ rudy -r db startup
The following machines were started:
m-us-east-1b-stage-db-01  ec2-79-125-50-26.us-east-1.compute.amazonaws.com

$ rudy machines
m-us-east-1b-stage-app-01  ec2-11-22-33-44.us-east-1.compute.amazonaws.com
m-us-east-1b-stage-db-01  ec2-79-125-50-26.us-east-1.compute.amazonaws.com

$ rudy disks 
disk-us-east-1b-stage-app-01-rudy-disk1  vol-eee10486;  100GB; /dev/sdr; mounted

Вы можете войти с помощью:

$ rudy -u root ssh

Проект называется Rudy. Вот пара ссылок для получения дополнительной информации и вы можете связаться со мной напрямую, если у вас есть какие-либо вопросы:

0 голосов
/ 29 апреля 2009

Самый простой способ назвать ваши серверы и тома / снимки EBS - это использовать бесплатный сервис RightScale для управления вашими экземплярами; это позволяет создать псевдоним для каждого работающего экземпляра EC2, тома EBS или моментального снимка.

Если вы не хотите использовать RightScale, вы можете передать пользовательские данные вашему экземпляру во время запуска и использовать его для задания имени хоста или другого значения, которое позволит вам уникально идентифицировать экземпляр. Я не уверен, что вы сделаете для томов EBS. Посмотрите здесь для получения более подробной информации (документ AWS, похоже, использует маскирование URL, поэтому перейдите к разделу Использование Amazon EC2 / Запуск и Использование экземпляров / Метаданные экземпляра)

...