获取 metadata 的完整例子 - 每天5分钟玩转 OpenStack(166)

我们将通过实验详细分析 instance 从 nova-api-metadata 获取信息的完整过程。

 

环境介绍

 

1. 一个 all-in-one 环境(多节点类似)。
 

2. 已创建 neutron 网络 test_net,DHCP 已启动。在这个 metadata 实验中, test_net 的 type 不重要,flat、vlan、vxlan 都可以。

 

 

3. 暂无 neutron router。

 

准备就绪,开始实验。

 

启动 instance

 

通过 cirros 镜像部署一个 instance,命名为 c1,选择网络 test_net。启动过程中,查看 instance 的启动日志。

 

上面的 log 中我们看到两个信息:

 

① instance 从 DHCP 拿到了 IP 17.17.17.5,这个好理解,因为我们在test_net 上开启的 DHCP 服务。

 

② instance 会去访问 http://169.254.169.254/2009-04-04/instance-id,尝试了 20 次都失败了。

 

神奇的 169.254.169.254

 

169.254.169.254 是个什么地址?

 

这是 metadata service 的 IP。

 

这个地址来源于 AWS,当年亚马逊在设计公有云的时候,为了让 instance 能够访问 metadata,就将 169.254.169.254 这个特殊的 IP 作为 metadata 服务器的地址,instance 启动时就会向 169.254.169.254 请求 metadata。OpenStack 之后也沿用了这个设计。

 

我们现在遇到的问题是 169.254.169.254 没法访问啊!cirros 的 cloud-init 显然是没有拿到 metadata 的,这点至少可以从 instance 的 hostname 没有被设置为 c1 判断出来。

 

 

前面我们在 Metadata Service 架构部分介绍了,instance 首先会将 metadata 请求发送给 DHCP agent 或者 L3_agent 管理的 neutron-ns-metadata-proxy。那目前到底是谁在管理 neutron-ns-metadata-proxy 呢?我们先在控制节点上查看一下 neutron-ns-metadata-proxy 的进程。

 

 

 

 

尽然没有 neutron-ns-metadata-proxy 在运行!

 

其原因是:默认配置下,neutron-ns-metadata-proxy 是由 L3_agent 管理的(后面会讨论让 DHCP 来管理),由于当前 test_net 并没有挂在 neutron router 上,所以没有启动 neutron-ns-metadata-proxy。

 

添加 router

 

要解决这个问题很简单:创建虚拟路由器 test_router 并连接 test_net。

 

 

现在控制节点上已经能够看到 test_router 管理的 neutron-ns-metadata-proxy 了。

 

 

 

重启 instance c1,看会发生怎样的变化。

 

 

instance 成功访问到 169.254.169.254。从结果看,cloud-init 已经获取到 metadata,因为 hostname 已经设置为 c1。

 

 

下一节我们详细分析 c1 是如何拿到 metadata 的。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/243100.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

输入序列不连续的序列检测

输入序列不连续的序列检测 题目描述 请编写一个序列检测模块,输入信号端口为data,表示数据有效的指示信号端口为data_valid。当data_valid信号为高时,表示此刻的输入信号data有效,参与序列检测;当data_valid为低时&am…

这些贷款合同陷阱你知道多少?

贷款合同可以是正式的贷款协议书,可以包括收条,也可以是个人借条。无论是哪一种方式,都有可能存在陷阱。我们先来看一个案例:王先生去找一家贷款机构办理贷款,因为王先生的资质比较好,很多贷款机构都希望能…

一个人到底申请几张信用卡最合适?

一个到底有几张信用卡最合适呢?这个问题估计很多朋友都没有好好的想过,以至于信用卡办办办,结果信用卡一大推,一不小心就走上了不归路。我们先来看下一个网友的真实情况:“每个月信用卡利息都要还好多,工资…

Fedora20配置tftp服务器

http://bbs.52dtv.com/thread-25392-1-1.html TFTP(Trivial File Transfer Protocol,简单文件传输协议)是TCP/IP协议族中的一个用来在客户机与服务器之间进行简单文件传输的协议,提供不复杂、开销不大的文件传输服务。端口号为69…

数据串转并电路

数据串转并电路 题目描述 实现串并转换电路,输入端输入单bit数据,每当本模块接收到6个输入数据后,输出端输出拼接后的6bit数据。本模块输入端与上游的采用valid-ready双向握手机制,输出端与下游采用valid-only握手机制。数据拼接…

获取 metadata 过程详解 - 每天5分钟玩转 OpenStack(167)

接上节,启动 neutron router 后 instance c1 终于拿到了 metadata, 从下面 c1 的启动日志可知: c1 所认为的 metadata 服务地址是 169.254.169.254,端口为 80。我们在 c1 中尝试访问一下 metadata。 确实能够拿到 metadata。但我们知道 nova-…

月息2%的贷款算高利贷吗?

对于贷款的朋友来说,贷款利息应该是最关心的一个话题了,大家都希望贷款的利息越低越好,如果免息那当然是最好的了!但是市面上大部分接触到的小贷公司利息基本都是在月息2%以上,有高的甚至可以达到月息5%以上。这个利息…

数据累加输出

数据累加输出 题目描述 实现串行输入数据累加输出,输入端输入8bit数据,每当模块接收到4个输入数据后,输出端输出4个接收到数据的累加结果。输入端和输出端与上下游的交互采用valid-ready双向握手机制。要求上下游均能满速传输时,…

第一张信用卡,该选哪家的?

网友A:贷款教授你好,说一下我的情况,本人25岁工作2年,没有信用卡想办一张。但是现在的信用卡五花八门,也不知道怎么选择。所以请你帮我支支招。网友A:再说一下要求吧:1.不想第一张信用卡就给年费2.超市、购物、看电影、…

为什么你总办不到大额信用卡?

通常的信用卡,额度都是1-2万,大额的信用卡标准是5万及以上,有时候一张大额的信用卡能顶3张一般的信用卡,从卡片管理到额度来说都是大额信用更受到人们的青睐。但是,为什么自己总是办不到银行的大额信用卡呢&#xff1f…

非整数倍数据位宽转换24to128

非整数倍数据位宽转换24to128 题目描述 实现数据位宽转换电路,实现24bit数据输入转换为128bit数据输出。其中,先到的数据应置于输出的高bit位。 电路的接口如下图所示。valid_in用来指示数据输入data_in的有效性,valid_out用来指示数据输出…

通过 dhcp-agent 访问 Metadata - 每天5分钟玩转 OpenStack(168)

OpenStack 默认通过 l3-agent 创建和管理 neutron-ns-metadata-proxy,进而与 nova-metadata-api 通信。但不是所有环境都有 l3-agent,比如直接用物理 router 的场景。这时就需要走另一条路:让 dhcp-agent 来创建和管理 neutron-ns-metadata-p…

乱查征信,贷款不想要了吗?

前几天接待了一个客户,客户自己是做皮具批发的,想要贷款50万,他个人在深圳有房有车,公司月营业额100多万,目前有120万的贷款,信用记录最近两年有过1次逾期,只是逾期了几天,不算严重。…

非整数倍数数据位宽转换8to12

非整数倍数数据位宽转换8to12 题目描述 实现数据位宽转换电路,实现8bit数据输入转换为12bit数据输出。其中,先到的数据应置于输出的高bit位。 电路的接口如下图所示。valid_in用来指示数据输入data_in的有效性,valid_out用来指示数据输出da…

instance 怎么获得自己的 Metadata - 每天5分钟玩转 OpenStack(169)

要想从 nova-api-metadata 获得 metadata,需要指定 instance 的 id。但 instance 刚启动时无法知道自己的 id,所以 http 请求中不会有 instance id 信息,id 是由 neutron-metadata-agent 添加进去的。针对 l3-agent 和 dhcp-agent 这两种情况…

网上仅凭身份证就可以贷款,可信吗?

近段有一位网友跟贷款教授反映了一个事情,他说他在一个QQ群里面看到有人发布凭借身份证就能贷款的信息,而且利息只有月息1%,他觉得很划算,所以就跟那人联系上,结果联系上之后,把身份证照片提供给那个人&…

整数倍数据位宽转换8to16

整数倍数据位宽转换8to16 题目描述 实现数据位宽转换电路,实现8bit数据输入转换为16bit数据输出。其中,先到的8bit数据应置于输出16bit的高8位。 电路的接口如下图所示。valid_in用来指示数据输入data_in的有效性,valid_out用来指示数据输出…

状态机-非重叠的序列检测

状态机-非重叠的序列检测 题目描述 设计一个状态机,用来检测序列 10111,要求: 1、进行非重叠检测 即101110111 只会被检测通过一次 2、寄存器输出且同步输出结果 注意rst为低电平复位 信号示意图: timescale 1ns/1nsmodule…

实践 config drive - 每天5分钟玩转 OpenStack(170)

如果 instance 无法通过 metadata service 获取 metadata(无 DHCP 或者 nova-api-metadata 服务),instance 还可以通过 config drive 获得 metadata。 config drive 是一个特殊的文件系统,OpenStack 会将 metadata 写到 config dr…

借款人死亡后,贷款必须由家属偿还吗?

这几天在网上看到一个网友发了这样一个问题,说在自己死之前,能不能在网上大量申请无抵押贷款,然后留给后代?看了这填信息,估计很多网友都会灵光一现,这貌似留给后人一笔财产不错的选择,生前先大…