现在的位置: 首页 > 综合 > 正文

[openstack]metadata service使用方法

2014年08月10日 ⁄ 综合 ⁄ 共 1420字 ⁄ 字号 评论关闭

声明:

本博客欢迎转发,但请保留原作者信息!内容系本人学习、研究和总结,如有雷同,实属荣幸!

原文地址:http://blog.csdn.net/gtt116/

概述

为了兼容EC2,openstack也提供了在虚拟机内通过http://169.254.169.254来获取虚拟机信息的接口。 以下是对该接口的介绍。

注意,以下命令是在虚拟机内部执行,不是在宿主机以及安装了Openstack的环境的虚拟机中运行。

基本使用方法

$ curl [http://169.254.169.254/openstack]
2012-08-10
latest

获取Openstack的虚拟机相关信息

$ curl [http://169.254.169.254/openstack/2012-08-10/meta_data.json]
{"uuid": "d8e02d56-2648-49a3-bf97-6be8f1204f38", "availability_zone": "nova", "hostname": "test.novalocal", "launch_index": 0, "meta": {"priority": "low", "role": "webserver"}, "public_keys": {"mykey": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAAAgQDYVEprvtYJXVOBN0XNKVVRNCRX6BlnNbI+USLGais1sUWPwtSg7z9K9vhbYAPUZcq8c/s5S9dg5vTHbsiyPCIDOKyeHba4MUJq8Oh5b2i71/3BISpyxTBH/uZDHdslW2a+SrPDCeuMMoss9NFhBdKtDkdG9zyi0ibmCP6yMdEX8Q== Generated by Nova\n"}, "name": "test"}

获取EC2的虚拟机相关信息

$ curl [http://169.254.169.254/1.0/meta-data]
ami-id
ami-launch-index
ami-manifest-path
hostname
instance-id
local-ipv4
reservation-id
$ curl [http://169.254.169.254/1.0/meta-data/ami-id]
ami-0000005d

获取user-data

$ curl [http://169.254.169.254/2009-04-04/user-data]
\#\!/bin/bash
echo 'Extra user data here'

Havana新增接口

In havana you can get your vendor data from metadata server, then get the data by:
curl [http://169.254.169.254/openstack/2013-10-17/vendor_data.json]

2013-10-17 is the date of Havana release.In service side, add `vendordata_jsonfile_path=/etc/nova/vendordata.json` into nova.conf. then feed json content
into vendordata.json. Then your client can get the data from above command.

抱歉!评论已关闭.