【问题标题】:What is basic different between Openstack API & CLI commands for begineer's perspective?从初学者的角度来看,Openstack API 和 CLI 命令之间的基本区别是什么?
【发布时间】:2015-09-28 18:09:21
【问题描述】:

我正在学习 Openstack。我对 Openstack API 和 CLI 感到非常困惑!我需要知道两者有什么区别和用法!!

规则 瓦丹

【问题讨论】:

  • 查看 CLI 上的 -debug 标志,您可以看到 CLI 进行的 API 调用。

标签: api command-line-interface openstack


【解决方案1】:

API是Application Programming Interface,对于OpenStack服务,它们都是ReST API,这意味着你需要构造http请求然后发布到特定的端点,然后得到http响应并分析它。要直接与之交互,您将需要特殊工具,例如 RestClient、Postman 或 curl。 API 由真正的 CRUD 工作的 OpenStack 进程(有时是 Apache 进程)处理。

OpenStack 提供了一些 Python Binding SDK 供开发者使用,简单的构建和分析步骤。您可以在新开发的 OpenStack 服务中使用这些 SDK,或者编写一些脚本,以便一次又一次地运行它们。例如:

from novaclient import client
nc = client.Client(2, 'username', 'password', 'projectname', 'http://127.0.0.1:5000')
print nc.servers.list()

CLI 是命令行界面,它们的行为类似于普通的 linux 命令,然后使用 SDK 并通过 API 与 OpenStack 服务进行 http 交互。因此,您只需键入简单的“nova list”即可获取所有 nova 实例(需要先导出 OS 环境变量)。 CLI 由 linux shell 处理

【讨论】:

    【解决方案2】:

    好的 .. 根据我的经验,如果你想要编程一些东西,比如 NFV,API 会更灵活更好,你可以通过 python Restful API 传递它,.. Openstack 中的 CLI,是的,你可以编写很多脚本东西,但它的更多管理命令可以让我们说撤销浮动IP(它可能不适用于GUI)。所以 Openstack CLi 不是一个 Linux 终端,它只是一堆可以控制你的 Openstack 的服务程序(查看 Openstack 文档)。永远记住 APi 用于编程和链接其他接口以访问您的 Openstack,您的 CLi 通常是您的管理区域

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-12-04
      • 1970-01-01
      • 2017-04-24
      • 1970-01-01
      • 2011-01-17
      • 2013-08-27
      • 2011-05-11
      • 1970-01-01
      相关资源
      最近更新 更多