

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 安裝 Snowball Edge 裝置的更新
<a name="install-updates"></a>

下載更新之後，您必須安裝更新並重新啟動裝置，更新才會生效。下列程序會引導您手動安裝更新。

對於 Snowball Edge 裝置的叢集，必須將更新下載至叢集中的每個裝置並安裝。

**注意**  
在安裝軟體更新之前，先暫停裝置上的所有活動。安裝更新會停止執行執行個體，並中斷對裝置上的 Amazon S3 儲存貯體的任何寫入。這可能會導致資料遺失

**安裝已下載至獨立 Snowball Edge 的軟體更新**

1. 開啟終端機視窗，並確保使用 `describe-device`命令解鎖 Snowball Edge 裝置。如果裝置已鎖定，請使用 `unlock-device` 命令來解除鎖定。如需詳細資訊，請參閱[解除鎖定 Snowball Edge](https://docs.aws.amazon.com/snowball/latest/developer-guide/unlockdevice.html)。

1. 執行 `list-services`命令以查看裝置上可用的服務。命令會傳回裝置上每個可用服務的服務 IDs。

   ```
   snowballEdge list-services                    
   ```  
**Example `list-services` 命令的輸出**  

   ```
   {
     "ServiceIds" : [ "greengrass", "fileinterface", "s3", "ec2", "s3-snow" ]
   }
   ```

1. 對於 `list-services`命令識別的每個服務 ID，請執行 `describe-service`命令以查看狀態。使用此資訊來識別要停止的服務。

   ```
   snowballEdge describe-service --service-id service-id                    
   ```  
**Example `describe-service` 命令的輸出**  

   ```
   {
   "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"
     }
    } ]
   }
   ```

   此輸出顯示`s3`服務處於作用中狀態，必須使用 `stop-service`命令停止。

1. 使用 `stop-service`命令來停止每個服務，其中`State`名稱的值位於`list-services`命令的輸出`ACTIVE`中。如果執行多個服務，請先停止每個服務再繼續。
**注意**  
Amazon S3 轉接器、Amazon EC2 AWS STS和 IAM 服務無法停止。如果 Snowball Edge 上的 Amazon S3 相容儲存正在執行，請在安裝更新之前停止它。Snowball Edge 上的 Amazon S3 相容儲存體具有 `s3-snow`作為 `serviceId`。

   ```
   snowballEdge stop-service --service-id service-id --device-ip-addresses snow-device-1-ip-address snow-device-device-2-ip-address snow-device-3-ip-address --manifest-file path/to/manifest/file.bin --unlock-code 29-character-unlock-code --endpoint https://snow-device-ip-address
   ```  
**Example `stop-service` 命令的輸出**  

   ```
   Stopping the AWS service on your Snowball Edge. You can determine the status of the AWS service using the describe-service command.                    
   ```

1. 執行 `snowballEdge install-updates` 命令。

1. 您可以使用 `snowballEdge describe-device-software` 命令來檢查此安裝的狀態。安裝更新時，您會使用此命令顯示狀態。

**範例輸出**  
`Install State: Installing //Possible values[NA, Installing, Requires Reboot]`

   您已成功為 Snowball Edge 裝置安裝軟體更新。安裝更新不會自動將更新套用到裝置。若要完成更新的安裝，必須重新啟動裝置。
**警告**  
重新啟動您的 Snowball Edge 裝置，而未停止裝置上的所有活動會導致資料遺失。

1. 當裝置上的所有服務都已停止時，請重新啟動裝置、解鎖裝置，然後重新開機。如此即完成下載軟體更新的安裝。如需重新啟動裝置的詳細資訊，請參閱[重新啟動 Snowball Edge](https://docs.aws.amazon.com/snowball/latest/developer-guide/reboot.html)。如需解除鎖定裝置的詳細資訊，請參閱[解除鎖定 Snowball Edge](https://docs.aws.amazon.com/snowball/latest/developer-guide/unlockdevice.html)。

1. 當裝置在第二次重新啟動後開啟電源時，請解除鎖定裝置。

1. 執行 `check-for-updates` 命令。此命令會傳回 Snowball Edge 軟體的最新可用版本，以及裝置上安裝的目前版本。

**安裝已下載至 Snowball Edge 裝置叢集的軟體更新**

1. 針對叢集中的每個裝置，執行 `describe-device`命令來判斷裝置是否已解除鎖定。如果裝置已鎖定，請使用 `unlock-cluster`命令將其解除鎖定。如需詳細資訊，請參閱[解除鎖定 Snowball Edge](https://docs.aws.amazon.com/snowball/latest/developer-guide/unlockdevice.html)。

1. 對於叢集中的每個裝置，執行 `list-services`命令以查看裝置上可用的服務。命令會傳回裝置上每個可用服務的服務 IDs。

   ```
   snowballEdge list-services                    
   ```  
**Example `list-services` 命令的輸出**  

   ```
   {
     "ServiceIds" : [ "greengrass", "fileinterface", "s3", "ec2", "s3-snow" ]
   }
   ```

1. 針對 `list-services`命令識別的每個服務 ID，執行 `describe-service`命令以查看狀態。使用此資訊來識別要停止的服務。

   ```
   snowballEdge describe-service --service-id service-id                    
   ```  
**Example `describe-service` 命令的輸出**  

   ```
   {
   "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"
     }
    } ]
   }
   ```

   此輸出顯示`s3`服務處於作用中狀態，必須使用 `stop-service`命令停止。

1. 對於叢集中的每個裝置，使用 `stop-service`命令來停止每個服務，其中`State`名稱的值在`list-services`命令的輸出`ACTIVE`中。如果執行多個服務，請先停止每個服務再繼續。
**注意**  
Amazon S3 轉接器、Amazon EC2 AWS STS和 IAM 服務無法停止。如果 Snowball Edge 上的 Amazon S3 相容儲存正在執行，請在安裝更新之前停止它。Snowball Edge 上的 Amazon S3 相容儲存體具有 `s3-snow`作為 `serviceId`。

   ```
   snowballEdge stop-service --service-id service-id --device-ip-addresses snow-device-1-ip-address snow-device-device-2-ip-address snow-device-3-ip-address --manifest-file path/to/manifest/file.bin --unlock-code 29-character-unlock-code --endpoint https://snow-device-ip-address
   ```  
**Example `stop-service` 命令的輸出**  

   ```
   Stopping the AWS service on your Snowball Edge. You can determine the status of the AWS service using the describe-service command.                    
   ```

1. 對於叢集中的每個裝置，執行 `install-updates`命令。

   ```
   snowballEdge install-updates                    
   ```

1. 您可以使用 `describe-device-software` 命令來檢查此安裝的狀態。

   ```
   snowballEdge describe-device-software                    
   ```  
**Example `describe-device-service` 命令的輸出**  

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

   當 `Install State`為 時`Requires Reboot`，您已成功安裝 Snowball Edge 裝置的軟體更新。安裝更新不會自動將更新套用到裝置。若要完成更新的安裝，必須重新啟動裝置。
**警告**  
重新啟動 Snowball Edge 裝置而不停止裝置上的所有活動，可能會導致資料遺失。

1. 重新啟動叢集中的所有裝置、解鎖叢集，然後再次重新啟動叢集中的所有裝置。如此即完成下載軟體更新的安裝。如需重新啟動裝置的詳細資訊，請參閱[重新啟動 Snowball Edge](https://docs.aws.amazon.com/snowball/latest/developer-guide/reboot.html)。如需解除鎖定裝置叢集的詳細資訊，請參閱[解除鎖定 Snowball Edge](https://docs.aws.amazon.com/snowball/latest/developer-guide/unlockdevice.html)。

1. 叢集中的每個裝置重新啟動兩次後，請解除鎖定叢集，然後使用 `check-for-updates`命令來驗證裝置是否已更新。此命令會傳回 Snowball Edge 軟體的最新可用版本，以及裝置上安裝的目前版本。如果目前版本和最新的可用版本相同，表示已成功更新裝置。

您現在已成功更新 Snowball Edge 或裝置叢集，並確認更新至最新的 Snowball Edge 軟體。