项目十四 使用OpenStack的API接口创建虚拟机实例.pptxVIP

  • 0
  • 0
  • 约8.74千字
  • 约 29页
  • 2026-02-02 发布于湖南
  • 举报

项目十四 使用OpenStack的API接口创建虚拟机实例.pptx

CLOUDCOMPUTING使用OpenStack的API接口创建虚拟机实例OpenStack平台对外提供API接口,认证用户通过接口可以访问各个服务的功能。这些API具有统一的形式,均基于HTTP协议实现。OpenStackAPI服务进程在接收了客户端的HTTPRequest请求之后,通过路由模块将URL转换成为相应的资源,并路由到合适的操作方法,从而实现从API到具体操作的映射。本项目中,我们将学习访问OpenStackAPI接口的基本方法,并通过OpenStackAPI接口创建云主机。项目十四云计算基础架构平台应用

任务:一访问OpenStack的API接口二通过OpenStackAPI接口创建云主机

任务一访问OpenStack的API接口本任务将学习OpenStack的API调用方法涉及使用Python脚本调用API,重点是认证令牌(Token)的获取和使用,以及正确组装发送HTTP请求的方法。通过练习,可以学习如何使用Python脚本发送包含认证令牌和相关操作信息的HTTP请求,并解析服务器返回的响应以获取所需的信息,从而实现对OpenStack的管理和操作。

官网(/api-quick-start/)可以查询OpenStack平台的API接口,文档中包含OpenStack各个服务对应的API。官网文档中使用命令行下的curl命令对API进行调用,从认证到获取image镜像和servers云主机很详细,但是作为初学者会觉得直接使用curl命令很繁琐。下面通过Python代码使用requests类代替curl命令来实现OpenStackAPI的访问,访问过程更容易阅读。访问OpenStack的API接口

OpenStack平台API的访问流程如下:访问OpenStack的API接口(1)为了获得对OpenStack服务的访问许可,即获得认证令牌,首先需要向OpenStack认证服务(Keystone)发送携带证书信息。(2)认证服务根据用户提交的认证信息,生成并返回访问OpenStack服务RESTAPI的认证令牌(Token)。客户端还能从认证服务获取其他服务的URL终端地址。客户端根据URL终端地址向对应OpenStack服务发送REST请求时,每次请求都需要在X-Auth-Token请求头中提供自己的认证令牌。

由于要使用API的URL终端地址,所以首先需要登录控制节点controller,使用如下命令来查看API的URL终端地址。命令中指定只查看“ServiceName”、“Enabled”和“URL”三个字段。访问OpenStack的API接口openstackendpointlist-cServiceName-cEnabled-cURL

图中列出了所有的API对应的URL,下面代码中将用到keystone的URL“http://controller:5000/v3”。下面编写Python代码,通过访问OpenStackAPI接口获得用户信息,读者重点要学会访问API接口的基本流程,尤其是令牌的获取。访问OpenStack的API接口Python代码的设计思路如下:(1)使用requests类获取用户的认证令牌(2)利用认证令牌组装http请求的header(3)使用组装的header和URL终端地址初始化用户管理类(4)通过用户管理类,访问用户信息,每次访问都是需要携带header头信息

在工具VSC中,新建Python文件api_identity.py,编写代码如下所示。访问OpenStack的API接口1importrequests,json2#获取认证令牌3defget_auth_token(controller_ip,domain,user,password):4try:5#设置URL6URL=fhttp://{controller_ip}:5000/v3/auth/tokens7#设置请求体body8body={9auth:{10identity:{11methods:[12password13],

访问OpenStack的API接口14password:{15user:{16

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档