- Navigation GuideYou are on a Command (operation) page with structural examples. Use the navigation breadcrumb if you would like to return to the Client landing page.
UpdateClusterCommand
While a cluster's ClusterState
value is in the AwaitingQuorum
state, you can update some of the information associated with a cluster. Once the cluster changes to a different job state, usually 60 minutes after the cluster being created, this action is no longer available.
Example Syntax
Use a bare-bones client and the command you need to make an API call.
import { SnowballClient, UpdateClusterCommand } from "@aws-sdk/client-snowball"; // ES Modules import
// const { SnowballClient, UpdateClusterCommand } = require("@aws-sdk/client-snowball"); // CommonJS import
const client = new SnowballClient(config);
const input = { // UpdateClusterRequest
ClusterId: "STRING_VALUE", // required
RoleARN: "STRING_VALUE",
Description: "STRING_VALUE",
Resources: { // JobResource
S3Resources: [ // S3ResourceList
{ // S3Resource
BucketArn: "STRING_VALUE",
KeyRange: { // KeyRange
BeginMarker: "STRING_VALUE",
EndMarker: "STRING_VALUE",
},
TargetOnDeviceServices: [ // TargetOnDeviceServiceList
{ // TargetOnDeviceService
ServiceName: "NFS_ON_DEVICE_SERVICE" || "S3_ON_DEVICE_SERVICE",
TransferOption: "IMPORT" || "EXPORT" || "LOCAL_USE",
},
],
},
],
LambdaResources: [ // LambdaResourceList
{ // LambdaResource
LambdaArn: "STRING_VALUE",
EventTriggers: [ // EventTriggerDefinitionList
{ // EventTriggerDefinition
EventResourceARN: "STRING_VALUE",
},
],
},
],
Ec2AmiResources: [ // Ec2AmiResourceList
{ // Ec2AmiResource
AmiId: "STRING_VALUE", // required
SnowballAmiId: "STRING_VALUE",
},
],
},
OnDeviceServiceConfiguration: { // OnDeviceServiceConfiguration
NFSOnDeviceService: { // NFSOnDeviceServiceConfiguration
StorageLimit: Number("int"),
StorageUnit: "TB",
},
TGWOnDeviceService: { // TGWOnDeviceServiceConfiguration
StorageLimit: Number("int"),
StorageUnit: "TB",
},
EKSOnDeviceService: { // EKSOnDeviceServiceConfiguration
KubernetesVersion: "STRING_VALUE",
EKSAnywhereVersion: "STRING_VALUE",
},
S3OnDeviceService: { // S3OnDeviceServiceConfiguration
StorageLimit: Number("double"),
StorageUnit: "TB",
ServiceSize: Number("int"),
FaultTolerance: Number("int"),
},
},
AddressId: "STRING_VALUE",
ShippingOption: "SECOND_DAY" || "NEXT_DAY" || "EXPRESS" || "STANDARD",
Notification: { // Notification
SnsTopicARN: "STRING_VALUE",
JobStatesToNotify: [ // JobStateList
"New" || "PreparingAppliance" || "PreparingShipment" || "InTransitToCustomer" || "WithCustomer" || "InTransitToAWS" || "WithAWSSortingFacility" || "WithAWS" || "InProgress" || "Complete" || "Cancelled" || "Listing" || "Pending",
],
NotifyAll: true || false,
DevicePickupSnsTopicARN: "STRING_VALUE",
},
ForwardingAddressId: "STRING_VALUE",
};
const command = new UpdateClusterCommand(input);
const response = await client.send(command);
// {};
Example Usage
UpdateClusterCommand Input
Parameter | Type | Description |
---|
Parameter | Type | Description |
---|---|---|
ClusterId Required | string | undefined | The cluster ID of the cluster that you want to update, for example |
AddressId | string | undefined | The ID of the updated Address object. |
Description | string | undefined | The updated description of this cluster. |
ForwardingAddressId | string | undefined | The updated ID for the forwarding address for a cluster. This field is not supported in most regions. |
Notification | Notification | undefined | The new or updated Notification object. |
OnDeviceServiceConfiguration | OnDeviceServiceConfiguration | undefined | Specifies the service or services on the Snow Family device that your transferred data will be exported from or imported into. Amazon Web Services Snow Family device clusters support Amazon S3 and NFS (Network File System). |
Resources | JobResource | undefined | The updated arrays of JobResource objects that can include updated S3Resource objects or LambdaResource objects. |
RoleARN | string | undefined | The new role Amazon Resource Name (ARN) that you want to associate with this cluster. To create a role ARN, use the CreateRole API action in Identity and Access Management (IAM). |
ShippingOption | ShippingOption | undefined | The updated shipping option value of this cluster's ShippingDetails object. |
UpdateClusterCommand Output
Parameter | Type | Description |
---|
Parameter | Type | Description |
---|---|---|
$metadata Required | ResponseMetadata | Metadata pertaining to this request. |
Throws
Name | Fault | Details |
---|
Name | Fault | Details |
---|---|---|
Ec2RequestFailedException | client | Your user lacks the necessary Amazon EC2 permissions to perform the attempted action. |
InvalidInputCombinationException | client | Job or cluster creation failed. One or more inputs were invalid. Confirm that the CreateClusterRequest$SnowballType value supports your CreateJobRequest$JobType, and try again. |
InvalidJobStateException | client | The action can't be performed because the job's current state doesn't allow that action to be performed. |
InvalidResourceException | client | The specified resource can't be found. Check the information you provided in your last request, and try again. |
KMSRequestFailedException | client | The provided Key Management Service key lacks the permissions to perform the specified CreateJob or UpdateJob action. |
SnowballServiceException | Base exception class for all service exceptions from Snowball service. |