Creating a Job with Compute Instances - Amazon Snowcone User Guide
Services or capabilities described in Amazon Web Services documentation might vary by Region. To see the differences applicable to the China Regions, see Getting Started with Amazon Web Services in China (PDF).

Creating a Job with Compute Instances

In this section, you create your first compute instance job.

Important

Be aware of the following points before you create your job:

  • If you're going to use an AMI from the Amazon Web Services Marketplace, make sure it has a supported product code and usage operation code. For more information, see Checking product and usage option codes for Amazon Web Services Marketplace AMIs.

  • Make sure that the vCPU, memory, and storage values associated with your AMI match the type of instance that you want to create.

  • If you're going to use SSH to connect to the instance after you launch the instance on your Snowcone, you must first perform the following procedure.

  • Using encrypted AMIs or encrypted Amazon EBS volumes on Amazon Snowcone devices is not supported.

Checking product and usage option codes for Amazon Web Services Marketplace AMIs

Before you begin the process to add an AMI from Amazon Web Services Marketplace to your Snow Family device, ensure the product and usage codes of the AMI are supported in your Amazon Web Services Region.

  1. Open the Amazon EC2 console at https://console.amazonaws.cn/ec2/.

  2. From the navigation bar, select the Region in which to launch your instances and from which you will create the job to order the Snow Family device. You can select any Region that's available to you, regardless of your location.

  3. In the navigation pane, choose AMIs.

  4. Use the filter and search options to scope the list of displayed AMIs to see only the AMIs that match your criteria. For example, to list all Linux AMIs provided by Amazon, choose Public images. Then use the search options to further scope the list of displayed AMIs.

    (New console) Choose the Search bar and, from the menu, choose Owner alias, then the = operator, and then the value amazon. Choose the Search bar again to choose Platform, then the = operator, and then the operating system from the list provided.

    (Old console) Choose the Search bar and, from the menu, choose Owner and then the value Amazon images. Choose the Search bar again to choose Platform and then the operating system from the list provided.

    Note

    AMIs from Amazon Web Services Marketplace include aws-marketplace in the Source column.

  5. In the AMI ID column, choose the AMI ID of the AMI.

  6. In the Image summary of the AMI, ensure the Product codes are supported by your Region. For more information, see the table below.

    Note

    The product code avyfzznywektkgl5qv5f57ska is supported in all Regions.

    Supported Amazon Web Services Marketplace AMI product codes
    AMI operating system Product code
    Ubuntu Server 14.04 LTS b3dl4415quatdndl4qa6kcu45
    CentOS 7 (x86_64) aw0evgkw8e5c1q413zgy5pjce
    Ubuntu 16.04 LTS csv6h7oyg29b7epjzg7qdr7no
    Amazon Linux 2 avyfzznywektkgl5qv5f57ska
  7. For all Regions, ensure the Usage operation code is RunInstances.

Determining the version of the Amazon Linux 2 AMI for Snow Family

Use the following procedure to determine the version of the Amazon Linux 2 AMI for Snow Family on the Snow Family device. Install the latest version of the Amazon CLI before continuing. For more information, see Install or update to the latest version of the Amazon CLI in the Amazon Command Line Interface User Guide.

  • Use the describe-images Amazon CLI command to see the description of the AMI. The version is contained in the description. Provide the public key certificate from the previous step. For more information, see describe-images in the Amazon CLI Command Reference.

    aws ec2 describe-images --endpoint http://snow-device-ip:8008 --region snow
    Example of output of the describe-images command
    { "Images": [ { "CreationDate": "2024-02-12T23:24:45.705Z", "ImageId": "s.ami-02ba84cb87224e16e", "Public": false, "ProductCodes": [ { "ProductCodeId": "avyfzznywektkgl5qv5f57ska", "ProductCodeType": "marketplace" } ], "State": "AVAILABLE", "BlockDeviceMappings": [ { "DeviceName": "/dev/xvda", "Ebs": { "DeleteOnTermination": true, "Iops": 0, "SnapshotId": "s.snap-0efb49f2f726fde63", "VolumeSize": 8, "VolumeType": "sbp1" } } ], "Description": "Snow Family Amazon Linux 2 AMI 2.0.20240131.0 x86_64 HVM gp2", "EnaSupport": false, "Name": "amzn2-ami-snow-family-hvm-2.0.20240131.0-x86_64-gp2-b7e7f8d2-1b9e-4774-a374-120e0cd85d5a", "RootDeviceName": "/dev/xvda" } ] }

    In this example, the version of the Amazon Linux 2 AMI for Snow Family is 2.0.20240131.0. It is found in the value of the Description name.

Configure an AMI to Use SSH to Connect to Compute Instances Launched on the Device

To use Secure Shell (SSH) to connect to your compute instances on Snowcone devices, you must perform the following procedure. This procedure adds the SSH key to the AMI before creating your job. We also recommend that you use this procedure to set up your applications on the instance that you plan to use as the AMI for your job.

To put an SSH key into an AMI
  1. When you launch your instance, make sure that the storage size that you assign to the instance is appropriate for your later use on the Snowcone. In the Amazon EC2 console, you do this in Step 4: Add Storage. For a list of the supported sizes for compute instance storage volumes on a Snowcone, see Amazon Snowcone quotas .

  2. Install and configure the applications that you want to run on the Snowcone, and test that they work as expected.

  3. Make a copy of the PEM/PPK file that you used for the SSH key pair to create this instance. Save this file to the server that you plan to use to communicate with the Snowcone. This file is required for using SSH to connect to the launched instance on your device, so make a note of the path to this file.

  4. Save the instance as an AMI. For more information, see Creating an Amazon EBS-Backed Linux AMI in the Amazon EC2 User Guide for Linux Instances.

  5. Repeat this procedure for each of the instances that you want to connect to using SSH. Make sure that you make copies of your different SSH key pairs and take note of the AMIs they're associated with.

Creating Your Job in the Console

Your next step is to create a job to order a Snow Family device. Your job can be of any job type, including a cluster. To use the Amazon Snow Family Management Console, follow the instructions in Getting Started.

Creating Your Job in the Amazon CLI

You can also create your job using the Amazon CLI. To do this, open a terminal and run the following command, replacing the red text with your actual values.

aws snowballEdge create-job --job-type IMPORT --resources '{"S3Resources":[{"BucketArn":"arn:aws:s3:::bucket-name"}],"Ec2AmiResources":[{"AmiId":"ami-12345678"}]}' --description Example --address-id ADIEXAMPLE60-1234-1234-5678-41fEXAMPLE57 --kms-key-arn arn:aws:kms:us-west-2:012345678901:key/eEXAMPLE-1234-1234-5678-5b4EXAMPLE8e --role-arn arn:aws:iam::012345678901:role/snowball-local-s3-lambda-us-west-2-role --snowball-capacity-preference T100 --shipping-option SECOND_DAY --snowball-type SNOWCONE

After your device arrives and you unlock it, use the Snowball Edge client to get your local credentials. For more information, see Getting Credentials.