Installing updates to Snowball Edge devices
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.
For clusters of Snowball Edge devices, the update must be downloaded to and installed for each device in the cluster.
Note
Suspend all activity on the device before you install software updates. Installing updates stops running instances and interrupts any writes to Amazon S3 buckets on the device. This can result in lost data
To install software updates that were already downloaded to standalone Snowball Edge
-
Open a terminal window, and ensure that the Snowball Edge device is unlocked using the
describe-device
command. If the device is locked, use theunlock-device
command to unlock it. For more information, see Unlocking the Snowball Edge. -
Run the
list-services
command to see the services available on the device. The command returns the service IDs of each service available on the device.snowballEdge list-services
Example of output of
list-services
command{ "ServiceIds" : [ "greengrass", "fileinterface", "s3", "ec2", "s3-snow" ] }
-
For each service ID identified by the
list-services
command, run thedescribe-service
command to see the status. Use this information to identify services to stop.snowballEdge describe-service --service-id
service-id
Example of output of
describe-service
command{ "ServiceId" : "s3", "Status" : { "State" : "ACTIVE" }, "Storage" : { "TotalSpaceBytes" : 99608745492480, "FreeSpaceBytes" : 99608744468480 }, "Endpoints" : [ { "Protocol" : "http", "Port" : 8080, "Host" : "192.0.2.0" }, { "Protocol" : "https", "Port" : 8443, "Host" : "192.0.2.0", "CertificateAssociation" : { "CertificateArn" : "arn:aws:snowball-device:::certificate/6d955EXAMPLEdb71798146EXAMPLE3f0" } } ] }
This output shows that the
s3
service is active and must be stopped using thestop-service
command. Use the
stop-service
command to stop each service where the value of theState
name isACTIVE
in the output of thelist-services
command. If more than one service is running, stop each one before continuing.Note
The Amazon S3 adapter, Amazon EC2, AWS STS, and IAM services cannot be stopped. If Amazon S3 compatible storage on Snowball Edge is running, stop it before installing updates. Amazon S3 compatible storage on Snowball Edge has
s3-snow
as theserviceId
.snowballEdge stop-service --service-id
service-id
--device-ip-addressessnow-device-1-ip-address
snow-device-device-2-ip-address
snow-device-3-ip-address
--manifest-filepath/to/manifest/file.bin
--unlock-code29-character-unlock-code
--endpoint https://snow-device-ip-address
Example of output of the
stop-service
commandStopping the AWS service on your Snowball Edge. You can determine the status of the AWS service using the describe-service command.
-
Run the
snowballEdge install-updates
command. -
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 Snowball Edge device. Installing an update does not automatically apply the update to the device. To finish installing the update, the device must be restarted.
Warning
Restarting your Snowball Edge device without stopping all activity on the device can result in lost data.
-
When all the services on the device have stopped, reboot the device, unlock the device, and reboot it again. This completes installation of the downloaded software updates. For more information about rebooting the device, see Rebooting the Snowball Edge. For more information about unlocking the device, see Unlocking the Snowball Edge.
-
When the device powers on after the second reboot, unlock the device.
-
Run the
check-for-updates
command. This command returns the latest available version of the Snowball Edge software, and also the current version that is installed on the device.
To install software updates that were already downloaded to a cluster of Snowball Edge devices
-
For each device in the cluster, run the
describe-device
command to determine if the devices are unlocked. If the devices are locked, use theunlock-cluster
command to unlock it. For more information, see Unlocking the Snowball Edge. -
For each device in the cluster, run the
list-services
command to see the services available on the device. The command returns the service IDs of each service available on the device.snowballEdge list-services
Example of output of
list-services
command{ "ServiceIds" : [ "greengrass", "fileinterface", "s3", "ec2", "s3-snow" ] }
-
For each service ID identified by the
list-services
command, run thedescribe-service
command to see the status. Use this information to identify services to stop.snowballEdge describe-service --service-id
service-id
Example of output of
describe-service
command{ "ServiceId" : "s3", "Status" : { "State" : "ACTIVE" }, "Storage" : { "TotalSpaceBytes" : 99608745492480, "FreeSpaceBytes" : 99608744468480 }, "Endpoints" : [ { "Protocol" : "http", "Port" : 8080, "Host" : "192.0.2.0" }, { "Protocol" : "https", "Port" : 8443, "Host" : "192.0.2.0", "CertificateAssociation" : { "CertificateArn" : "arn:aws:snowball-device:::certificate/6d955EXAMPLEdb71798146EXAMPLE3f0" } } ] }
This output shows that the
s3
service is active and must be stopped using thestop-service
command. For each device in the cluster, use the
stop-service
command to stop each service where the value of theState
name isACTIVE
in the output of thelist-services
command. If more than one service is running, stop each one before continuing.Note
The Amazon S3 adapter, Amazon EC2, AWS STS, and IAM services cannot be stopped. If Amazon S3 compatible storage on Snowball Edge is running, stop it before installing updates. Amazon S3 compatible storage on Snowball Edge has
s3-snow
as theserviceId
.snowballEdge stop-service --service-id
service-id
--device-ip-addressessnow-device-1-ip-address
snow-device-device-2-ip-address
snow-device-3-ip-address
--manifest-filepath/to/manifest/file.bin
--unlock-code29-character-unlock-code
--endpoint https://snow-device-ip-address
Example of output of the
stop-service
commandStopping the AWS service on your Snowball Edge. You can determine the status of the AWS service using the describe-service command.
-
For each device in the cluster, run the
install-updates
command.snowballEdge install-updates
-
You can check the status of this installation with the
describe-device-software
command.snowballEdge describe-device-software
Example of output of the
describe-device-service
commandInstall State: Installing //Possible values[NA, Installing, Requires Reboot]
When the
Install State
isRequires Reboot
, you've successfully installed the software update for your Snowball Edge device. Installing an update does not automatically apply the update to the device. To finish installing the update, the device must be restarted.Warning
Restarting the Snowball Edge device without stopping all activity on the device can result in lost data.
-
Reboot all devices in the cluster, unlock the cluster, and reboot all devices in the cluster again. This completes installation of the downloaded software updates. For more information about rebooting the devices, see Rebooting the Snowball Edge. For more information about unlocking the cluster of devices, see Unlocking the Snowball Edge.
-
After each device in the cluster has rebooted twice, unlock the cluster then use the
check-for-updates
command to verify the device was updated. This command returns the latest available version of the Snowball Edge software, and also the current version that is installed on the device. If the current version and the latest available version are the same, the device was updated successfully.
You have now successfully updated the Snowball Edge or cluster of devices and confirmed that the update to the latest Snowball Edge software.