【问题标题】:Amazon EC2 Metadata亚马逊 EC2 元数据
【发布时间】:2009-04-29 15:33:57
【问题描述】:

我们正在从数据中心迁移到亚马逊。我们是一家小公司,而不是升级我们的硬件,我们发现迁移到“云”是很诱人的。我们从头开始整合自定义 AMI,目前正在决定如何配置环境。

我一直在使用 Amazon 的管理控制台和 Elasticfox 来管理资源,但我遇到了长期管理问题。当我们有多个服务器在运行时,很难分辨哪个是哪个。 EBS 资源及其快照也存在同样的问题。似乎没有任何方法可以通过 AMI 工具将元数据添加到资源中,以使用漂亮的别名来区分它们。我阅读了对另一个问题的回复,其中安全组用于“命名” AMI 实例,但这仍然让我进行 EBS/快照管理。

我知道有像 RightScale 和 Scalr 这样的服务,我相信它们会添加这些功能,但我想知道其他人是如何自己处理这些的?

【问题讨论】:

    标签: hosting amazon-ec2 cloud


    【解决方案1】:

    您可能已经找到了解决方案,但我想我会回答以防万一。

    几个月前,我启动了一个开源项目来帮助组织 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。这里有几个链接可以了解更多信息,如果您有任何问题,请随时直接与我联系:

    【讨论】:

      【解决方案2】:

      命名您的服务器和 EBS 卷/快照的最简单方法是使用 RightScale 的免费服务来管理您的实例;这让您可以为每个正在运行的 EC2 实例、EBS 卷或快照创建一个别名。

      如果您不想使用 RightScale,您可以在启动时将用户数据传递给您的实例,并使用它来设置主机名或其他可以让您唯一标识实例的值。不过,我不确定您会为 EBS 卷做什么。查看here 了解更多详细信息(AWS 文档似乎使用 URL 掩码,因此请转到使用 Amazon EC2/启动和使用实例/实例元数据)

      【讨论】:

        猜你喜欢
        • 2013-11-24
        • 1970-01-01
        • 2015-10-22
        • 2015-01-23
        • 2015-07-06
        • 2012-09-23
        • 2010-12-28
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多