Transferencia de archivos mediante el adaptador Amazon S3 para la migración de datos hacia o desde los dispositivos de la familia Snow - AWS Snowball Edge Guía para desarrolladores

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Transferencia de archivos mediante el adaptador Amazon S3 para la migración de datos hacia o desde los dispositivos de la familia Snow

A continuación, se ofrece una descripción general del adaptador Amazon S3, que puede utilizar para transferir datos mediante programación desde y hacia los buckets de S3 que ya están en el AWS Snowball Edge dispositivo mediante las acciones de Amazon S3. REST API Esta REST API compatibilidad con Amazon S3 se limita a un subconjunto de acciones. Puede usar este subconjunto de acciones con una de ellas AWS SDKs para transferir datos mediante programación. También puede utilizar el subconjunto de comandos admitidos de la AWS Command Line Interface (AWS CLI) para Amazon S3 a fin de transferir datos mediante programación.

Si la solución usa la AWS SDK for Java versión 1.11.0 o posterior, debe usar lo siguiente: S3ClientOptions

  • disableChunkedEncoding(): indica que no se admite la codificación fragmentada con la interfaz.

  • setPathStyleAccess(true): configura la interfaz para usar el acceso de tipo ruta para todas las solicitudes.

Para obtener más información, consulte Class S3 ClientOptions .Builder en Amazon AppStream SDK for Java.

importante

Le recomendamos que utilice solo un método a la vez para leer y escribir datos en un depósito local de un AWS Snowball Edge dispositivo. El uso de la interfaz de archivos y el adaptador de Amazon S3 en el mismo bucket a la vez puede dar lugar a conflictos de lectura/escritura.

En AWS Snowball Cuotas periféricas se detallan los límites.

Para que AWS los servicios funcionen correctamente en un Snowball Edge, debe permitir los puertos para los servicios. Para obtener más información, consulte Requisitos de puerto para los AWS servicios en un dispositivo de la familia Snow.

Descarga e instalación de la AWS CLI versión 1.16.14 para usarla con el adaptador Amazon S3

En la actualidad, los dispositivos Snowball Edge solo permiten usar la versión 1.16.14 y las versiones anteriores de la AWS CLI con el adaptador de Amazon S3. Las versiones más recientes no AWS CLI son compatibles con el adaptador Amazon S3 porque no admiten todas las funciones del adaptador S3.

nota

Si utiliza almacenamiento compatible con Amazon S3 en dispositivos Snow Family, puede utilizar la versión más reciente de la AWS CLI. Para descargar y utilizar la versión más reciente, consulte la Guía del usuario de AWS Command Line Interface.

Instálelo AWS CLI en sistemas operativos Linux

Ejecute este comando encadenado:

curl "https://s3.amazonaws.com/aws-cli/awscli-bundle-1.16.14.zip" -o "awscli-bundle.zip";unzip awscli-bundle.zip;sudo ./awscli-bundle/install -i /usr/local/aws -b /usr/local/bin/aws;/usr/local/bin/aws --version;

Instálelo AWS CLI en los sistemas operativos Windows

Descargue y ejecute el archivo del instalador correspondiente a su sistema operativo:

Uso de las API operaciones AWS CLI y en los dispositivos Snowball Edge

Al utilizar las API operaciones AWS CLI o para emitir IAM los EC2 comandos Amazon S3 y Amazon en Snowball Edge, debe especificar la región como "»snow. Puede hacerlo utilizando AWS configure o dentro del propio comando, como en los ejemplos siguientes.

aws configure --profile abc AWS Access Key ID [None]: AKIAIOSFODNN7EXAMPLE AWS Secret Access Key [None]: 1234567 Default region name [None]: snow Default output format [None]: json

Or (Disyunción)

aws s3 ls --profile snowballEdge --endpoint http://192.0.2.0:8080 --region snow

Autorización con la API interfaz Amazon S3 para AWS Snowball

Cuando utiliza el adaptador Amazon S3, todas las interacciones se firman con el algoritmo AWS Signature Version 4 de forma predeterminada. Esta autorización solo se usa para comprobar los datos en tránsito desde el origen hasta la interfaz. Todas las operaciones de cifrado y descifrado se realizan en el dispositivo. Nunca se almacenan datos sin cifrar en el dispositivo.

Al utilizar la interfaz, tenga en cuenta lo siguiente:

  • Para obtener las credenciales locales de Amazon S3 a fin de identificar sus solicitudes en el dispositivo AWS Snowball Edge , ejecute los comandos snowballEdge list-access-keys y snowballEdge get-secret-access-keys del cliente de Snowball Edge. Para obtener más información, consulte Configuración y uso del cliente Snowball Edge. Estas credenciales locales de Amazon S3 incluyen un par de claves: una clave de acceso y una clave secreta. Estas claves únicamente son válidas para los dispositivos asociados con el trabajo. No se pueden usar en el Nube de AWS porque no tienen una contraparte AWS Identity and Access Management (IAM).

  • Las AWS credenciales que utilice no cambiarán la clave de cifrado. La firma con el algoritmo Signature Version 4 se utiliza únicamente para verificar los datos en tránsito desde su origen a la interfaz. Por lo tanto, esta firma no tiene en cuenta nunca las claves de cifrado utilizadas para cifrar los datos en el dispositivo Snowball.

Obtener y usar las credenciales locales de Amazon S3 en los dispositivos de la familia Snow

Cada interacción con un Snowball Edge se firma con el algoritmo AWS Signature Version 4. Para obtener más información acerca del algoritmo, consulte Proceso de firma de la versión 4 en Referencia general de AWS.

Puede obtener las credenciales locales de Amazon S3 para firmar sus solicitudes en el dispositivo Edge del cliente de Snowball Edge ejecutando snowballEdge list-access-keys y snowballEdge get-secret-access-key. Para obtener información sobre el cliente de Snowball Edge, consulte Obtener las credenciales de un dispositivo de la familia Snow. Estas credenciales locales de Amazon S3 incluyen un par de claves: un ID de clave de acceso y una clave secreta. Estas credenciales únicamente son válidas para los dispositivos asociados con su trabajo. No se pueden usar en el Nube de AWS porque no tienen IAM contrapartida.

Puede añadir estas credenciales al archivo de AWS credenciales de su servidor. El archivo de perfiles de credenciales predeterminado suele estar en ~/.aws/credentials, pero la ubicación puede variar en función de la plataforma. Este archivo lo comparten muchos de los AWS SDKs y AWS CLI. Puede guardar las credenciales locales con un nombre de perfil, como en el ejemplo siguiente:

[snowballEdge] aws_access_key_id = AKIAIOSFODNN7EXAMPLE aws_secret_access_key = wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY

Configuración AWS CLI para usar el adaptador S3 en un dispositivo de la familia Snow como punto final

Cuando utilizas el AWS CLI para enviar un comando al AWS Snowball Edge dispositivo, especificas que el punto de conexión es el adaptador Amazon S3. Tiene la opción de utilizar el HTTPS punto final o uno no seguroHTTP, como se muestra a continuación.

HTTPSpunto final seguro

aws s3 ls --profile snowballEdge --endpoint https://192.0.2.0:8443 --ca-bundle path/to/certificate

HTTPpunto final no seguro

aws s3 ls --profile snowballEdge --endpoint http://192.0.2.0:8080

Si utiliza el HTTPS punto final de8443, sus datos se transfieren de forma segura desde su servidor a Snowball Edge. Este cifrado está protegido con un certificado que el dispositivo Snowball Edge genera cuando obtiene una nueva dirección IP. Una vez que tenga el certificado, puede guardarlo en un archivo ca-bundle.pem local. A continuación, puede configurar su AWS CLI perfil para incluir la ruta al certificado, tal y como se describe a continuación.

Asociación del certificado con el punto de conexión de interfaz
  1. Conecte el dispositivo Snowball Edge a la alimentación eléctrica y a la red y enciéndalo.

  2. En cuanto el dispositivo termine de arrancar, anote su dirección IP en la red local.

  3. En un terminal de la red, asegúrese de que puede hacer ping al dispositivo Snowball Edge.

  4. Ejecute el comando snowballEdge get-certificate en el terminal. Para obtener más información acerca de este comando, consulte Administración de certificados de clave pública en los dispositivos de la familia Snow.

  5. Guarde el resultado del comando snowballEdge get-certificate en un archivo, por ejemplo ca-bundle.pem.

  6. Ejecute el siguiente comando desde el terminal.

    aws configure set profile.snowballEdge.ca_bundle /path/to/ca-bundle.pem

Tras completar el procedimiento, puede ejecutar CLI comandos con estas credenciales locales, su certificado y el punto final especificado, como en el siguiente ejemplo.

aws s3 ls --profile snowballEdge --endpoint https://192.0.2.0:8443

Funciones de Amazon S3 no compatibles con el adaptador Amazon S3 en los dispositivos de la familia Snow

Con el adaptador Amazon S3, puede transferir datos mediante programación hacia y desde un Snowball Edge con acciones de Amazon S3. API Sin embargo, no todas las funciones y API acciones de transferencia de Amazon S3 se admiten para su uso con un dispositivo Snowball Edge cuando se utiliza el adaptador Amazon S3. Por ejemplo, las siguientes características y acciones no se pueden usar con Snowball Edge:

  • TransferManager— Esta utilidad transfiere archivos de un entorno local a Amazon S3 con la aplicación SDK para Java. En su lugar, considere la posibilidad de utilizar API las acciones o AWS CLI comandos compatibles con la interfaz.

  • GETBucket (List Objects) versión 2: esta implementación de la GET acción devuelve algunos o todos (hasta 1000) los objetos de un bucket. Considere la posibilidad de utilizar la acción GETBucket (List Objects) de la versión 1 o el AWS CLI comando ls.

  • ListBuckets— No se admite el punto final ListBuckets con el objeto. El siguiente comando no funciona con el almacenamiento compatible con Amazon S3 en dispositivos Snow Family:

    aws s3 ls --endpoint https://192.0.2.0 --profile profile