Google Cloud Workshop

              RHANIZAR Abdekhakim
                 10 novembre, 2012
                       GTUG RABAT
Sommaire
•   Cloud Computing
•   Google App Engine
•   Atelier I
•   Google Cloud Storage
•   Atelier II
About me
• RHANIZAR Abdelhakim
• Software Engineer



 a.rhanizar@gmail.com
 @a_rhanizar
Flashback - Electricité




     Dans le passé        Aujourd’hui
IT – Cloud Computing




     Aujourd’hui       Demain
Modèles de service
Le Cloud Computing en chiffres

•   Plus de 4 millions d'entreprises utilisent Google Apps
•   AWS S3: 650 000 requêtes par seconde
•   905 milliards objets stockés chez Amazon
•   Un marché de $40,7 milliards en 2011
•   Evolution à $241 milliards en 2020 selon Forrester
•   12 milliards $ d’économie du budget gouvernement au US
•   14 millions nouveau job worldwide entre 2011 et 2015 (IDC)
Success Stories du Cloud




                 Pourquoi pas vous?
Google App Engine (GAE)

•   PaaS pour développer et héberger des applications web
•   Support des langages Python , Java      ,Go     …
•   Scalabilité automatique!
•   SLA de 99.95%
•   Pay as You Go ( Free quotas )
GAE: services
GAE: Stockage de données
•   App Engine Datastore
•   Google Cloud SQL
•   Google Cloud Storage
•   Chez vous! (Secure Data Connector)
GAE: Console
GAE: Performance (Appstats)
GAE: Outils
 • Google Plugin for Eclipse
Atelier I
Application: gestion de participants

Pré-requis:

    • Java 6+
    • Eclipse EE
    • Google App Engine SDK
    • Google Plugin for Eclipse
    • Compte Gmail
Atelier I: TODO
•   Activez App Engine lié à votre compte Gmail https://appengine.google.com
•   Créez une nouvelle application après avoir saisi le code de validation reçu par SMS/voix!
     https://dl.dropbox.com/u/10757954/create_first_app_engine.png
•   Créez un nouveau projet Google depuis Eclipse
    https://dl.dropbox.com/u/10757954/eclipse_app_engine.png
•   Développez une Servlet qui prend en paramètre l’email d’un participant et retourne un
    OK/KO en fonction de sa confirmation de présence
•   La Servlet doit permettre aussi, la confirmation de la présence d’un participant
•   Utilisez le service Memcache pour « persister » les données de votre application
    https://developers.google.com/appengine/docs/java/memcache/overview
•   Déployez votre application vers le Cloud!
•   Ecrivez une tache planifiée(Cron) qui relance par mail les participants qui n’ont pas confirmé
    leur présence tous les dimanches à minuit
     https://developers.google.com/appengine/docs/java/config/cron#The_Schedule_Format
    https://developers.google.com/appengine/docs/java/mail/overview
Google Cloud Storage(GCS)

•   Vos données dans l’infrastructure de stockage de Google
•   Haute disponibilité
•   Vitesse d’accès
•   Scalabilité automatique!
•   Capacité de stockage illimitée
•   CDN-like
GCS: Détails techniques

•   RESTful API (GET, PUT, POST, DELETE,…)
•   Objects: 100 GB/ objet
•   Buckets: conteneurs d’objets
•   ACL: private, shared, public
•   Intégration avec App Engine
•   Utilitaires: synchronisation, transfert(gsutil)
Cloud Storage Manager
GCS: Cas d’utilisation

• Contenu statique: html, images, music, vidéo
• Buckup et recovery: données personnelles, dump
• Backend de stockage des applications (App Engine,
  Android …)
Prix
Monthly Usage                            Price (per GB per month)
First 0 - 1TB                            $0.12

Next 9TB                                 $0.105

Next 90TB                                $0.095

Next 400TB                               $0.085




PUT, POST, GET bucket**,                                   DELETE Requests
                             GET, HEAD Requests
GET service** Requests
                             (per 10,000 requests/month)
(per 1,000 requests/month)

$0.01                        $0.01                         Free



Billing required !
Atelier II
Utiliser GCS comme backend de stockage de l’application I

           Pré-requis:

               • Application de l’atelier I
               • Service Cloud Storage actif (Billing actif)
Atelier II: TODO
•   Utilisez un fichier stocké dans le service Cloud Storage pour persister les participants au lieu
    du service Memcache
•   https://developers.google.com/appengine/docs/java/googlestorage/overview
Merci de votre attention

       Slides: http://bit.ly/XrgEc6
       Contact: a.rhanizar@gmail.com

Google Cloud Workshop

  • 1.
    Google Cloud Workshop RHANIZAR Abdekhakim 10 novembre, 2012 GTUG RABAT
  • 2.
    Sommaire • Cloud Computing • Google App Engine • Atelier I • Google Cloud Storage • Atelier II
  • 3.
    About me • RHANIZARAbdelhakim • Software Engineer a.rhanizar@gmail.com @a_rhanizar
  • 4.
    Flashback - Electricité Dans le passé Aujourd’hui
  • 5.
    IT – CloudComputing Aujourd’hui Demain
  • 6.
  • 7.
    Le Cloud Computingen chiffres • Plus de 4 millions d'entreprises utilisent Google Apps • AWS S3: 650 000 requêtes par seconde • 905 milliards objets stockés chez Amazon • Un marché de $40,7 milliards en 2011 • Evolution à $241 milliards en 2020 selon Forrester • 12 milliards $ d’économie du budget gouvernement au US • 14 millions nouveau job worldwide entre 2011 et 2015 (IDC)
  • 8.
    Success Stories duCloud Pourquoi pas vous?
  • 9.
    Google App Engine(GAE) • PaaS pour développer et héberger des applications web • Support des langages Python , Java ,Go … • Scalabilité automatique! • SLA de 99.95% • Pay as You Go ( Free quotas )
  • 10.
  • 11.
    GAE: Stockage dedonnées • App Engine Datastore • Google Cloud SQL • Google Cloud Storage • Chez vous! (Secure Data Connector)
  • 12.
  • 13.
  • 14.
    GAE: Outils •Google Plugin for Eclipse
  • 15.
    Atelier I Application: gestionde participants Pré-requis: • Java 6+ • Eclipse EE • Google App Engine SDK • Google Plugin for Eclipse • Compte Gmail
  • 16.
    Atelier I: TODO • Activez App Engine lié à votre compte Gmail https://appengine.google.com • Créez une nouvelle application après avoir saisi le code de validation reçu par SMS/voix! https://dl.dropbox.com/u/10757954/create_first_app_engine.png • Créez un nouveau projet Google depuis Eclipse https://dl.dropbox.com/u/10757954/eclipse_app_engine.png • Développez une Servlet qui prend en paramètre l’email d’un participant et retourne un OK/KO en fonction de sa confirmation de présence • La Servlet doit permettre aussi, la confirmation de la présence d’un participant • Utilisez le service Memcache pour « persister » les données de votre application https://developers.google.com/appengine/docs/java/memcache/overview • Déployez votre application vers le Cloud! • Ecrivez une tache planifiée(Cron) qui relance par mail les participants qui n’ont pas confirmé leur présence tous les dimanches à minuit https://developers.google.com/appengine/docs/java/config/cron#The_Schedule_Format https://developers.google.com/appengine/docs/java/mail/overview
  • 17.
    Google Cloud Storage(GCS) • Vos données dans l’infrastructure de stockage de Google • Haute disponibilité • Vitesse d’accès • Scalabilité automatique! • Capacité de stockage illimitée • CDN-like
  • 18.
    GCS: Détails techniques • RESTful API (GET, PUT, POST, DELETE,…) • Objects: 100 GB/ objet • Buckets: conteneurs d’objets • ACL: private, shared, public • Intégration avec App Engine • Utilitaires: synchronisation, transfert(gsutil)
  • 19.
  • 20.
    GCS: Cas d’utilisation •Contenu statique: html, images, music, vidéo • Buckup et recovery: données personnelles, dump • Backend de stockage des applications (App Engine, Android …)
  • 21.
    Prix Monthly Usage Price (per GB per month) First 0 - 1TB $0.12 Next 9TB $0.105 Next 90TB $0.095 Next 400TB $0.085 PUT, POST, GET bucket**, DELETE Requests GET, HEAD Requests GET service** Requests (per 10,000 requests/month) (per 1,000 requests/month) $0.01 $0.01 Free Billing required !
  • 22.
    Atelier II Utiliser GCScomme backend de stockage de l’application I Pré-requis: • Application de l’atelier I • Service Cloud Storage actif (Billing actif)
  • 23.
    Atelier II: TODO • Utilisez un fichier stocké dans le service Cloud Storage pour persister les participants au lieu du service Memcache • https://developers.google.com/appengine/docs/java/googlestorage/overview
  • 24.
    Merci de votreattention Slides: http://bit.ly/XrgEc6 Contact: a.rhanizar@gmail.com