如何通过OCI REST SDK创建指定gpus参数的GPU云实例?
解决OCI Flex GPU实例设置GPU数量的问题
Python SDK 处理方式
由于OCI Python SDK的LaunchInstanceShapeConfigDetails模型类暂未包含gpus属性,但底层API支持该参数,你可以通过两种方式绕过模型限制:
方式一:直接构造字典替代模型类
不用实例化LaunchInstanceShapeConfigDetails,直接用字典传入shape配置:import oci config = oci.config.from_file() compute_client = oci.core.ComputeClient(config) launch_instance_details = oci.core.models.LaunchInstanceDetails( compartment_id="ocid1.compartment.xxx", availability_domain="AD-1", shape="VM.C3.GPU.L40S.Flex", shape_config={ "gpus": 1, "ocpus": 4, "memory_in_gbs": 48 }, source_details=oci.core.models.InstanceSourceViaImageDetails( image_id="ocid1.image.xxx", source_type="image", boot_volume_size_in_gbs=100 ), subnet_id="ocid1.subnet.xxx", display_name="gpu-inst-test", assign_public_ip=True, ssh_authorized_keys=open("/nfs/shared_storage/ossetest/usr/src/tests/pca_3x/CE/oci_keys/id_ecdsa.pub").read() ) response = compute_client.launch_instance(launch_instance_details)方式二:利用模型类的
extra_properties字段
部分OCI SDK模型类支持extra_properties传递未定义字段:shape_config = oci.core.models.LaunchInstanceShapeConfigDetails( ocpus=4, memory_in_gbs=48 ) shape_config.extra_properties["gpus"] = 1
REST API 处理方式
直接在实例创建的POST请求体中,给shapeConfig对象添加gpus字段即可,请求示例如下:
POST /20160918/instances HTTP/1.1 Host: compute.us-phoenix-1.oraclecloud.com Authorization: Bearer <auth_token> Content-Type: application/json { "compartmentId": "ocid1.compartment.AK00684129.broom15.xri7sc0a2upguqn5cn8ajnwi9664jtbc9cd7vib6x974ghk1dfg757hxpme5", "availabilityDomain": "AD-1", "shape": "VM.C3.GPU.L40S.Flex", "shapeConfig": { "gpus": 1, "ocpus": 4, "memoryInGBs": 48 }, "sourceDetails": { "bootVolumeSizeInGBs": 100, "imageId": "ocid1.image.AK00684129.broom15.5sprgqr09pc5dtjb4p959h12clg5ebeq1tlh37jrpfshzvtdy054us8c0623", "sourceType": "image" }, "subnetId": "ocid1.subnet.AK00684129.broom15.c67zxe3fwglsldmv3xfc9s1jqc4zkbmrv5bfmd8nwqvdezyrfrq25ev5fbg4", "assignPublicIp": true, "sshAuthorizedKeys": "<public_key_content>", "displayName": "gpu-inst-test" }
注意:sshAuthorizedKeys需要替换为本地公钥文件的内容,而非文件路径。
内容的提问来源于stack exchange,提问作者user3303266
相关产品推荐
相关产品推荐

