Datera Fabric Python开发包
dfs-sdk的Python项目详细描述
Datera Python开发包
简介
这是用于fabric services api的python sdk v1.2版本。 下载并使用此软件包将隐式接受复制中的术语
假定此包的用户熟悉dateraapi。 有关api本身的详细信息不一定要通过这个sdk来涵盖。
功能
- 自动会话管理和登录
- 自动和可配置的请求重试
- 对象到静止请求转换
- 标准日志格式(与datera sreq日志解析兼容)
- 端点验证(可切换)
- 对响应属性的点符号访问
- UDC合规性
安装
来源
apt-get install python-virtualenv (or yum install python-virtualenv for CentOS) virtualenv sdk source sdk/bin/activate git clone https://github.com/Datera/python-sdk.git cd python-sdk pip install -r requirements.txt python setup.py install
来自PYPI
pip install -U dfs_sdk
通用日期配置
通用日期配置(UDC)是可以在 方法数:
- 具有以下任何名称的JSON文件:
- .datera配置
- 日期配置
- .datera config.json
- datera config.json
- json文件具有以下配置:
{"mgmt_ip":"1.1.1.1","username":"admin","password":"password","tenant":"/root","api_version":"2.2","ldap":""}
- 文件可以位于以下任何位置。这也是查找
配置文件的顺序:
- 当前目录
- 主目录
- home/config目录
- /etc/datera
- 如果找不到datera配置文件并且存在cinder.conf文件,则 配置分析器将尝试从 煤渣形态
- 租户、api版本和ldap总是可选的,但通常 建议将它们包含在UDC文件中,以便于参考。
- 可以使用环境变量而不是json文件。
- 数据管理
数据用户
dat_pass
dat_租户
数据API
dat_ldap
- 大多数为使用通用datera配置而构建的工具也将允许
用于通过命令行标志提供/重写任何配置值。
- --主机名
- --用户名
- --密码
- --租户
- --API版本
- --LDAP
使用通用日期配置进行开发
在新的python工具中使用udc非常简单,只需将以下内容添加到 您的python脚本:
fromdfs_sdkimportscaffoldparser=scaffold.get_argparser()parser.add_argument('my-new-arg')args=parser.parse_args()
如果您想使用子解析器,或者自定义解析器的帮助输出 然后使用以下命令
importargparsefromdfs_sdkimportscaffoldtop_parser=scaffold.get_argparser(add_help=False)new_parser=argparse.ArgumentParser(parents=[top_parser])new_parser.add_argument('my-new-arg')args=new_parser.parse_args()
在脚本中,可以通过调用接收配置
fromdfs_sdkimportscaffoldscaffold.get_argparser()config=scaffold.get_config()
注意:之前不再需要调用scaffold.get_argparser() 调用scaffold.get_config()。只有在建筑 需要cli解析器的cli工具。
日志记录
设置自定义logging.json文件
exportDSDK_LOG_CFG=your/log/location.json
或者可以将该值设置为DEBUG、INFO或ERROR
exportDSDK_LOG_CFG=info
将日志记录设置为stdout。该值可以是 python日志模块(例如:debug、info等)
exportDSDK_LOG_STDOUT=debug
python sdk生成的调试日志非常大,并且位于 旋转文件处理程序(前提是未提供自定义logging.json文件)
托管对象
Datera提供了一个应用程序驱动的存储管理模型,其目标是紧密地协调存储 有相应的应用程序要求。
主要存储对象的定义和区分如下:
应用程序实例(appinstance)
apt-get install python-virtualenv (or yum install python-virtualenv for CentOS) virtualenv sdk source sdk/bin/activate git clone https://github.com/Datera/python-sdk.git cd python-sdk pip install -r requirements.txt python setup.py install0
存储实例
apt-get install python-virtualenv (or yum install python-virtualenv for CentOS) virtualenv sdk source sdk/bin/activate git clone https://github.com/Datera/python-sdk.git cd python-sdk pip install -r requirements.txt python setup.py install1
体积
apt-get install python-virtualenv (or yum install python-virtualenv for CentOS) virtualenv sdk source sdk/bin/activate git clone https://github.com/Datera/python-sdk.git cd python-sdk pip install -r requirements.txt python setup.py install2
查看托管对象层次结构的另一种方法如下:
apt-get install python-virtualenv (or yum install python-virtualenv for CentOS) virtualenv sdk source sdk/bin/activate git clone https://github.com/Datera/python-sdk.git cd python-sdk pip install -r requirements.txt python setup.py install3
端点
url端点上的http操作是与受管对象集交互的唯一方式。 URL的格式为:
apt-get install python-virtualenv (or yum install python-virtualenv for CentOS) virtualenv sdk source sdk/bin/activate git clone https://github.com/Datera/python-sdk.git cd python-sdk pip install -r requirements.txt python setup.py install4
其中7717是用于访问pi和"v2.2"对应于api版本控制。
简而言之,rest api支持4个操作/方法创建(post)、修改(put)、列表(get)、删除(delete)。 任何输入负载都是json格式的;任何返回负载都是json格式的。 任何http请求的"头"中都需要登录会话密钥。 会话密钥的使用寿命为15分钟。
有关rest api的完整参考文档,请参阅datera restapi指南。
这个python sdk充当原始http层的包装器。
使用此sdk
datera模块名为dfs\u sdk,主入口点名为dateraapi。 获取对象句柄的操作如下:
apt-get install python-virtualenv (or yum install python-virtualenv for CentOS) virtualenv sdk source sdk/bin/activate git clone https://github.com/Datera/python-sdk.git cd python-sdk pip install -r requirements.txt python setup.py install5
还可以使用datera udc文件初始化sdk。下面将读取任何有效的 系统或当前环境变量中的UDC文件。
apt-get install python-virtualenv (or yum install python-virtualenv for CentOS) virtualenv sdk source sdk/bin/activate git clone https://github.com/Datera/python-sdk.git cd python-sdk pip install -r requirements.txt python setup.py install6
可配置选项
这些选项可以通过get api
构造函数在实例化时设置
<表><广告>
常见对象、示例和用例
有关编程示例,请参见utils目录,其中包括以下内容:
所有对象的常用方法包括create()、set()、delete()、list()
- 创建名为foo的app_实例
apt-get install python-virtualenv (or yum install python-virtualenv for CentOS) virtualenv sdk source sdk/bin/activate git clone https://github.com/Datera/python-sdk.git cd python-sdk pip install -r requirements.txt python setup.py install7
- 可以通过list()遍历对象:
apt-get install python-virtualenv (or yum install python-virtualenv for CentOS) virtualenv sdk source sdk/bin/activate git clone https://github.com/Datera/python-sdk.git cd python-sdk pip install -r requirements.txt python setup.py install8
- 将给定的应用程序实例设置为脱机状态:
apt-get install python-virtualenv (or yum install python-virtualenv for CentOS) virtualenv sdk source sdk/bin/activate git clone https://github.com/Datera/python-sdk.git cd python-sdk pip install -r requirements.txt python setup.py install9
- 删除给定的应用程序实例:
pip install -U dfs_sdk0
报告问题
有关问题和反馈,请发送电子邮件"support@datera.io"