= Storage y CDN == examen * [[https://aws.amazon.com/s3/faqs]] * [[https://aws.amazon.com/s3/storage-classes]] * [[https://docs.aws... versioning]] * aws dynamoDB == servicios * S3 = Simple Storage Service * Glacier * Storage Gateway * CloudFront = cacheado por región -> CDN ((Content Delivery Network)) == S3 * object storage key-based * escalable (no hay que especificar tamaño) infinitamente * barato * durabilidad * el objeto se guarda en los Availability Zones de la región (suelen ser 3 - datacenters -, pero depende de la region) * existe un servicio que no replica - más barato * disponibilidad (SLA): * 99,99% availability * 99,999999999% durabilidad * individual Amazons S3 objects: * 0 - 5TB * objeto enviable en un único PUT: 5GB * objetos de más de 100MB, se debería usar el Multipart Upload <- no accesible por la consola * buckets ≡ directorios * por defecto privados * se crean en una región * global : nombres únicos * acceso: **%%https://s3..amazonaws.com/%%** * web estática : convertir bucket en página web: **%%http://.s3-website-.amazonaws.com%%** * se puede subir desde la consola * objeto (key-based): * key * value : cadena de bits * version ID * metadata * ACL * tired storage available * S3 Standard : normal * S3 Standard-IA (Infrequent Access) : acceso esporádico * recuperación más cara * almacenamiento más barato * S3 Standard-One Z IA : idem anterior, pero en solo 1 zona * reduced Redundancy : to be deprecated * Glacier : recuperación entre 3-5 horas, mejorando * expedited : recuperación inmediata, muy caro recuperar * standard : 3-5 horas * bulk : 5-12 horas {{ :info:cursos:itformacion:awsassociate:pasted:20181001-110015.png }} * Versioning. * al sobreescribir/borrar guarda la versión anterior * MFA((Multi Factor Authentication) en borrado de ficheros * una vez activo no se puede desactivar, solo suspender * Livecycle Management * reglas de ciclo de vida para mover entre los diferentes tipos de S3 * de Standard -> 30 días -> IA -> 30 días -> Glacier * o borrar * Securing buckets * ACL : Access Control List * a nivel de bucket o de objeto dentro de bucket * entidades en otras cuentas o en internet * Bucket Policies * a nivel de bucket * nivel "interno", nuestra cuenta. * access logs de todo lo que se hace * se puede guardar en el mismo bucket o en otro * encriptación * en tránsito SSL/TLS (por defecto) * encriptación en la lado cliente * al resto (en Amazon, Server Side) * AES-256, server-side encryption con Amazon S3-Managed Keys (SSE-S3) <- gratuita * AWS-KMS, server-sice encruption con AWS KMS-Managed Keys (SSE-KMS) * se genera llave maestra que genera otras y hay un log de uso * auditado * server side encryption con Costumer Provided Keys (SSE-C) <- no dispoble en consola * el encriptado si es activado a posteriori, no encripta los elementos que ya están guardados, solo los nuevos * Data Consystency Model * PUTS : envío ficheros -> Read-after-write <- al recibir el 200 (OK) ya está asegurada la consistencia) * PUTS overwrites y DELETES : consistencia eventual (lapso en el cual la misma petición podría dar resultados diferentes mientras se "sincroniza") * costes: * almacenamiento * peticiones * storage management pricing (tags/metadata) * data transfer pricing (repicación inter-zona) * Transfer Acceleration * infraestructura cloudfront para acelerar el ratio === Laboratorio {{ :info:cursos:itformacion:awsassociate:pasted:20181001-111716.png }} {{ :info:cursos:itformacion:awsassociate:pasted:20181001-111850.png }} * tags: * para asociar a facturación * para establecer permisos * organización, agrupación * CloudTrail : cualquier petición de usuario queda registrado {{ :info:cursos:itformacion:awsassociate:pasted:20181001-112313.png }} * CloudWatch : métricas, monitorización {{ :info:cursos:itformacion:awsassociate:pasted:20181001-112625.png }} * manage system permissions : hay que darle permiso explícito para que **S3 Log Delivery** deje los logs de otros buckets {{ :info:cursos:itformacion:awsassociate:pasted:20181001-113350.png }} {{ :info:cursos:itformacion:awsassociate:pasted:20181001-113416.png }} {{ :info:cursos:itformacion:awsassociate:pasted:20181001-113433.png }} {{ :info:cursos:itformacion:awsassociate:pasted:20181001-113510.png }} {{ :info:cursos:itformacion:awsassociate:pasted:20181001-113608.png }} * diferentes permisos si seleccionas el bucket o un archivo * las carpetas que se crean no son al uso, son "virtuales" == CloudFront (CDN) * distribuir contenido con latencia baja y gran velocidad de transferencia * edge locations ≡ CDN servers * no tiene nada que ver con las AZ o regiones * existen las **Regional Edge Caches** * ficheros, media streaming * los **orígenes** pueden ser: * S3 Bucket * EC2 instance * Elastic Load Balancer * Route 53 * Media Package : sirve el contenido adecuado para el dispositivo * AWS Elemental MediaStore : ayuda a optimizar la descarga * la **distribución** * CDN - Edge Locations * web distribution -> websites * RTMP - media streaming * tanto para servir (cache) como para recoger (red más optimizada) * TTL = Time To Live * se pueden invalidar los objetos en caché ($) * si quieres cambiar el contenido, usar URLs con cadenas random para que al actualizar la URL y el contenido asociado === Laboratorio * si restringimos el acceso al bucket, solo se podrá acceder via CloudFront, no vía http/bucket * (!) para hace restricción sobre la URL del CloudFront generado, podemos usar: * Signed URLs * Signed Cookies == Storage Gateway === File Gateway * S3 * NFS / SMB === Volume Gateway * volúmenes iSCSI * cached volumes : almacenamiento principal en Amazon, cacheado en el server * 1GB - 32TB * stored volumes : almacenamiento principal en mi datacenter, cacheado / replicado en Amazon === Tape Gateway * almacena en Glacier * estructura virtual de cintas de backup == Snowball * import / export data to S3 * dispositivo físico para mover gran cantidad de información * 3 tipos: * snowball : 80TB * snowball edge:.. * ...