Вот список провайдеров облачного хостинга:
-
Веб-сервисы Amazon (AWS)
import boto3 # Create an EC2 instance ec2 = boto3.resource('ec2') instance = ec2.create_instances( ImageId='ami-12345678', MinCount=1, MaxCount=1, InstanceType='t2.micro' ) -
Microsoft Azure
from azure.identity import DefaultAzureCredential from azure.mgmt.compute import ComputeManagementClient # Create a virtual machine credential = DefaultAzureCredential() compute_client = ComputeManagementClient(credential, subscription_id) vm_params = { 'location': 'eastus', 'hardware_profile': { 'vm_size': 'Standard_D2s_v3' }, 'storage_profile': { 'image_reference': { 'publisher': 'Canonical', 'offer': 'UbuntuServer', 'sku': '16.04-LTS', 'version': 'latest' } }, 'os_profile': { 'computer_name': 'myVM', 'admin_username': 'azureuser', 'admin_password': 'MyPassword123' }, 'network_profile': { 'network_interfaces': [{ 'id': '/subscriptions/{subscription_id}/resourceGroups/{resource_group}/providers/Microsoft.Network/networkInterfaces/{nic_name}', 'properties': { 'primary': True } }] } } vm = compute_client.virtual_machines.create_or_update(resource_group_name, vm_name, vm_params) -
Облачная платформа Google (GCP)
from google.cloud import compute_v1 # Create a virtual machine compute_client = compute_v1.InstancesClient() project = 'your-project-id' zone = 'us-central1-a' config = { 'name': 'instance-name', 'machine_type': f'zones/{zone}/machineTypes/n1-standard-1', 'network_interfaces': [{ 'network': f'projects/{project}/global/networks/default', 'access_configs': [{'type': 'ONE_TO_ONE_NAT', 'name': 'External NAT'}] }], 'disks': [{ 'boot': True, 'auto_delete': True, 'initialize_params': { 'source_image': 'projects/debian-cloud/global/images/family/debian-10' } }] } operation = compute_client.insert(project, zone, config) -
DigitalOcean
import digitalocean # Create a Droplet manager = digitalocean.Manager(token='your-api-token') keys = manager.get_all_sshkeys() droplet = digitalocean.Droplet( token='your-api-token', name='example.com', region='nyc3', size='s-1vcpu-1gb', image='ubuntu-18-04-x64', ssh_keys=keys, backups=False ) droplet.create() -
IBM Cloud
import ibm_boto3 from ibm_botocore.client import Config # Create a virtual server instance service = ibm_boto3.resource('SoftLayer_Virtual_Guest', ibm_api_key_id='your-ibm-api-key', ibm_service_instance_id='your-ibm-service-instance-id', ibm_auth_endpoint='https://iam.cloud.ibm.com/identity/token') instance = service.create_object({ 'hostname': 'my-instance', 'domain': 'example.com', 'startCpus': 1, 'maxMemory': 1024, 'hourlyBillingFlag': True, 'localDiskFlag': False, 'operatingSystemReferenceCode': 'UBUNTU_LATEST', 'datacenter': {'name': 'dal10'}, 'networkComponents': [{'maxSpeed': 1000}], 'postInstallScriptUri': 'https://example.com/post-install.sh' })
Это всего лишь несколько примеров популярных провайдеров облачного хостинга и способов создания экземпляров с использованием их API или SDK. Не забудьте заменить заполнители собственными значениями.