HES-SO Master of Science in Engineering Cloud Computing Cloud Services Workshop Academic year 2014/15 (C) 2015 Marcel Graf
HES-SO MSE Workshop plan # Topic Presentation starts at Questions from group # 1 Run and manage Docker containers - EC2 Container Service 17:30 3,4,2 2 Monitor cloud resources and applications - CloudWatch 17:50 6, 5, 1 3 Geographically distributed web caches (Content Delivery Network) - CloudFront 18:10 4, 2, 5 Break 18:30 4 Capture, store and distribute real-time data streams - Kinesis 18:35 2, 6, 3 5 Scalable file storage - S3 18:55 1, 3, 6 6 Push notification service (email, SMS, mobile push) - SNS 19:15 5, 1, 4 2 Cloud Computing Cloud Services Workshop Academic year 2014/15 (C) 2015 Marcel Graf
HES-SO MSE Workshop plan # Topic 1 Run and manage Docker containers - EC2 Container Service Presentation starts at 17:30 3,4,2 Questions from group # 2 Monitor cloud resources and applications - CloudWatch 17:50 6, 5, 1 3 Geographically distributed web caches (Content Delivery Network) - CloudFront 18:10 4, 2, 5 Break 18:30 4 Capture, store and distribute real-time data streams - Kinesis 18:35 2, 6, 3 5 Scalable file storage - S3 18:55 1, 3, 6 6 Push notification service (email, SMS, mobile push) - SNS 19:15 5, 1, 4 3 Cloud Computing Cloud Services Workshop Academic year 2014/15 (C) 2015 Marcel Graf
Amazon EC2 Container Service (ECS) Master MSE // CLOUD 27-05-2015 Küng Stéphane Kury Nicolas Michielin Julie
Sommaire Docker EC2 Container Service Exemple pratique Questions Küng Stéphane Kury Nicolas Michielin Julie 2/9 Amazon EC2 Container Service Master MSE // CLOUD 27-05-2015
Docker Küng Stéphane Kury Nicolas Michielin Julie 3/9 Amazon EC2 Container Service Master MSE // CLOUD 27-05-2015
Docker Portable (Windows, Linux, OS X) Léger Passage facilité de développement à production Open Source Au moins aussi rapide que KVM* *http://domino.research.ibm.com/library/cyberdig.nsf/papers/0929052195dd819c85257d2300681e7b/$file/rc25482.pdf Küng Stéphane Kury Nicolas Michielin Julie 4/9 Amazon EC2 Container Service Master MSE // CLOUD 27-05-2015
EC2 Container Service Pas d infrastructure à gérer Multiples applications et ensemble d applications Redimensionnement automatique Gestion tarifaire claire Utilisation intelligente des ressources Pas de sur-coût d utilisation Küng Stéphane Kury Nicolas Michielin Julie 5/9 Amazon EC2 Container Service Master MSE // CLOUD 27-05-2015
Fonctionnement Küng Stéphane Kury Nicolas Michielin Julie / Amazon EC2 Container Cntainer Service Master MSE // // CLOUD 27-05-2015
Glossaire Container Instance Instance Amazon EC2 + Docker daemon + ECS agent Cluster Ensemble de Container Instance, pool de ressources Container Container Linux, part d une tâche Task Ensemble de containers, servant à exécuter une tâche. Küng Stéphane Kury Nicolas Michielin Julie 7/9 Amazon EC2 Container Service Master MSE // CLOUD 27-05-2015
Lecture d approfondissement Présentation du service: http://aws.amazon.com/ecs/ Documentation: https://aws.amazon.com/documentation/ecs/ Documentation technique: http://docs.aws.amazon.com/amazonecs/latest/developerguide/welcome.html ECS Agent, nécessaire à l utilisation des instances EC2 container instance https://github.com/aws/amazon-ecs-agent Küng Stéphane Kury Nicolas Michielin Julie 8/9 Amazon EC2 Container Service Master MSE // CLOUD 27-05-2015
Questions? Küng Stéphane Kury Nicolas Michielin Julie 9/9 Amazon EC2 Container Service Master MSE // CLOUD 27-05-2015
HES-SO MSE Questions for group 1 Group Question 2 Quel intérêt Amazon a à proposer une solution intégrant Docker? 5 Is there a way to distribute traffic between containers? 6 Est-ce qu'il est possible d'utiliser d'autres types de containers? (Rocket, etc.) 4 Cloud Computing Cloud Services Workshop Academic year 2014/15 (C) 2015 Marcel Graf
HES-SO MSE Workshop plan # Topic Presentation starts at Questions from group # 1 Run and manage Docker containers - EC2 Container Service 17:30 3,4,2 2 Monitor cloud resources and applications - CloudWatch 17:50 6, 5, 1 3 Geographically distributed web caches (Content Delivery Network) - CloudFront 18:10 4, 2, 5 Break 18:30 4 Capture, store and distribute real-time data streams - Kinesis 18:35 2, 6, 3 5 Scalable file storage - S3 18:55 1, 3, 6 6 Push notification service (email, SMS, mobile push) - SNS 19:15 5, 1, 4 5 Cloud Computing Cloud Services Workshop Academic year 2014/15 (C) 2015 Marcel Graf
Cloudwatch Monitor cloud resources and applications
Buts Cloudwatch est un outils de monitoring fourni par AWS depuis juillet 2014. Il sert à surveiller les ressources AWS utilisées par l utilisateur. Cet outil donne à l utilisateur une visibilité complète de son application en montrant l utilisation des ressources utilisées, leur performances ainsi que leur santé opérationnelle. Il permet notamment de faire de l auto-scalabilité grâce à la configuration d alarmes.
Fonctionnalités Surveillance de presque toutes les ressources que propose AWS : EC2, DynamoDB, volumes EBS, elastic load balancer, etc... Gestion des données générées par nos propres applications via une API Gestion des journaux avec Cloudwatch Logs (ingestion et stockage) Création d alarmes notifiant l utilisateur d un problème via email (e.g. High CPU, Low storage throughput, High Load Balancer latency, etc )
Fonctionnalités AWS fourni les graphiques des ressources surveillées, y compris les ressources générées par les applications propres à l utilisateur Le niveau gratuit d'aws inclut 10 mesures, 10 alarmes et 1 millions de requêtes d'api par mois avec 5Go de gestion de journaux (ingestion et stockage). Au niveau payant, on ne paye que ce que l on utilise, à la fin du mois Surveillance avancée d une instance EC2 : 3.50 $ Utilisation avancée de l API : 0.01 $ pour 1 000 requêtes Gestion des journaux avancée : 0.50 $ par Go ingéré / 0.03 $ par Go stocké
Fonctionnement
Exemple d utilisation pratique Un utilisateur possède un site d e-commerce très populaire. Il décide d utiliser une architecture 2-tiers en utilisant : une dizaine d instances EC2 deux instances RDS un elastic load-balancer Grâce à Cloudwatch, il peut surveiller en temps réel l ensemble de son application. Il peut créer des alarmes qui déclenchent des actions automatiques comme par exemple la création de nouvelles instances en cas de pic d activité. Grâce à l API fournit par Cloudwatch Log, il peut également surveiller les accès à son serveur NodeJS sur la même console que le monitoring de ses machines. Plus besoin de personnel de piquet pendant les week-ends.
Pourquoi utiliser Cloudwatch Centralisation de tous les journaux des diverses éléments et application (corrélation entre journaux) Auto-Scaling => Nécessaire lorsqu on commence à utiliser plus que une ou deux instances. Cloudwatch est cependant inutile dans une utilisation avec une instance/application générant peu de journaux
Références Documentation de CloudWatch sur Amazon http://aws.amazon.com/fr/cloudwatch/ Intégration de CloudWatch Logs Agent http://docs.aws.amazon.com/amazoncloudwatch/latest/developerguide/cwl_gettingstarted.html Documentation sur la collecte de métriques http://docs.aws.amazon.com/amazoncloudwatch/latest/developerguide/as-metricscollected.html
HES-SO MSE Questions for group 2 Group Question 1 - Comben ça coûte? - Qu'est-ce que tables Amazon DynamoDB? 3 Est-il possible d exporter les fichiers de logs générés et dans quel format sont-ils? 4 - Fonctionne avec une fonction personnalisée de santé? - Logs présents? Possibilité d historique à long terme? - Temps minimal entre les intervalles de test? 6 Cloud Computing Cloud Services Workshop Academic year 2014/15 (C) 2015 Marcel Graf
HES-SO MSE Workshop plan # Topic Presentation starts at Questions from group # 1 Run and manage Docker containers - EC2 Container Service 17:30 3,4,2 2 Monitor cloud resources and applications - CloudWatch 17:50 6, 5, 1 3 Geographically distributed web caches (Content Delivery Network) - CloudFront 18:10 4, 2, 5 Break 18:30 4 Capture, store and distribute real-time data streams - Kinesis 18:35 2, 6, 3 5 Scalable file storage - S3 18:55 1, 3, 6 6 Push notification service (email, SMS, mobile push) - SNS 19:15 5, 1, 4 7 Cloud Computing Cloud Services Workshop Academic year 2014/15 (C) 2015 Marcel Graf
Amazon CloudFront content delivery network Amin Amini, Jacky Casas, Simone Cogno
Introduction Amazon CloudFront Un service Web de diffusion de contenu Permettre aux développeurs et aux entreprises de distribuer facilement du contenu aux utilisateurs finaux Caractéristiques Faible latence Vitesse de transfert de données élevée Sans aucun engagement minimum en matière d'utilisation
Amazon CloudFront Amazon CloudFront Amazon CloudFront possède une interface de services Web simple Le contenu est organisé en distributions Une distribution définit l'emplacement de la version d'origine des fichiers Télécharger le contenu en utilisant les protocoles HTTP ou HTTPS Diffuser le contenu à l'aide du protocole RTMP Utilisation d'amazon CloudFront Stocker les versions originales des fichiers sur un serveur d origine Créer une distribution afin d'enregistrer le serveur d'origine auprès d'amazon CloudFront via un simple appel d'api ou via AWS Management Console Utilisez votre nom de domaine de distribution dans vos pages Web ou application
Architecture
Cache Patterns pour l extension des fichiers ou de chemin URL Durée d expiration minimum Geo targeting Information sur la position des requêtes Low TTLs Fréquence de mise à jour des éléments stockés en cache Origin servers Plusieurs types du serveurs d origine: Amazon S3 Amazon EC2 Elastic Load Balancer Serveur privé Fonctionnalités
E-Commerce/Travel Recherche Browser Recommandations and personnalisations Geo targeting Différents contenus en se basant sur la région de l utilisateur Local/Weather Informations sur le temps en cache Social Media Use case Contenu des images, profils, amis et préférences beaucoup de requêtes vers le serveur d origine
Mise en place du service Cloud Front S3
Démonstration Serveur web localhost simple page HTML qui charge des images Instance EC2 située en Californie contient des images Distribution CloudFront à partir d un stockage S3 contient des images
Démonstration
Démonstration
Démonstration
Thanks a lot for your attention Any questions? Simone Cogno Amin Amini Jacky Casas
HES-SO MSE Questions for group 3 Group 1 Question - Comment cela marche avec le contenu dynamique (fonction de recherche, zone membre,...) - Quel est le délai à attendre pour que le cache soit actualisé? - Si le site principal est mort, est ce que Amazon garde son cache, ou le supprime? 4 - Quelle différence avec S3? - Support de SSL? - Haute disponibilité = SLA? 5 How does CloudFront improve (speed up) dynamic content delivery? 8 Cloud Computing Cloud Services Workshop Academic year 2014/15 (C) 2015 Marcel Graf
HES-SO MSE Workshop plan # Topic Presentation starts at Questions from group # 1 Run and manage Docker containers - EC2 Container Service 17:30 3,4,2 2 Monitor cloud resources and applications - CloudWatch 17:50 6, 5, 1 3 Geographically distributed web caches (Content Delivery Network) - CloudFront 18:10 4, 2, 5 Break 18:30 4 Capture, store and distribute real-time data streams - Kinesis 18:35 2, 6, 3 5 Scalable file storage - S3 18:55 1, 3, 6 6 Push notification service (email, SMS, mobile push) - SNS 19:15 5, 1, 4 9 Cloud Computing Cloud Services Workshop Academic year 2014/15 (C) 2015 Marcel Graf
Amazon Web Services Kinesis Alexandre Perez & Johan Chavaillaz
Concept Récupération et mise à disposition de flux de données Centaines de milliers de sources de données Ajout de nos différents consommateurs Données disponible 24h
Éléments clés Partition Unité de débit 1000 ajouts / seconde (max. 1Mo/s) 5 lectures / seconde (max. 2Mo/s) Repartitionnement dynamique Enregistrement Numéro de séquence (unique) Clé de partition Données 50Ko max.
Éléments clés Clé de partition Acheminer les données vers une partition Soit automatique Soit spécifié par le producteur P. ex. séparer les données par type
Principes
Prix - USA Est $0.015 par partition et par heure $0.028 par million d ajouts
Cas pratique Analyse en temps réel Levé d alerte sur certains événements Énormément de sources (mobile)
Merci de votre attention Question?
HES-SO MSE Questions for group 4 Group Question 1 - Comment on accède aux données ensuite? Via FTP? Avec leur propre API? - Quel doit être le format des données à envoyer? On envoie des chaînes de caractères, des fichiers,...? 3 Quelles sont les limites de throughput d Amazon Kinesis stream (min et max)? 6 Où est-ce que les applications kinesis tournent (machines,...) et est-ce que le système adapte le nombre d'instances en fonction des flux? 10 Cloud Computing Cloud Services Workshop Academic year 2014/15 (C) 2015 Marcel Graf
HES-SO MSE Workshop plan # Topic Presentation starts at Questions from group # 1 Run and manage Docker containers - EC2 Container Service 17:30 3,4,2 2 Monitor cloud resources and applications - CloudWatch 17:50 6, 5, 1 3 Geographically distributed web caches (Content Delivery Network) - CloudFront 18:10 4, 2, 5 Break 18:30 4 Capture, store and distribute real-time data streams - Kinesis 18:35 2, 6, 3 5 Scalable file storage - S3 18:55 1, 3, 6 6 Push notification service (email, SMS, mobile push) - SNS 19:15 5, 1, 4 11 Cloud Computing Cloud Services Workshop Academic year 2014/15 (C) 2015 Marcel Graf
Amazon S3 Vincenzo Do, Olivier Belli
Index Introduction Object Storage Benefits Costs Use Cases General Recommendations Demo
Introduction Amazon S3 : Simple Storage Service Online File Storage Web Service provided via a REST or SOAP API (SOAP deprecated) or via AWS console In US from 2006, EU from 2007 Object Storage (Used to store: Photo, Songs ) Designed to make web-scale computing easier for developers Notable users : reddit (site hosting), Dropbox (files), Thumblr (picture hosting) etc.
Object Storage Object Storage vs Block Storage 3 key elements o Data o Metadata o Unique identifier (bucket name & path on S3) Buckets (object container) Access via http => o https://s3.amazonaws.com/bucketname/path/to/file o https://bucketname.s3.amazonaws.com/path/to/file Manage permissions on objects Object size : 1 byte -> 5TB
Benefits Durability: 99.999999999% Availability: 99.99% Security: SSL plus ACL using IAM Low Cost: Pay for storage and requests Very high scalability Accessible from anywhere
Costs Using Amazon Simple Monthly Calculator
Use Cases Content distribution Backup and Archiving Big Data Analytics Disaster Recovery
General recommendations Use S3 when you are in need of: More bandwidth Scalability Back up your data online Retrieve your files from everywhere
Demo
Useful/interesting links http://docs.aws.amazon.com/amazons3/latest/dev/ Welcome.html http://en.wikipedia.org/wiki/amazon_s3 http://www.datacenterknowledge.com/archives/2013/10/23/ how-dropbox-stores-stuff-for-200-million-users/
HES-SO MSE Questions for group 5 Group Question 2 Quelle alternative il y aurait-il face à Amazon S3? 3 Comment sauvegarder des données sur S3 depuis une instance EC2 où tourne un site web, et comment les récupérer? 6 Les données stockés dans S3 sont-elles au bout d'un moment déplacé vers Glacier si aucune requête n'est soumise pendant une longue période? - "Espace de stockage d'objets sécurisé", des objets c'est des fichiers? - Comment on y accède ensuite? FTP? Leur propre API? 12 Cloud Computing Cloud Services Workshop Academic year 2014/15 (C) 2015 Marcel Graf
HES-SO MSE Workshop plan # Topic Presentation starts at Questions from group # 1 Run and manage Docker containers - EC2 Container Service 17:30 3,4,2 2 Monitor cloud resources and applications - CloudWatch 17:50 6, 5, 1 3 Geographically distributed web caches (Content Delivery Network) - CloudFront 18:10 4, 2, 5 Break 18:30 4 Capture, store and distribute real-time data streams - Kinesis 18:35 2, 6, 3 5 Scalable file storage - S3 18:55 1, 3, 6 6 Push notification service (email, SMS, mobile push) - SNS 19:15 5, 1, 4 13 Cloud Computing Cloud Services Workshop Academic year 2014/15 (C) 2015 Marcel Graf
Push notification service Monney, Piller, Rossier
Plan Introduction Fonctionnement Tarifications Démo Conclusion
Introduction Rôle Communiquer/Informer des utilisateurs lorsque des événements surviennent Support Email SMS (USA) Notification Mobile Push (Apple, Google, Windows, Fire OS) HTTP/HTTPS Certains services Amazon Android en Chine via Baidu Cloud Push
Schéma de fonctionnement
Ajout des endpoints
Interactions avec SNS Via console Amazon Via API Amazon Java, PHP, Python,...
Envoi de notifications
Tarification
Tarification
Démo
Conclusion Regroupement des services de notifications Utile lorsque plusieurs services sont utilisés Relativement bon marché
HES-SO MSE Questions for group 6 Group Question 2 Comment Amazon arrive-t-il à faire profit étant donné le faible coût des notifications? 4 - Temps d acheminement? - Si déconnecté, acheminement même après? - Applicable pour remplacer Google Cloud Messaging par exemple pour app Android? 5 What s the default TTL of a message? - Ce sont de simples notifications dans le téléphone, ou qui s'affichent dans l'application? - On peut mettre des images ou c'est uniquement du texte? 14 Cloud Computing Cloud Services Workshop Academic year 2014/15 (C) 2015 Marcel Graf