flavor
创建flavor
import json
import requests
def auth():
auth_url = "http://192.168.100.10:5000/v3/auth/tokens"
auth_data = {
"auth": {
"identity": {
"methods": ["password"],
"password": {
"user": {
"name": 'admin',
"domain": {"name": 'demo'},
"password": '000000'
}
}
},
"scope": {
"project": {
"name": 'admin',
"domain": {
"name": 'demo'
}
}
}
}
}
headers = {"Content-Type": "application/json"}
headers['X-Auth-Token']=requests.post(auth_url, headers=headers, data=json.dumps(auth_data)).headers['X-Subject-Token']
return headers
headers = auth()
# 尝试删除已存在的flavor
res = requests.get(url='http://192.168.100.10:8774/v2.1/flavors', headers=headers)
flavors = res.json()['flavors']
name = 'test1'
for flavor in flavors:
if flavor['name'] == name:
delete_url = f"http://192.168.100.10:8774/v2.1/flavors/{flavor['id']}"
response = requests.delete(delete_url, headers=headers)
print('同名实例删除成功')
break
# 创建新的flavor
flavor_data = {"flavor": {"vcpus": 2,"disk": 20,"name": "test1","os-flavor-access:is_public": True,"rxtx_factor": 1.0,"OS-FLV-EXT-DATA:ephemeral": 0,"ram": 1024,"swap": 0}}
res = requests.post(url='http://192.168.100.10:8774/v2.1/flavors', headers=headers, data=json.dumps(flavor_data))
if res.status_code == 201:
new_flavor_id = res.json()['flavor']['id']
print(f'实例创建成功,新flavor ID: {new_flavor_id}')
else:
print(f'实例创建失败,失败状态码为{res.status_code}')