import type { MetadataBearer as __MetadataBearer } from "@smithy/types"; import type { CreateClusterRequest, CreateClusterResult } from "../models/models_0"; /** * @public */ export type { __MetadataBearer }; /** * @public * * The input for {@link CreateClusterCommand}. */ export interface CreateClusterCommandInput extends CreateClusterRequest { } /** * @public * * The output of {@link CreateClusterCommand}. */ export interface CreateClusterCommandOutput extends CreateClusterResult, __MetadataBearer { } declare const CreateClusterCommand_base: { new (input: CreateClusterCommandInput): import("@smithy/core/client").CommandImpl; new (input: CreateClusterCommandInput): import("@smithy/core/client").CommandImpl; getEndpointParameterInstructions(): import("@smithy/types").EndpointParameterInstructions; }; /** *

Creates an empty cluster. Each cluster supports five nodes. You use the CreateJob action separately to create the jobs for each of these nodes. The * cluster does not ship until these five node jobs have been created.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript * import { SnowballClient, CreateClusterCommand } from "@aws-sdk/client-snowball"; // ES Modules import * // const { SnowballClient, CreateClusterCommand } = require("@aws-sdk/client-snowball"); // CommonJS import * // import type { SnowballClientConfig } from "@aws-sdk/client-snowball"; * const config = {}; // type is SnowballClientConfig * const client = new SnowballClient(config); * const input = { // CreateClusterRequest * JobType: "IMPORT" || "EXPORT" || "LOCAL_USE", // required * 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"), * }, * }, * Description: "STRING_VALUE", * AddressId: "STRING_VALUE", // required * KmsKeyARN: "STRING_VALUE", * RoleARN: "STRING_VALUE", * SnowballType: "STANDARD" || "EDGE" || "EDGE_C" || "EDGE_CG" || "EDGE_S" || "SNC1_HDD" || "SNC1_SSD" || "V3_5C" || "V3_5S" || "RACK_5U_C", // required * ShippingOption: "SECOND_DAY" || "NEXT_DAY" || "EXPRESS" || "STANDARD", // required * 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", * TaxDocuments: { // TaxDocuments * IND: { // INDTaxDocuments * GSTIN: "STRING_VALUE", * }, * }, * RemoteManagement: "INSTALLED_ONLY" || "INSTALLED_AUTOSTART" || "NOT_INSTALLED", * InitialClusterSize: Number("int"), * ForceCreateJobs: true || false, * LongTermPricingIds: [ // LongTermPricingIdList * "STRING_VALUE", * ], * SnowballCapacityPreference: "T50" || "T80" || "T100" || "T42" || "T98" || "T8" || "T14" || "T32" || "NoPreference" || "T240" || "T13", * }; * const command = new CreateClusterCommand(input); * const response = await client.send(command); * // { // CreateClusterResult * // ClusterId: "STRING_VALUE", * // JobListEntries: [ // JobListEntryList * // { // JobListEntry * // JobId: "STRING_VALUE", * // JobState: "New" || "PreparingAppliance" || "PreparingShipment" || "InTransitToCustomer" || "WithCustomer" || "InTransitToAWS" || "WithAWSSortingFacility" || "WithAWS" || "InProgress" || "Complete" || "Cancelled" || "Listing" || "Pending", * // IsMaster: true || false, * // JobType: "IMPORT" || "EXPORT" || "LOCAL_USE", * // SnowballType: "STANDARD" || "EDGE" || "EDGE_C" || "EDGE_CG" || "EDGE_S" || "SNC1_HDD" || "SNC1_SSD" || "V3_5C" || "V3_5S" || "RACK_5U_C", * // CreationDate: new Date("TIMESTAMP"), * // Description: "STRING_VALUE", * // }, * // ], * // }; * * ``` * * @param CreateClusterCommandInput - {@link CreateClusterCommandInput} * @returns {@link CreateClusterCommandOutput} * @see {@link CreateClusterCommandInput} for command's `input` shape. * @see {@link CreateClusterCommandOutput} for command's `response` shape. * @see {@link SnowballClientResolvedConfig | config} for SnowballClient's `config` shape. * * @throws {@link Ec2RequestFailedException} (client fault) *

Your user lacks the necessary Amazon EC2 permissions to perform the attempted * action.

* * @throws {@link InvalidInputCombinationException} (client fault) *

Job or cluster creation failed. One or more inputs were invalid. Confirm that the CreateClusterRequest$SnowballType value supports your CreateJobRequest$JobType, and try again.

* * @throws {@link InvalidResourceException} (client fault) *

The specified resource can't be found. Check the information you provided in your last * request, and try again.

* * @throws {@link KMSRequestFailedException} (client fault) *

The provided Key Management Service key lacks the permissions to perform the specified * CreateJob or UpdateJob action.

* * @throws {@link SnowballServiceException} *

Base exception class for all service exceptions from Snowball service.

* * * @example To create a cluster * ```javascript * // Creates an empty cluster. Each cluster supports five nodes. You use the CreateJob action separately to create the jobs for each of these nodes. The cluster does not ship until these five node jobs have been created. * const input = { * AddressId: "ADID1234ab12-3eec-4eb3-9be6-9374c10eb51b", * Description: "MyCluster", * JobType: "LOCAL_USE", * KmsKeyARN: "arn:aws:kms:us-east-1:123456789012:key/abcd1234-12ab-34cd-56ef-123456123456", * Notification: { * JobStatesToNotify: [], * NotifyAll: false * }, * Resources: { * S3Resources: [ * { * BucketArn: "arn:aws:s3:::MyBucket", * KeyRange: { /* empty *\/ } * } * ] * }, * RoleARN: "arn:aws:iam::123456789012:role/snowball-import-S3-role", * ShippingOption: "SECOND_DAY", * SnowballType: "EDGE" * }; * const command = new CreateClusterCommand(input); * const response = await client.send(command); * /* response is * { * ClusterId: "CID123e4567-e89b-12d3-a456-426655440000" * } * *\/ * ``` * * @public */ export declare class CreateClusterCommand extends CreateClusterCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: CreateClusterRequest; output: CreateClusterResult; }; sdk: { input: CreateClusterCommandInput; output: CreateClusterCommandOutput; }; }; }