用于hnv(hyper-v网络虚拟化)rest api的python客户端。
hnv的Python项目详细描述
#PythonHNV
[![构建状态](https://travis-ci.org/cloudbase/python-hnvclient.svg?branch=master)(https://travis ci.org/cloudbase/python hnv client)
hnv(hyper-v网络虚拟化)rest api的python客户端。
-license:apache license,版本2.0
python接口与底层rest api匹配,可用于第三方项目。
``python
>;>;>from hnv import client
>;>logical_networks=client.logicalnetworks.get()
>;>logical_networks中的logical_networks:
…打印(逻辑-网络。资源-资源ID)
…
…
“63606911-e0553-42cf-42cf-842e-29f67c90c90d5c6”
“C4CD422FF-5EFB-4006-AC56-47973055557926”
“CD804DBB3-DF59-4F57-4F57-8A7D-11CC3F3C4C4D98”
>>;逻辑-网络=客户端。逻辑-网络。获取(资源ID=“cd804db3-df59-4f57-4f57-8a7a77-8a7a7a7a7a7a7a7a7b-804db3-4df804db3-df59-4dfD-11CC3F3C4D98“
>>>逻辑网络
<;hnv.client.logicalnetworks对象位于0x7fcd79419910>;
>;>logical_network.provisioning_state
u“succeeded”
>;>logical_network.subnetworks
[<;hnv.client.logicalsubnetworks对象位于0x7fcd79419150>;]
>;网络。子网络[0].resource
u'4390e3d8-c527-4534-882f-906c4747ffd0bb'
或
``python
``python
u networks():
“”列出所有可用的逻辑网络。“”
逻辑网络=client.logical networks.get()
打印(“逻辑网络:”)
对于逻辑网络中的逻辑网络:
打印(“\t-”,逻辑网络.资源参考)
打印(“\t\t”,“逻辑子网:”)
用于逻辑网络中的逻辑子网。子网:
打印(“\t\t-%s(%s)”%(逻辑子网。资源ID,
逻辑子网。地址前缀))
“虚拟网络:”)
用于逻辑网络中的虚拟网络。虚拟网络:
打印(“\t\t-%s”%virtual\u network.resource\ref)
def create\u virtual\u network():
“在第一个逻辑网络上创建新的虚拟网络。”
打印(“创建新的虚拟网络”。)
地址空间=client.address space(
address_prefixes=[“192.168.133.0/24”])
logical_network=client.resource(
resource_ref=client.logicalnetworks.get()[0].resource_ref)
resource_id=“hvn test”,
address_space=address_space,
logical_network=logical_network,
)
virtual_network.commit()
print(“新虚拟网络的原始内容”)
print(json.dumps(virtual_network.dump(),indent=4))
def remove_virtual_network():
“删除新虚拟网络。”
print(“删除新虚拟网络”)
client.virtual networks.remove(resource_id=“hvn test”)
“逻辑网络示例入口点。”
config.config(sys.argv[1:])
查看逻辑网络
创建虚拟网络
查看逻辑网络
删除虚拟网络
查看逻辑网络
```
[![构建状态](https://travis-ci.org/cloudbase/python-hnvclient.svg?branch=master)(https://travis ci.org/cloudbase/python hnv client)
hnv(hyper-v网络虚拟化)rest api的python客户端。
-license:apache license,版本2.0
python接口与底层rest api匹配,可用于第三方项目。
``python
>;>;>from hnv import client
>;>logical_networks=client.logicalnetworks.get()
>;>logical_networks中的logical_networks:
…打印(逻辑-网络。资源-资源ID)
…
…
“63606911-e0553-42cf-42cf-842e-29f67c90c90d5c6”
“C4CD422FF-5EFB-4006-AC56-47973055557926”
“CD804DBB3-DF59-4F57-4F57-8A7D-11CC3F3C4C4D98”
>>;逻辑-网络=客户端。逻辑-网络。获取(资源ID=“cd804db3-df59-4f57-4f57-8a7a77-8a7a7a7a7a7a7a7a7b-804db3-4df804db3-df59-4dfD-11CC3F3C4D98“
>>>逻辑网络
<;hnv.client.logicalnetworks对象位于0x7fcd79419910>;
>;>logical_network.provisioning_state
u“succeeded”
>;>logical_network.subnetworks
[<;hnv.client.logicalsubnetworks对象位于0x7fcd79419150>;]
>;网络。子网络[0].resource
u'4390e3d8-c527-4534-882f-906c4747ffd0bb'
或
``python
``python
u networks():
“”列出所有可用的逻辑网络。“”
逻辑网络=client.logical networks.get()
打印(“逻辑网络:”)
对于逻辑网络中的逻辑网络:
打印(“\t-”,逻辑网络.资源参考)
打印(“\t\t”,“逻辑子网:”)
用于逻辑网络中的逻辑子网。子网:
打印(“\t\t-%s(%s)”%(逻辑子网。资源ID,
逻辑子网。地址前缀))
“虚拟网络:”)
用于逻辑网络中的虚拟网络。虚拟网络:
打印(“\t\t-%s”%virtual\u network.resource\ref)
def create\u virtual\u network():
“在第一个逻辑网络上创建新的虚拟网络。”
打印(“创建新的虚拟网络”。)
地址空间=client.address space(
address_prefixes=[“192.168.133.0/24”])
logical_network=client.resource(
resource_ref=client.logicalnetworks.get()[0].resource_ref)
address_space=address_space,
logical_network=logical_network,
)
virtual_network.commit()
print(“新虚拟网络的原始内容”)
print(json.dumps(virtual_network.dump(),indent=4))
def remove_virtual_network():
“删除新虚拟网络。”
print(“删除新虚拟网络”)
client.virtual networks.remove(resource_id=“hvn test”)
config.config(sys.argv[1:])
查看逻辑网络
创建虚拟网络
查看逻辑网络
删除虚拟网络
查看逻辑网络
```