Lightsail / Client / create_disk_from_snapshot

create_disk_from_snapshot#

Lightsail.Client.create_disk_from_snapshot(**kwargs)#

Creates a block storage disk from a manual or automatic snapshot of a disk. The resulting disk can be attached to an Amazon Lightsail instance in the same Availability Zone ( us-east-2a).

The create disk from snapshot operation supports tag-based access control via request tags and resource tags applied to the resource identified by disk snapshot name. For more information, see the Amazon Lightsail Developer Guide.

See also: AWS API Documentation

Request Syntax

response = client.create_disk_from_snapshot(
    diskName='string',
    diskSnapshotName='string',
    availabilityZone='string',
    sizeInGb=123,
    tags=[
        {
            'key': 'string',
            'value': 'string'
        },
    ],
    addOns=[
        {
            'addOnType': 'AutoSnapshot'|'StopInstanceOnIdle',
            'autoSnapshotAddOnRequest': {
                'snapshotTimeOfDay': 'string'
            },
            'stopInstanceOnIdleRequest': {
                'threshold': 'string',
                'duration': 'string'
            }
        },
    ],
    sourceDiskName='string',
    restoreDate='string',
    useLatestRestorableAutoSnapshot=True|False
)
Parameters:
  • diskName (string) –

    [REQUIRED]

    The unique Lightsail disk name ( my-disk).

  • diskSnapshotName (string) –

    The name of the disk snapshot ( my-snapshot) from which to create the new storage disk.

    Constraint:

    • This parameter cannot be defined together with the source disk name parameter. The disk snapshot name and source disk name parameters are mutually exclusive.

  • availabilityZone (string) –

    [REQUIRED]

    The Availability Zone where you want to create the disk ( us-east-2a). Choose the same Availability Zone as the Lightsail instance where you want to create the disk.

    Use the GetRegions operation to list the Availability Zones where Lightsail is currently available.

  • sizeInGb (integer) –

    [REQUIRED]

    The size of the disk in GB ( 32).

  • tags (list) –

    The tag keys and optional values to add to the resource during create.

    Use the TagResource action to tag a resource after it’s created.

    • (dict) –

      Describes a tag key and optional value assigned to an Amazon Lightsail resource.

      For more information about tags in Lightsail, see the Amazon Lightsail Developer Guide.

      • key (string) –

        The key of the tag.

        Constraints: Tag keys accept a maximum of 128 letters, numbers, spaces in UTF-8, or the following characters: + - = . _ : / @

      • value (string) –

        The value of the tag.

        Constraints: Tag values accept a maximum of 256 letters, numbers, spaces in UTF-8, or the following characters: + - = . _ : / @

  • addOns (list) –

    An array of objects that represent the add-ons to enable for the new disk.

    • (dict) –

      Describes a request to enable, modify, or disable an add-on for an Amazon Lightsail resource.

      Note

      An additional cost may be associated with enabling add-ons. For more information, see the Lightsail pricing page.

      • addOnType (string) – [REQUIRED]

        The add-on type.

      • autoSnapshotAddOnRequest (dict) –

        An object that represents additional parameters when enabling or modifying the automatic snapshot add-on.

        • snapshotTimeOfDay (string) –

          The daily time when an automatic snapshot will be created.

          Constraints:

          • Must be in HH:00 format, and in an hourly increment.

          • Specified in Coordinated Universal Time (UTC).

          • The snapshot will be automatically created between the time specified and up to 45 minutes after.

      • stopInstanceOnIdleRequest (dict) –

        An object that represents additional parameters when enabling or modifying the StopInstanceOnIdle add-on.

        Warning

        This object only applies to Lightsail for Research resources.

        • threshold (string) –

          The value to compare with the duration.

        • duration (string) –

          The amount of idle time in minutes after which your virtual computer will automatically stop.

  • sourceDiskName (string) –

    The name of the source disk from which the source automatic snapshot was created.

    Constraints:

    • This parameter cannot be defined together with the disk snapshot name parameter. The source disk name and disk snapshot name parameters are mutually exclusive.

    • Define this parameter only when creating a new disk from an automatic snapshot. For more information, see the Amazon Lightsail Developer Guide.

  • restoreDate (string) –

    The date of the automatic snapshot to use for the new disk. Use the get auto snapshots operation to identify the dates of the available automatic snapshots.

    Constraints:

    • Must be specified in YYYY-MM-DD format.

    • This parameter cannot be defined together with the use latest restorable auto snapshot parameter. The restore date and use latest restorable auto snapshot parameters are mutually exclusive.

    • Define this parameter only when creating a new disk from an automatic snapshot. For more information, see the Amazon Lightsail Developer Guide.

  • useLatestRestorableAutoSnapshot (boolean) –

    A Boolean value to indicate whether to use the latest available automatic snapshot.

    Constraints:

    • This parameter cannot be defined together with the restore date parameter. The use latest restorable auto snapshot and restore date parameters are mutually exclusive.

    • Define this parameter only when creating a new disk from an automatic snapshot. For more information, see the Amazon Lightsail Developer Guide.

Return type:

dict

Returns:

Response Syntax

{
    'operations': [
        {
            'id': 'string',
            'resourceName': 'string',
            'resourceType': 'ContainerService'|'Instance'|'StaticIp'|'KeyPair'|'InstanceSnapshot'|'Domain'|'PeeredVpc'|'LoadBalancer'|'LoadBalancerTlsCertificate'|'Disk'|'DiskSnapshot'|'RelationalDatabase'|'RelationalDatabaseSnapshot'|'ExportSnapshotRecord'|'CloudFormationStackRecord'|'Alarm'|'ContactMethod'|'Distribution'|'Certificate'|'Bucket',
            'createdAt': datetime(2015, 1, 1),
            'location': {
                'availabilityZone': 'string',
                'regionName': 'us-east-1'|'us-east-2'|'us-west-1'|'us-west-2'|'eu-west-1'|'eu-west-2'|'eu-west-3'|'eu-central-1'|'ca-central-1'|'ap-south-1'|'ap-southeast-1'|'ap-southeast-2'|'ap-northeast-1'|'ap-northeast-2'|'eu-north-1'
            },
            'isTerminal': True|False,
            'operationDetails': 'string',
            'operationType': 'DeleteKnownHostKeys'|'DeleteInstance'|'CreateInstance'|'StopInstance'|'StartInstance'|'RebootInstance'|'OpenInstancePublicPorts'|'PutInstancePublicPorts'|'CloseInstancePublicPorts'|'AllocateStaticIp'|'ReleaseStaticIp'|'AttachStaticIp'|'DetachStaticIp'|'UpdateDomainEntry'|'DeleteDomainEntry'|'CreateDomain'|'DeleteDomain'|'CreateInstanceSnapshot'|'DeleteInstanceSnapshot'|'CreateInstancesFromSnapshot'|'CreateLoadBalancer'|'DeleteLoadBalancer'|'AttachInstancesToLoadBalancer'|'DetachInstancesFromLoadBalancer'|'UpdateLoadBalancerAttribute'|'CreateLoadBalancerTlsCertificate'|'DeleteLoadBalancerTlsCertificate'|'AttachLoadBalancerTlsCertificate'|'CreateDisk'|'DeleteDisk'|'AttachDisk'|'DetachDisk'|'CreateDiskSnapshot'|'DeleteDiskSnapshot'|'CreateDiskFromSnapshot'|'CreateRelationalDatabase'|'UpdateRelationalDatabase'|'DeleteRelationalDatabase'|'CreateRelationalDatabaseFromSnapshot'|'CreateRelationalDatabaseSnapshot'|'DeleteRelationalDatabaseSnapshot'|'UpdateRelationalDatabaseParameters'|'StartRelationalDatabase'|'RebootRelationalDatabase'|'StopRelationalDatabase'|'EnableAddOn'|'DisableAddOn'|'PutAlarm'|'GetAlarms'|'DeleteAlarm'|'TestAlarm'|'CreateContactMethod'|'GetContactMethods'|'SendContactMethodVerification'|'DeleteContactMethod'|'CreateDistribution'|'UpdateDistribution'|'DeleteDistribution'|'ResetDistributionCache'|'AttachCertificateToDistribution'|'DetachCertificateFromDistribution'|'UpdateDistributionBundle'|'SetIpAddressType'|'CreateCertificate'|'DeleteCertificate'|'CreateContainerService'|'UpdateContainerService'|'DeleteContainerService'|'CreateContainerServiceDeployment'|'CreateContainerServiceRegistryLogin'|'RegisterContainerImage'|'DeleteContainerImage'|'CreateBucket'|'DeleteBucket'|'CreateBucketAccessKey'|'DeleteBucketAccessKey'|'UpdateBucketBundle'|'UpdateBucket'|'SetResourceAccessForBucket'|'UpdateInstanceMetadataOptions'|'StartGUISession'|'StopGUISession'|'SetupInstanceHttps',
            'status': 'NotStarted'|'Started'|'Failed'|'Completed'|'Succeeded',
            'statusChangedAt': datetime(2015, 1, 1),
            'errorCode': 'string',
            'errorDetails': 'string'
        },
    ]
}

Response Structure

  • (dict) –

    • operations (list) –

      An array of objects that describe the result of the action, such as the status of the request, the timestamp of the request, and the resources affected by the request.

      • (dict) –

        Describes the API operation.

        • id (string) –

          The ID of the operation.

        • resourceName (string) –

          The resource name.

        • resourceType (string) –

          The resource type.

        • createdAt (datetime) –

          The timestamp when the operation was initialized ( 1479816991.349).

        • location (dict) –

          The Amazon Web Services Region and Availability Zone.

          • availabilityZone (string) –

            The Availability Zone. Follows the format us-east-2a (case-sensitive).

          • regionName (string) –

            The Amazon Web Services Region name.

        • isTerminal (boolean) –

          A Boolean value indicating whether the operation is terminal.

        • operationDetails (string) –

          Details about the operation ( Debian-1GB-Ohio-1).

        • operationType (string) –

          The type of operation.

        • status (string) –

          The status of the operation.

        • statusChangedAt (datetime) –

          The timestamp when the status was changed ( 1479816991.349).

        • errorCode (string) –

          The error code.

        • errorDetails (string) –

          The error details.

Exceptions

  • Lightsail.Client.exceptions.ServiceException

  • Lightsail.Client.exceptions.InvalidInputException

  • Lightsail.Client.exceptions.NotFoundException

  • Lightsail.Client.exceptions.OperationFailureException

  • Lightsail.Client.exceptions.AccessDeniedException

  • Lightsail.Client.exceptions.AccountSetupInProgressException

  • Lightsail.Client.exceptions.UnauthenticatedException