spotinst的python sdk

spotinst-sdk2-beta的Python项目详细描述


[![构建状态](https://travis-ci.org/spotinst/spotinst-sdk-python.svg?branch=master)(https://travis ci.org/spotinst/spotinst sdk python)
[![覆盖状态](https://coveralls.io/repos/github/spotinst/spotinst-sdk-python/badge.svg?branch=master)](https://coveralls.io/github/spotinst/spotinst-sdk-python?分支=主)
[![python 2.7](https://img.shields.io/badge/python-2.7-blue.svg)](https://www.python.org/downloads/release/python-270/)
[![python 3.6](https://img.shields.io/badge/python-3.6-blue.svg)(https://www.python.org/downloads/release/python-360/)


spotinst sdk python
打破变化,但不要害怕,这里我们将解释所有你需要知道的,以确保你可以在任何时候回到商业。

*不再有用于验证凭据和发出请求的"spotinstclient()"类,现在有用于验证凭据的"spotinstsession()"类。[配置会话文档](配置会话)
*从会话对象可以创建与特定的spotinst服务相关并用于发出请求的客户端对象。[setup clients docs](setup clients)
*一些方法要求您传入一个模型对象

下面是一个基本示例,说明如何使用海洋客户端和海洋模型创建海洋群集spotinst_sdk.models.ocean.aws import *

session = SpotinstSession()
client = session.client("ocean_aws")

################ Compute ################
launch_specification = LaunchSpecifications(security_group_ids=["sg-12345"],
image_id="ami-12345", key_pair="noam key")


实例类型=实例类型(白名单=["C4.8XL"])

子网ID=["subnet-1234"],launch_specification=launch_specification)

################ Strategy ################

strategy = Strategy(utilize_reserved_instances=False, fallback_to_od=True, spot_percentage=100)

################ Capacity ################

capacity = Capacity(minimum=0, maximum=0, target=0)

################# Ocean #################

ocean = Ocean(name="Ocean SDK Test", controller_cluster_id="ocean.k8s",
region="us-west-2", capacity=capacity, strategy=strategy, compute=compute)

client.create_ocean_cluster(ocean=ocean)
```

<;br>;
有关支持哪些模型的信息,请查看[sdk模型文档](./docs/pydocmd/models/)。<;br>;
更多示例可以在[sdk示例文档](./docs/pydocmd/examples/)中找到。<;br>;

——TS -GT;
*[安装](安装)
*[配置会话](配置会话)
*[安装客户端](安装客户端)
*[sdk文档](./docs/pydocmd/)
*[示例](./docs/pydocmd/examples/)
*[客户端](./docs/pydocmd/clients/)
*[管理](./docs/pydocmd/clients/admin/)
*[elastigroup](./docs/pydocmd/clients/elastigroup/)
*[功能](./docs/pydocmd/clients/functions/)
*[mcs](./docs/pydocmd/clients/mcs/)
*[mlb](./docs/pydocmd/clients/mlb/)
*[mrscaler](./docs/pydocmd/clients/mrscaler/)
*[海洋](./docs/pydocmd/clients/ocean/)
*[订阅](./docs/pydocmd/clients/subscription/)
*[模型](./docs/pydocmd/models/)
*[管理](./docs/pydocmd/models/admin.md)
*[弹性组](./docs/pydocmd/models/elastigroup/)
*[函数](./docs/pydocmd/models/functions.md)
*[mlb](./docs/pydocmd/models/mlb.md)
*[mrscalers](./docs/pydocmd/models/mrscaler/)
*[oceans](./docs/pydocmd/models/ocean/)
*[subscription](./docs/pydocmd/models/subscription.md)
<;!--te-->;


sdk搜索凭据的顺序是:
1。将凭据作为参数传递给"spotinstsession()"构造函数
-示例
``python
session=spotinstsession(auth_token='token',account廑id='act-123')
````

2。从"spotinst_account"&;spotinst_token`


下的环境变量获取帐户和令牌如果选择不直接传递凭据,则配置凭据文件,此文件应为有效的".yml"文件。
默认共享凭据文件位置为"~/.spotinst/credentials",默认配置文件为"default"
-示例
``yaml
默认:".profile
令牌:$defaul\u spotinst\u令牌
帐户:$default庘spotinst-account-id
my庘profile:
令牌:$my庘spotinst庘token
帐户:$my庘spotinst-account-id
````

3。您可以覆盖"spotinstsession()"构造函数中用作参数的凭据文件位置和配置文件
-例如
``python
session=spotinstsession(credentials\u file='/path/to/file',profile='my\u profile')
```

4。您可以覆盖凭据文件位置和用作环境变量"spotinst_profile"和/或"spotinst_shared_credentials_file"的配置文件
5。使用默认配置文件从默认位置提取

\setup clients
创建会话后,可以使用会话对象创建客户端。客户习惯于向spotinsts提供的不同服务提出请求。要创建客户机,只需使用会话对象中的方法"client",并传入要创建的客户机的字符串。下面是一个示例:

``python
session=spotinstsession()

ocean_client=session.client("ocean")
```

当前支持的客户端是

客户端选项:
*`session.client("admin")`
*`session.client("elastigroup aws")`
*`session.client("elastigroup azure")`
*`session.client("elastigroup gcp")`
*`session.client("functions")`
*` session.client("mcs")`
*`session.client("mlb")`
*`session.client("mrscaler aws")`
*`session.client("ocean aws")`
*`session.client("subscription")`

文档[此处](/docs/pydocmd/clients/)中提供了完整的端点和客户端列表。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
JavaPax考试:从非标准Maven存储库解析Karaf特性存储库(XML文件)   java Spring启动Bean创建异常   java中将ArrayList转换为数组的方法   Android Studio的java Unity插件。   java在CheckStyle中从方法计数中排除getter和setter   HibernateJava。sql。SQLSyntaxErrorException:表/视图“序列”不存在   与命令行程序Java vs C通信   java WebView膨胀异常   java在O(n)java8流中寻找两个列表的交集   java使用Gradle运行单元测试时,最大堆大小在哪里设置?   ssl加载java应用程序(CXF)内的jks文件   CI:Jenkins Git:Simple Java项目:希望在特定时间在脚本上发送消息   java根据位置更改数字   java按数值排序字符串数组   macos java版本“1.6.0_65”是否与java 6模棱两可?   Cassandra中的java时间戳