Google Cloud Platform
Developer Qualification Workshop
CP300A
Cost: $ 2995
Course Length: 5 days
Summary
This 5 day instructor-led class prepares you to develop applications for Google Cloud Platform. Using a combination of lectures, demonstrations, and hands-on activities, you learn how to create cloud-based application environments and how to deploy and manage cloud-based applications.
Who Should Attend
This class is intended for experienced application developers who want to learn how to develop and deploy applications on Google Cloud Platform.
What You Need
Before attending this course, you should have completed CP100A: Google Cloud Platform Fundamentals, experience developing web applications, and experience developing applications using a common programming language such as Java or Python.
Learning Objectives
- Identify the value of Google Cloud Platform
- Identify the purpose and business value of the core Google Cloud Platform services
- Use Google Compute Engine features including: Instances, images, persistent disks, startup scripts, metadata, snapshots, networks, and load balancers
- Build and deploy Google App Engine applications that use caching, authentication, storage (Google Cloud Datastore), and queues
- Store and secure data using Google Cloud Storage
- Use Google Cloud SQL to store application data
- Query and analyze data using Google BigQuery
Course Agenda
Part I: Introduction to Google Cloud Platform
Module 1: Introducing Google Cloud Platform
Learning Objectives
- Explain the advantages of Google Cloud Platform
- Define the components of Google’s network infrastructure, including: points of presence, regions, and zones
Module 1 Lab: Create a Google Cloud Platform Project
Learning Objective
- Create a Google Cloud Platform project
Module 2: Google Cloud Platform Overview
Learning Objectives
- Explain the difference between infrastructure as a service (IaaS), platform as a service (PaaS), and software as a service (SaaS)
- Describe Google Cloud Platform’s pricing philosophy
Module 3: Examples of using Google Cloud Platform
Learning Objective
- Identify ways customers have used Google Cloud Platform to improve their businesses
- Module 3 Lab: Sign Up for a Google Cloud Platform Account
- Learning Objective
- Sign up for a Google Cloud Platform account
Module 4: Google Cloud Platform Endpoints and Services
Learning Objective
- Explain the value of the Google Cloud Platform services for compute, big data, storage, networking and management, and applications
Module 5: Interacting with GCP
Learning Objective
- Explain the methods of interacting with Google Cloud Platform, including: the Google Developers Console, the service APIs and API Client Libraries, and the Cloud SDK
Module 5 Lab: Install the Cloud SDK
Learning Objective
- Install the Google Cloud SDK on your machine
Module 6: Support and Resources
- Learning Objectives
- Identify the Google Cloud Platform partner options: service partners, technology partners, and training partners
- List options available for staying up-to-date on Google Cloud Platform: the Google Cloud Platform blog, Google Next, Google I/O, and the Google Cloud Platform newsletter
- Describe the support options available for Google Cloud Platform: Google Support and Google on Stack Overflow
- Explain the support options available for products at each point in the lifecycle: alpha, beta, generally available, and deprecated
Part II: Google Compute Engine
Module 1: Introducing Google Compute Engine
Learning Objectives
- Explain the role of Compute Engine in the computing continuum
- Identify the business value and use cases for Compute Engine
Module 2: Interacting with Google Compute Engine
Learning Objectives
- Explain the methods of interacting with Google Compute Engine, including: the Google Developers Console, the service APIs, and the Cloud SDK
- Identify the monitoring options for Compute Engine resources
Module 2 Lab: Interacting with Google Compute Engine
Learning Objective
- Configure the Cloud SDK for Compute Engine
Module 3: Instances
Learning Objectives
- Define the concept of a Compute Engine instance
- List and define instance states
- Explain how to create an instance and connect to it using SSH
Module 3 Lab: Creating Compute Engine Instances
Learning Objectives
- Start and shut down Google Compute Engine instances
- Connect to and customize Google Compute Engine instances
Module 4: Disks
Learning Objectives
- Explain the purpose of boot disks and persistent disks
- Contrast standard disks with solid-state drives (SSD)
- Define the process for mounting a persistent disk
Module 4 Lab: Creating and Attaching Disks
Learning Objectives
- Create a disk resource
- Attaching a disk to an instance
- Format and mount the disk using the command-line utility
Module 5: Images
Learning Objectives
- Explain the concepts of public and private images
- Define the process of creating a custom image
- Explain how to share a Compute Engine image
Module 5 Lab: Creating Custom Images
Learning Objectives
- Create instances using a Compute Engine image
- Install software on an instance using the Docker platform
- Create an image using a persistent disk
- Create an instance based on a custom image
Module 6: Snapshots
Learning Objectives
- Explain the purpose of and use cases for disk snapshots
- Define the process of creating snapshots and using them to restore disks
- Explain the process of moving an instance using snapshots
Module 6 Lab: Working with Snapshots
Learning Objectives
- Use snapshots to migrate a disk resource across zones
- Use snapshots to change a disk to a solid-state drive (SSD)
- Modify a persistent disk before taking a snapshot
Module 7: Networks
Learning Objectives
- Explain the process of creating networks and firewall rules
- Contrast public and private IP addresses
- Define basic networking concepts, including: proxies, VPNs, and routing
Module 7 Lab: Working with Networks and IP Addresses
Learning Objectives
- Create networks and firewall rules
- Reserve IP addresses
Module 8: Authorization
Learning Objectives
- Configure authorization requests to Compute Engine
- Use service accounts to configure access to Compute Engine
- Explain the concept of authorization scopes
Module 8 Lab: Authorizing Requests from Compute Engine
Learning Objectives
- Create a Compute Engine instance that uses a service account to making read only calls to the Compute Engine API
- Install the Google API Client Libraries for Python
- Use a Python program to download a service account token that allows your instance to make Compute Engine API requests
Module 9: Metadata
Learning Objectives
- Explain the concepts of instance and project metadata
- Set and query metadata
- Identify use cases for metadata
Module 9 Lab: Project and Instance Metadata
Learning Objectives
- Set custom metadata for projects and instances
- Query metadata endpoints for projects and instances
- List custom metadata associated with an instance
- Query instance metadata
Module 10: Startup scripts
Learning Objectives
- Identify how to use startup and shutdown scripts
- Use startup scripts with metadata
- Explain the role of startup scripts in configuration management
Module 10 Lab: Getting Started with Startup Scripts
Learning Objectives
- Use a startup script when creating an instance
- Monitor the progress of your startup script and examine the results
- Manually run a startup script
Module 11: Network Load Balancing
Learning Objectives
- Explain the concepts of network and HTTP load balancing
- Identify the differences between network and HTTP loan balancing
- Explain the process of configuring HTTP and network load balancing
Part III: Google App Engine and Google Cloud Datastore
Module 1: Introducing Google App Engine
Learning Objectives
- Identify the business value and use cases for App Engine
- Explain how to create App Engine applications that are scalable, reliable, and cost effective
- Identify the components of the App Engine architecture
Module 2: Google App Engine Fundamentals
Learning Objectives
- Explain the architecture of App Engine instances
- Define the three types of application scaling: manual, basic, and automatic
- Explain the process of changing application scaling settings
Module 2 Lab: App Engine Fundamentals
Learning Objectives
- Configure, deploy, and verify an App Engine sample application
- Examine an application using the project dashboard
Module 3: Building and Managing Your Application
Learning Objectives
- Identify the impact of App Engine quotas on your applications
- Manage application deployment using versioning
Module 3 Lab: Building and Managing Your Application
Learning Objectives
- Configure, deploy, and verify an App Engine sample application
- Change and test application scaling settings
Module 4: Authenticating Users
Learning Objectives
- Explain the options for authenticating users in App Engine applications
- Identify methods of restricting access to applications
- Explain the options for authorizing access to applications
Module 4 Lab: Authenticating Users
Learning Objectives
- Configure settings to restrict access to application components
- Use the User Service to configure user login and logout and to personalize the user experience
Module 5: Caching and State Management
Learning Objectives
- Explain the purpose of and use cases for edge caching
- Explain the purpose of and use cases for Memcache
- Identify the process of enabling edge caching and Memcache for applications
Module 5 Lab: Memcache
Learning Objectives
- Use the Memcache API in an App Engine application
- Use Memcache Viewer to view Memcache data
Module 6: Introducing Google Cloud Datastore
Learning Objectives
- Identify the business value and use cases for Cloud Datastore
- Define the basic Cloud Datastore components: kinds, keys, and entities
- Create and retrieve entries using Cloud Datastore
Module 6 Lab: Introduction to Cloud Datastore
Learning Objectives
- Use Cloud Datastore to store application data
- View data using the Datastore viewer
Module 7: Cloud Datastore queries and indexes
Learning Objectives
- Describe how to query application data in Cloud Datastore
- Explain how indexes function in Cloud Datastore and how to use them
Module 7 Lab: Queries and Indexes
Learning Objectives
- Query your application data in Cloud Datastore
- View indexes in Cloud Datastore
Module 8: Cloud Datastore entity groups and transactions
Learning Objectives
- Contrast eventual and strong consistency for index entries
- Explain how to use ancestor and descendant queries
- Identify the purpose of entity groups
- Explain how transactions are handled in Cloud Datastore
Module 8 Lab: Entity Groups
Learning Objectives
- Experiment with eventual and strong consistency for index entries
- Use entity groups and create ancestor queries
Module 9: Decoupling work using Queues & Scheduled Tasks
Learning Objectives
- Identify the function of pull queues, push queues, and task queues
- Explain how to use cron and scheduled tasks
- Module 9 Lab: Task Queues and Cron
- Learning Objectives
- Create, configure, and use push queues
- Setup and administer cron jobs
Part IV: Google Cloud Storage
Module 1: Introducing Google Cloud Storage
Learning Objectives
- Identify the business value and use cases for Cloud Storage
- Explain the function of the basic Cloud Storage components: buckets, objects, and endpoints
Module 2: Google Cloud Storage Components
Learning Objectives
- Explain consistency for Cloud Storage data
- Define the classes of Cloud Storage buckets: standard and durable reduced availability
- Explain object versioning and object lifecycle management
- Module 2 Lab: Getting Started with Google Cloud Storage
- Learning Objectives
- Create a bucket, add an object, and share access to bucket contents
- Configure permissions
Module 3: Interacting with Google Cloud Storage
Learning Objectives
- Explain the methods of interacting with Google Cloud Storage, including: the Google Developers Console, the service APIs, the client libraries, and the Cloud SDK
- Describe the options for uploading and importing data
- Explain the function of composite objects
Module 3 Lab: gsutil
Learning Objectives
- Use gsutil to create and list buckets
- Upload data to your bucket
Module 4: Access Control Lists
Learning Objectives
- Explain the purpose of access control lists
- Configure access to objects and buckets using access control lists
Module 4 Lab: Access Control Lists
Learning Objectives
- Configure a bucket with a custom access control list using gsutil
- Grant permissions to a specific users and App Engine applications using access control lists
Module 5: Signed URLs
Learning Objectives
- Explain the purpose of a signed URL
- Explain the process of creating a signed URL
Module 5 Lab: Signed URLs
Learning Objectives
- Add an object to a Cloud Storage bucket
- Configure an access control list for your bucket
- Created a signed URL using gsutil
- Access your bucket using the signed URL
Module 6: Website hosting
Learning Objectives
- Explain the purpose of hosting static web content in Cloud Storage
- Define the process of configuring a bucket to host web content
- Explain the role of cross origin resource sharing in hosting web content in Cloud Storage
Module 7: Object Change Notification
Learning Objectives
- Explain the purpose of object change notifications in Cloud Storage
- Explain the process of configuring object change notifications
Part V: Google Cloud SQL
Module 1: Introducing Google Cloud SQL
Learning Objective
- Identify the business value and use cases for Cloud SQL
Module 2: Database administration
Learning Objectives
- Describe the administrative tasks managed by Cloud SQL and identify tasks available to customers
- Explain the replication configurations for Cloud SQL
- Explain the import and export options available for Cloud SQL data
Module 3: Interacting with Cloud SQL
Learning Objectives
- Explain the methods of interacting with Google Cloud SQL, including: the Google Developers Console, the service APIs, and the Cloud SDK
- Explain how to create a secure connection to Cloud SQL
Module 3 Lab 1: Interacting with Cloud SQL
Learning Objectives
- Create and configure a Cloud SQL instance
- Change Cloud SQL settings using the command line
Module 3 Lab 2: Remote SSL Encrypted Connection
Learning Objectives
- Create and configure a Cloud SQL instances and install MySQL client software
- Configure an SSL connection between your instances
Module 4: Using Your Instances from Google App Engine
Learning Objectives
- Explain the process of accessing Cloud SQL from App Engine
- Describe how to use the Cloud SQL APIs in App Engine applications
Module 4 Lab: Accessing Cloud SQL from App Engine
Learning Objective
- Configure an App Engine application to access Cloud SQL
Module 5: Using Your Instances from Google Compute Engine
Learning Objective
- Explain the process of accessing Cloud SQL from Compute Engine