Redshift / Client / create_scheduled_action

create_scheduled_action#

Redshift.Client.create_scheduled_action(**kwargs)#

Creates a scheduled action. A scheduled action contains a schedule and an Amazon Redshift API action. For example, you can create a schedule of when to run the ResizeCluster API operation.

See also: AWS API Documentation

Request Syntax

response = client.create_scheduled_action(
    ScheduledActionName='string',
    TargetAction={
        'ResizeCluster': {
            'ClusterIdentifier': 'string',
            'ClusterType': 'string',
            'NodeType': 'string',
            'NumberOfNodes': 123,
            'Classic': True|False,
            'ReservedNodeId': 'string',
            'TargetReservedNodeOfferingId': 'string'
        },
        'PauseCluster': {
            'ClusterIdentifier': 'string'
        },
        'ResumeCluster': {
            'ClusterIdentifier': 'string'
        }
    },
    Schedule='string',
    IamRole='string',
    ScheduledActionDescription='string',
    StartTime=datetime(2015, 1, 1),
    EndTime=datetime(2015, 1, 1),
    Enable=True|False
)
Parameters:
  • ScheduledActionName (string) –

    [REQUIRED]

    The name of the scheduled action. The name must be unique within an account. For more information about this parameter, see ScheduledAction.

  • TargetAction (dict) –

    [REQUIRED]

    A JSON format string of the Amazon Redshift API operation with input parameters. For more information about this parameter, see ScheduledAction.

    • ResizeCluster (dict) –

      An action that runs a ResizeCluster API operation.

      • ClusterIdentifier (string) – [REQUIRED]

        The unique identifier for the cluster to resize.

      • ClusterType (string) –

        The new cluster type for the specified cluster.

      • NodeType (string) –

        The new node type for the nodes you are adding. If not specified, the cluster’s current node type is used.

      • NumberOfNodes (integer) –

        The new number of nodes for the cluster. If not specified, the cluster’s current number of nodes is used.

      • Classic (boolean) –

        A boolean value indicating whether the resize operation is using the classic resize process. If you don’t provide this parameter or set the value to false, the resize type is elastic.

      • ReservedNodeId (string) –

        The identifier of the reserved node.

      • TargetReservedNodeOfferingId (string) –

        The identifier of the target reserved node offering.

    • PauseCluster (dict) –

      An action that runs a PauseCluster API operation.

      • ClusterIdentifier (string) – [REQUIRED]

        The identifier of the cluster to be paused.

    • ResumeCluster (dict) –

      An action that runs a ResumeCluster API operation.

      • ClusterIdentifier (string) – [REQUIRED]

        The identifier of the cluster to be resumed.

  • Schedule (string) –

    [REQUIRED]

    The schedule in at( ) or cron( ) format. For more information about this parameter, see ScheduledAction.

  • IamRole (string) –

    [REQUIRED]

    The IAM role to assume to run the target action. For more information about this parameter, see ScheduledAction.

  • ScheduledActionDescription (string) – The description of the scheduled action.

  • StartTime (datetime) – The start time in UTC of the scheduled action. Before this time, the scheduled action does not trigger. For more information about this parameter, see ScheduledAction.

  • EndTime (datetime) – The end time in UTC of the scheduled action. After this time, the scheduled action does not trigger. For more information about this parameter, see ScheduledAction.

  • Enable (boolean) – If true, the schedule is enabled. If false, the scheduled action does not trigger. For more information about state of the scheduled action, see ScheduledAction.

Return type:

dict

Returns:

Response Syntax

{
    'ScheduledActionName': 'string',
    'TargetAction': {
        'ResizeCluster': {
            'ClusterIdentifier': 'string',
            'ClusterType': 'string',
            'NodeType': 'string',
            'NumberOfNodes': 123,
            'Classic': True|False,
            'ReservedNodeId': 'string',
            'TargetReservedNodeOfferingId': 'string'
        },
        'PauseCluster': {
            'ClusterIdentifier': 'string'
        },
        'ResumeCluster': {
            'ClusterIdentifier': 'string'
        }
    },
    'Schedule': 'string',
    'IamRole': 'string',
    'ScheduledActionDescription': 'string',
    'State': 'ACTIVE'|'DISABLED',
    'NextInvocations': [
        datetime(2015, 1, 1),
    ],
    'StartTime': datetime(2015, 1, 1),
    'EndTime': datetime(2015, 1, 1)
}

Response Structure

  • (dict) –

    Describes a scheduled action. You can use a scheduled action to trigger some Amazon Redshift API operations on a schedule. For information about which API operations can be scheduled, see ScheduledActionType.

    • ScheduledActionName (string) –

      The name of the scheduled action.

    • TargetAction (dict) –

      A JSON format string of the Amazon Redshift API operation with input parameters.

      {\"ResizeCluster\":{\"NodeType\":\"ra3.4xlarge\",\"ClusterIdentifier\":\"my-test-cluster\",\"NumberOfNodes\":3}}”.

      • ResizeCluster (dict) –

        An action that runs a ResizeCluster API operation.

        • ClusterIdentifier (string) –

          The unique identifier for the cluster to resize.

        • ClusterType (string) –

          The new cluster type for the specified cluster.

        • NodeType (string) –

          The new node type for the nodes you are adding. If not specified, the cluster’s current node type is used.

        • NumberOfNodes (integer) –

          The new number of nodes for the cluster. If not specified, the cluster’s current number of nodes is used.

        • Classic (boolean) –

          A boolean value indicating whether the resize operation is using the classic resize process. If you don’t provide this parameter or set the value to false, the resize type is elastic.

        • ReservedNodeId (string) –

          The identifier of the reserved node.

        • TargetReservedNodeOfferingId (string) –

          The identifier of the target reserved node offering.

      • PauseCluster (dict) –

        An action that runs a PauseCluster API operation.

        • ClusterIdentifier (string) –

          The identifier of the cluster to be paused.

      • ResumeCluster (dict) –

        An action that runs a ResumeCluster API operation.

        • ClusterIdentifier (string) –

          The identifier of the cluster to be resumed.

    • Schedule (string) –

      The schedule for a one-time (at format) or recurring (cron format) scheduled action. Schedule invocations must be separated by at least one hour.

      Format of at expressions is “ at(yyyy-mm-ddThh:mm:ss)”. For example, “ at(2016-03-04T17:27:00)”.

      Format of cron expressions is “ cron(Minutes Hours Day-of-month Month Day-of-week Year)”. For example, “ cron(0 10 ? * MON *)”. For more information, see Cron Expressions in the Amazon CloudWatch Events User Guide.

    • IamRole (string) –

      The IAM role to assume to run the scheduled action. This IAM role must have permission to run the Amazon Redshift API operation in the scheduled action. This IAM role must allow the Amazon Redshift scheduler (Principal scheduler.redshift.amazonaws.com) to assume permissions on your behalf. For more information about the IAM role to use with the Amazon Redshift scheduler, see Using Identity-Based Policies for Amazon Redshift in the Amazon Redshift Cluster Management Guide.

    • ScheduledActionDescription (string) –

      The description of the scheduled action.

    • State (string) –

      The state of the scheduled action. For example, DISABLED.

    • NextInvocations (list) –

      List of times when the scheduled action will run.

      • (datetime) –

    • StartTime (datetime) –

      The start time in UTC when the schedule is active. Before this time, the scheduled action does not trigger.

    • EndTime (datetime) –

      The end time in UTC when the schedule is no longer active. After this time, the scheduled action does not trigger.

Exceptions

  • Redshift.Client.exceptions.ClusterNotFoundFault

  • Redshift.Client.exceptions.ScheduledActionAlreadyExistsFault

  • Redshift.Client.exceptions.ScheduledActionQuotaExceededFault

  • Redshift.Client.exceptions.ScheduledActionTypeUnsupportedFault

  • Redshift.Client.exceptions.InvalidScheduleFault

  • Redshift.Client.exceptions.InvalidScheduledActionFault

  • Redshift.Client.exceptions.UnauthorizedOperation

  • Redshift.Client.exceptions.UnsupportedOperationFault