Updating software on Snowcone devices - 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).

Updating software on Snowcone devices

You can download software updates from Amazon and install them on Snowcone devices in your on-premises environments. These updates happen in the background. You can continue to use your devices as normal while the latest software is downloaded securely from Amazon to your device. However, to apply downloaded updates, you must restart the device.

Software updates provided by Amazon for Snowball Edge/Snowcone devices (Appliances) are Appliance Software as per Section 9 of the Service Terms.

The software updates are provided solely for the purpose of installing the software updates on the applicable Appliance on behalf of Amazon. You will not (or attempt to), and will not permit or authorize third parties to (or attempt to) (i) make any copies of the software updates other than those necessary to install the software updates on the applicable Appliance, or (ii) circumvent or disable any features or measures in the software updates, including, but not limited to, any encryption applied to the software update. Once the software updates have been installed on the applicable Appliance, you agree to delete the software updates from any and all media utilized in installing the software updates to the Appliance.

Warning

We highly recommend that you suspend all activity on your device before restarting it. Restarting a device stops running instances, interrupts any writing to local Amazon S3 buckets, and stops any write operations from the file interface without clearing the cache. All of these processes can result in lost data.

Prerequisites

Before you can update your device, the following prerequisites must be met:

  • You've created your job, have the device on-premises, and you've unlocked it. For more information, see Getting Started.

  • Updating Snowcone devices is done through the Snowball Edge client. The Snowball Edge client must be downloaded and installed on a computer in your local environment that has a network connection to the device you want to update. For more information, see Using the Amazon Snowball Edge Client.

  • (Optional) We recommend that you configure a profile for the Snowball Edge client. For more information, see Configuring a Profile for the Snowball Edge Client.

After you complete these tasks, you can download and install updates for Snowcone devices.

Downloading updates

There are two primary ways that you can download an update for Snowcone devices:

  • You can trigger manual updates at any time using specific Snowball Edge client commands.

  • You can programmatically determine a time to automatically update the device.

The following procedure outlines the process of manually downloading updates. For information about automatically updating your Snowcone device, see snowballEdge configure-auto-update-strategy in Updating a Snowcone.

Note

If your device has no access to the internet, you can download an update file using the GetSoftwareUpdates API. Then point to a local file location when you call download-updates using the --uri option, as in the following example.

snowballEdge download-updates --uri file:///tmp/local-update
To check for and download Snowcone software updates
  1. Open a terminal window, and ensure that the Snowcone device is unlocked using the snowballEdge describe-device command. If the device is locked, use the snowballEdge unlock-device command to unlock it.

  2. When the device is unlocked, run the snowballEdge check-for-updates command. This command returns the latest available version of the Snowball Edge software, and also the current version installed on the device.

  3. If your device software is out of date, run the snowballEdge download-updates command.

    Note

    If your device is not connected to the internet, first download an update file using the GetSoftwareUpdates API. Then run the snowballEdge download-updates command using the --uri option with a local path to the file that you downloaded, as in the following example.

    snowballEdge download-updates --uri file:///tmp/local-update
  4. You can check the status of this download with the snowballEdge describe-device-software command. While an update is downloading, you display the status using this command.

    Example output

    Install State: Downloading

Installing updates

After downloading updates, you must install them and restart your device for the updates to take effect. The following procedure guides you through manually installing updates.

To install Snowcone software updates that were already downloaded
  1. Open a terminal window, and ensure that the Snowcone device is unlocked using the snowballEdge describe-device command. If the device is locked, use the snowballEdge unlock-device command to unlock it.

  2. Run the snowballEdge install-updates command.

  3. You can check the status of this installation with the snowballEdge describe-device-software command. While an update is installing, you display the status with this command.

    Example output

    Install State: Installing //Possible values[NA, Installing, Requires Reboot]

    You’ve successfully installed a software update for your Snowcone device. Installing an update does not automatically apply the update to the device. To finish installing the update, the device must be restarted.

    We highly recommend that you suspend all activity on the device before you restart the device. Restarting a device stops running instances, interrupts any writing to Amazon S3 buckets on the device, and stops any write operations from the file interface without clearing the cache.

    Warning

    Restarting your Snowcone device without stopping all activity on the device can result in lost data.

    To stop a service running on your Snowcone device, you can use the snowballEdge stop-service command.

    The Amazon S3, Amazon EC2, Amazon STS, and IAM services cannot be stopped.

  4. Run the snowballEdge list-services command to list the currently running services on the device.

  5. Run the snowballEdge describe-service command for each of the running services, to see their status.

  6. Use this information to stop those services (setting the services to the INACTIVE state).

  7. When all the services on the device have stopped, run the snowballEdge reboot-device command twice. This command immediately power-cycles the device to complete installation of the downloaded software updates.

  8. When the device powers on after the second reboot, open a terminal window and use the snowballEdge unlock-device command to unlock the device.

  9. Run the snowballEdge check-for-updates command. This command returns the latest available version of the Snowcone software, and also the current version that is installed on the device.

You have now successfully updated your device and confirmed that your device is up to date with the latest Snowcone software.

Update the SSL certificate

If you plan to keep your Snowcone device for more than 360 days, you will need to update the Secure Sockets Layer (SSL) certificate on the device to avoid interruption of your use of the device. If the certificate expires, you will not be able to use the device and will have to return it to Amazon.

This topic explains how update your device after you determined when the certificate will expire.

Note

Request an update from Amazon at least two weeks before the certificate will expire to avoid interruption of your use of the device.

  1. Use a tool like OpenSSL to determine when the certificate will expire. For example, use the openssl s_client command to connect to the device and see information about the certificate.

    Example of openssL s_client command syntax on Windows
    openssl s_client -connect IP.ADDRESSOFSNOW:9091
    Example of openssl s_client command syntax on macOS
    openssl s_client -connect IP.ADDRESSOFSNOW:9091 | openssl x509 -noout -enddate

    In the output of the command, the value of NotAfter is the date and time at which the certificate expires.

    Example value of NotAfter output of openssl s_client command
    …
    NotAfter: Sep  3 19:11:50 2022 GMT
    …
        
  2. Contact Amazon Web Services Support and request an SSL certificate update.

  3. Amazon Web Services Support will provide an update file. Download and install the update file.

  4. Use the new unlock code and manifest file when Unlocking a device.