从镜像启动实例

请按照以下步骤从镜像启动实例。

  1. 在收集到所需参数后,运行以下命令来启动实例。指定服务器名称、flavor ID 和镜像 ID。

    $ openstack server create --flavor FLAVOR_ID --image IMAGE_ID --key-name KEY_NAME \
      --user-data USER_DATA_FILE --security-group SEC_GROUP_NAME --property KEY=VALUE \
      INSTANCE_NAME
    

    可选地,您可以提供一个密钥名称用于访问控制,以及一个安全组用于安全。您还可以包含元数据键值对。例如,您可以通过提供 --property description="My Server" 参数来为您的服务器添加描述。

    您可以使用 --user-data USER-DATA-FILE 参数在实例启动时从本地文件中传递 用户数据

    重要提示

    如果启动的实例名称(INSTANCE_NAME)超过 63 个字符,Compute 会在将其转换为主机名时自动截断它,以确保 dnsmasq 的正常工作。相应的警告信息会写入 neutron-dnsmasq.log 文件。

    以下命令启动 MyCirrosServer 实例,flavor 为 m1.small(ID 为 1),镜像为 cirros-0.3.2-x86_64-uec(ID 为 397e713c-b95b-4186-ad46-6126863ea0a9),安全组为 default,密钥为 KeyPair01,用户数据文件名为 cloudinit.file

    $ openstack server create --flavor 1 --image 397e713c-b95b-4186-ad46-6126863ea0a9 \
      --security-group default --key-name KeyPair01 --user-data cloudinit.file \
      myCirrosServer
    

    根据您提供的参数,该命令会返回一个服务器属性列表。

    +--------------------------------------+-----------------------------------------------+
    | Field                                | Value                                         |
    +--------------------------------------+-----------------------------------------------+
    | OS-DCF:diskConfig                    | MANUAL                                        |
    | OS-EXT-AZ:availability_zone          |                                               |
    | OS-EXT-SRV-ATTR:host                 | None                                          |
    | OS-EXT-SRV-ATTR:hypervisor_hostname  | None                                          |
    | OS-EXT-SRV-ATTR:instance_name        |                                               |
    | OS-EXT-STS:power_state               | NOSTATE                                       |
    | OS-EXT-STS:task_state                | scheduling                                    |
    | OS-EXT-STS:vm_state                  | building                                      |
    | OS-SRV-USG:launched_at               | None                                          |
    | OS-SRV-USG:terminated_at             | None                                          |
    | accessIPv4                           |                                               |
    | accessIPv6                           |                                               |
    | addresses                            |                                               |
    | adminPass                            | E4Ksozt4Efi8                                  |
    | config_drive                         |                                               |
    | created                              | 2016-11-30T14:48:05Z                          |
    | flavor                               | m1.tiny                                       |
    | hostId                               |                                               |
    | id                                   | 89015cc9-bdf1-458a-8518-fdca2b4a5785          |
    | image                                | cirros (397e713c-b95b-4186-ad46-6126863ea0a9) |
    | key_name                             | KeyPair01                                     |
    | name                                 | myCirrosServer                                |
    | os-extended-volumes:volumes_attached | []                                            |
    | progress                             | 0                                             |
    | project_id                           | 5669caad86a04256994cdf755df4d3c1              |
    | properties                           |                                               |
    | security_groups                      | [{u'name': u'default'}]                       |
    | status                               | BUILD                                         |
    | updated                              | 2016-11-30T14:48:05Z                          |
    | user_id                              | c36cec73b0e44876a4478b1e6cd749bb              |
    | metadata                             | {u'KEY': u'VALUE'}                            |
    +--------------------------------------+-----------------------------------------------+
    

    状态为 BUILD 表示实例已启动,但尚未在线。

    状态为 ACTIVE 表示实例处于活动状态。

  2. 从输出中的 id 字段中复制服务器 ID 值。使用 ID 获取服务器详细信息或删除您的服务器。

  3. adminPass 字段中复制管理密码值。使用密码登录到您的服务器。

  4. 检查实例是否在线。

    $ openstack server list
    

    该列表显示您所属项目的全部实例的 ID、名称、状态以及私有(如果已分配,则为公有)IP 地址

    +-------------+----------------------+--------+------------+-------------+------------------+------------+
    | ID          | Name                 | Status | Task State | Power State | Networks         | Image Name |
    +-------------+----------------------+--------+------------+-------------+------------------+------------+
    | 84c6e57d... | myCirrosServer       | ACTIVE | None       | Running     | private=10.0.0.3 | cirros     |
    | 8a99547e... | myInstanceFromVolume | ACTIVE | None       | Running     | private=10.0.0.4 | centos     |
    +-------------+----------------------+--------+------------+-------------+------------------+------------+
    

    如果实例的状态为 ACTIVE,则表示实例已在线。

  5. 要查看 openstack server list 命令的可用选项,请运行以下命令

    $ openstack help server list
    

    注意

    如果您没有提供密钥对、安全组或规则,则只能通过 VNC 从云内部访问该实例。即使 ping 该实例也不可能。