Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Amazon Web Services for Front-end Developers

Amazon Web Services for Front-end Developers

Slides (in Dutch) for a talk on Amazon Web Services (such as EC2, S3, CloudFront) given at a Fronteers community event in Amsterdam on 22 January 2013.

19f565f05a5d2e98d4416d1db627bf76?s=128

Jan van Hellemond

January 22, 2013
Tweet

More Decks by Jan van Hellemond

Other Decks in Technology

Transcript

  1. voor Front-end Developers

  2. 24+ webservices op ongelimiteerde* infrastructuur •Direct Connect •Elastic Compute Cloud

    •Elastic MapReduce •Route 53 •Virtual Private Cloud •CloudFront •Glacier •AWS Marketplace •Elastic Beanstalk •Identity & Access Mgmt. •CloudSearch •Simple Email Service •Simple Notification Service •Simple Queue Service •Simple Workflow Service •Mechanical Turk •Secure Simple Storage •Storage Gateway •SimpleDB •DynamoDB •ElastiCache •Remote Data Service •CloudFormation •CloudWatch
  3. 24+ webservices op ongelimiteerde* infrastructuur •Direct Connect •Elastic Compute Cloud

    •Elastic MapReduce •Route 53 •Virtual Private Cloud •CloudFront •Glacier •AWS Marketplace •Elastic Beanstalk •Identity & Access Mgmt. •CloudSearch •Simple Email Service •Simple Notification Service •Simple Queue Service •Simple Workflow Service •Mechanical Turk •Secure Simple Storage •Storage Gateway •SimpleDB •DynamoDB •ElastiCache •Remote Data Service •CloudFormation •CloudWatch
  4. Services beheren via de AWS Management Console

  5. Google Authenticator app voor iOS en Android Ezio Time Token

    Hardware token van Gemalto Beveiligde toegang met Multi-Factor Authentication
  6. Google Authenticator app voor iOS en Android Ezio Time Token

    Hardware token van Gemalto Beveiligde toegang met Multi-Factor Authentication
  7. Toolkits en SDKs beschikbaar voor de API Java .NET PHP

    Ruby Android iOS Python JavaScript
  8. Toolkits en SDKs beschikbaar voor de API Java .NET PHP

    Ruby Android iOS Python JavaScript !
  9. JavaScript scratchpads voor testen en development

  10. Cloud Smart Meter app voor iPhone en iPad

  11. AWS Console for Android via Google Play en Amazon Appstore

  12. S3 Secure Simple Storage

  13. Ongelimiteerde opslagruimte in de cloud

  14. Data is bereikbaar via verschillende kanalen http:// https:// BitTorrent™

  15. Géén folders, alleen buckets met objecten

  16. Maximaal 100 buckets per account

  17. Maximaal 100 buckets per account +

  18. Buckets bestaan alléén op root niveau

  19. Naam van een bucket is uniek voor alle accounts

  20. Naam van een bucket is uniek voor alle accounts backup

  21. Naam van een bucket is uniek voor alle accounts backup

    MyBucket
  22. Naam van een bucket is uniek voor alle accounts backup

    MyBucket files
  23. Naam van een bucket is uniek voor alle accounts backup

    MyBucket files website-images
  24. Naam van een bucket is uniek voor alle accounts backup

    MyBucket files website-images S3
  25. Aantal objecten per bucket is ongelimiteerd Object is minimaal 1

    byte Object is maximaal 5 terabyte
  26. , maar objectnaam mag / bevatten a/b a/b/c.jpeg b/c/d.html b/c/d/e/f

    c/d/e/f S3 a b e c.jpeg d.html S3Hub
  27. Verwijs naar eigen domeinnaam via CNAME in DNS static.frontlab.nl IN

    CNAME ↳ static.frontlab.nl.s3.amazonaws.com DNS
  28. Bij CNAME moet de bucket naam gelijk zijn aan hostname

    static.frontlab.nl http://static.frontlab.nl/
  29. Cyberduck http://cyberduck.ch Transmit 4 http://panic.com/transmit S3Hub http://s3hubapp.com CloudBerry http://cloudberrylab.com Coda

    2 http://panic.com/coda S3Fox http://s3fox.net Buckets en objecten beheren met S3 clients
  30. AWS Management Console https://console.aws.amazon.com

  31. •Logging •Root (index) object •Error object (404) •Redirects (301) •Custom

    HTTP headers •Expiring URLs •Versioning en Lifecycle •Directory browsing •robots.txt •Browser uploads Handige features voor S3 websites
  32. •Custom Content-Type headers •Gzip compressie met Content-Encoding •Expires & Cache-Control

    voor caching •CORS met Allow-Access-Origin c.s. •Generieke meta-data met x-amz-meta- •Etag voor... tja Standaard en custom HTTP headers
  33. Uploaden vanuit de browser met Browser Uploads

  34. <!DOCTYPE html> <html> <head> <title>S3 POST Form</title> </head> <body> <form

    action="https://s3-bucket.s3.amazonaws.com/" method="post" enctype="multipart/form-data"> <input type="hidden" name="AWSAccessKeyId" value="YOUR_AWS_ACCESS_KEY"> <input type="hidden" name="key" value="uploads/${filename}"> <input type="hidden" name="acl" value="private"> <input type="hidden" name="success_action_redirect" value="http://localhost/"> <input type="hidden" name="policy" value="YOUR_POLICY_DOCUMENT_BASE64_ENCODED"> <input type="hidden" name="signature" value="YOUR_CALCULATED_SIGNATURE"> <input name="file" type="file"><br> <input type="submit" value="Upload File to S3"> </form> </body> </html> Uploaden vanuit de browser met Browser Uploads
  35. Bucket versioning voor backup en recovery

  36. Bucket versioning voor backup en recovery

  37. Automatisch tuinieren met Data Lifecycle Management

  38. 99,999999999% durability 99,99% availability Duurzaamheid en beschikbaarheid: heel veel negens

  39. CloudFront Content Distribution Network (CDN)

  40. Wereldwijd 25 locaties, enkele locaties 2x, zoals Amsterdam

  41. Wereldwijd 25 locaties, enkele locaties 2x, zoals Amsterdam

  42. None
  43. Grade A

  44. Grade A

  45. S3 bucket Flash Media Server Naadloze video met streaming distributie

  46. EC2 Elastic Compute Cloud

  47. Ongelimiteerde rekenkracht in de AWS cloud

  48. Keuze uit Linux en Windows operating systems

  49. Uitgebreide selectie kant en klare AMI's

  50. Uitgebreide selectie kant en klare AMI's

  51. Keuze uit virtuele servers, van micro tot 8x XL

  52. SimpleDB Simple JSON Datastore

  53. https://sdb.amazonaws.com/?Action=PutAttributes ↳ &Attribute.Whizzo.Name=Color ↳ &Attribute.Whizzo.Value=Blue https://sdb.amazonaws.com/?Action=GetAttributes ↳ &DomainName=Foobar ↳ &ItemName=Whizzo

    Eenvoudige API, simpel URL schema over HTTP Gegevens opslaan Gegevens terug lezen
  54. SDB Tool Firefox add-on http://code.google.com/p/sdbtool/

  55. Route 53 Domain Name System (DNS)

  56. Root domeinnaam via ALIAS in DNS static.frontlab.nl IN ALIAS ↳

    static.frontlab.nl.s3.amazonaws.com "Pseudo DNS"
  57. Route53 ALIAS verwijst naar bucket IP-adres (S3) frontlab.nl http://frontlab.nl/

  58. IAM Identity & Access Management

  59. IAM Identity & Access Management

  60. IAM Identity & Access Management

  61. Mechanical Turk Artificial Artificial Intelligence

  62. Taken laten uitvoeren door echte mensen

  63. “I make $1.45 a week and I love it” –

    Katharine Mieszkowski, Salon.com Bakken met geld verdienen door suffe klusjes te doen
  64. HTTP API HTTP API

  65. HTTP API HTTP API

  66. www.kickstarter.com/projects/fred/emoji-dick/ Emoji Dick Vertaald naar Emoji door Mechanical Turk workers

  67. Kosten?

  68. Geen verrassingen met de Simple Monthly Calculator rekentool

  69. Bijna gratis met de Free Usage Tier in de eerste

    12 maanden 5 GB gratis opslag 2.000 PUT requests 20.000 GET requests 750 uur Windows instance 750 uur load balancer Onbeperkt upload data 1 GB gratis download data 750 uur Linux instance