openstack API debug OpenstackEveryProject_CLI,curl_based

简介: 1,基于Openstack 每个服务组件client客户端,eg,nova 客户端软件包名称是python-novaclient, 别的都一样,把python-novaclient (nova替换成组件名称) 在使用组件客户端调用API前你必须得配置admin管理rc文件或是在调用时直接输入--os-auth-username= 个人感觉配置rc文件很方便,不知你是怎么认为的.

1,基于Openstack 每个服务组件client客户端,eg,nova 客户端软件包名称是python-novaclient,

别的都一样,把python-novaclient (nova替换成组件名称)

在使用组件客户端调用API前你必须得配置admin管理rc文件或是在调用时直接输入--os-auth-username= 个人感觉配置rc文件很方便,不知你是怎么认为的.

admin (superUser admin 的Rc文件)

Example,rc OS_AUTH_URL根据你的环境自行配置修改.

Example demo tenant

调用

....基于Openstack components 的各自CLI 调用调试OpenStack API自己根据man 来哦,Ruiy认为人贵于勤;

<二,基于curl调用Openstack components API>

1,基于租户的用户认证获取API(其实这里Ruiy又得说一句了,其实我们在调用API的过程中输入每个用户的token和TenantAuthenticate(TenantName/passwd))

关于租户UserCredential和project间的关系

Ruiy认为类似于svn下的项目和权限用户一样的概念;

1,基于curl调用API获取toekn

curl -i 'http://5.10.124.181:5000/v2.0/tokens' -X POST -H "Content-Type: application/json" -H "Accept: application/json"  -d '{"auth": {"tenantName": "demo", "passwordCredentials": {"username": "demo", "password": "321"}}}'

2,not know tenantName or id,you can send an authentication request
with an empty tenant (基于passwordCredential获取租户id)

curl -i 'http://5.10.124.181:5000/v2.0/tokens' -X POST -H "Content-Type: application/json" -H "Accept: application/json"  -d '{"auth": {"tenantName": "", "passwordCredentials": {"username": "demo", "password": "321"}}}'

3,Use the Identity API to request a list of tenants

curl -i http://5.10.124.181:5000/v2.0/tenants -X GET -H "User-Agent: python-keystoneclient" -H "X-Auth-Token: 3be3f0b35ecf498596d79cdac92f8482"

4,Use the Identity API to request a list of endpoints

curl -i -X GET http://5.10.124.181:35357/v2.0/endpoints -H "User-Agent: python-keystoneclient" -H "X-Auth-Token: 09e5cd53f9464b549ef40270ce050141"

Ruiy在此随便说点,关于每个OpenStack的endpointServiceCatalog的3个管理url

adminurl,internalurl,publicurl;

 

5,Use the Compute API to list servers

curl -v -H "X-Auth-Token:3da1d59d15354f299593f96ab0c1e135" http://5.10.124.181:8774/v2/f963230ce6d54dc2a4a7b42b3f9989b4/servers

基于Openstack 组件CLI调试API

组件客户端程序安装(使用pip(python index package)tool)

pip install [--upgrade] python-PROJECTclient (update更新repo,git repo) (upgrade,升级基于git repo安装的软件包的版本)
注意了升级一个软件包的完整命令是pip install --upgrade python-PROJECTclient 当然我们这里演示的是openstack 项目组件客户端程序的 安装及升级
卸载的 话
pip uninstall python-novaclient

Example,演示基于CLI命令launch an vm(VSI) instance
To launch instances, you must choose a name, an image, and a flavor for your instance(这里实例化一个VSI virtual server instance稍微和one有点不同,但也仅仅是基于命令行,基于web的展开虚机实例)
一样,即直接运行一个完整的镜像即可.
1,获取镜像

2,获取flavor

 nova boot --image 2a20a472-b5dc-4565-b1a3-28978091d010 --flavor 3 my_instance

显示查看我们刚刚创建的虚机的详细的信息

查看rc environment variable

目录
相关文章
|
10月前
|
JSON 监控 网络协议
针对podman REST API 的curl调用-2
针对podman REST API 的curl调用-2
109 0
针对podman REST API 的curl调用-2
|
10月前
|
JSON NoSQL 应用服务中间件
podman REST API 的images操作
podman REST API 的images操作
120 0
|
存储 Kubernetes 监控
Kubernetes-API Server
Kubernetes API Server的功能: 1. 提供了集群管理的REST API接口(包括认证授权、数据校验以及集群状态变更); 2. 提供其他模块之间的数据交互和通信的枢纽(其他模块通过API Server查询或修改数据,只有API Server才直接操作etcd; 3. 资源配额控制的入口; 4. 拥有完备的集群安全机制;
|
API 开发工具
SAP WebIDE:how to enable context API reference
SAP WebIDE:how to enable context API reference
SAP WebIDE:how to enable context API reference
|
JavaScript API
How to find documentation of given API
Created by Jerry Wang on Dec 23, 2014
105 0
How to find documentation of given API
|
API 网络协议 容器
|
分布式计算 Hadoop API
|
关系型数据库 MySQL API
在Ubuntu上快速搭建基于Beego的RESTful API
最近在研究Go,打算基于Go做点Web API,于是经过初步调研,打算用Beego这个框架,然后再结合其中提供的ORM以及Swagger的集成,可以快速搭建一个RESTful API的网站。 下面是具体做法: 1.
1363 0