This two-day instructor-led class equips students to build highly reliable and efficient Google Cloud solutions using proven design patterns. It is a continuation of the Architecting with Google Compute Engine or Architecting with Google Kubernetes Engine courses, and supposes a practical experience with the technologies covered in any of these courses.
Through a combination of presentations, design activities, and hands-on labs, participants learn to define and balance business and technical requirements to design highly reliable, highly available, secure, and cost-effective Google Cloud deployments.
Objectives
In this course, participants will learn the following skills:
- Apply a set of question tools, techniques, and design considerations.
- Define the application requirements and express them objectively as KPI, SLO and SLI
- Decompose application requirements to find the correct microservice limits
- Leverage Google Cloud development tools to configure modern, automated deployment channels
- Choosing the right cloud storage services based on application requirements
- Architect cloud and hybrid networks
- Deploy reliable, scalable, and resilient applications that balance key performance metrics with cost
- Choosing the right Google Cloud deployment services for your apps
- Protect applications, data and infrastructure in the cloud
- Monitor service level goals and costs using Google Cloud tools
Audience
This class is aimed at the following audience:
- Cloud solution architects, site reliability engineers, systems operations professionals, DevOps engineers, IT managers
- Have completed Architecting with Google Compute Engine, Architecting with Google Kubernetes Engine, or have equivalent experience
- People who use Google Cloud to create new solutions or to integrate existing systems, application environments and infrastructure
Prerrequisites
To fully benefit from this course, participants must comply with the following criteria:
- Have completed Architecting with Google Compute Engine, Architecting with Google Kubernetes Engine, or have equivalent experience
- Have basic proficiency with command line tools and Linux operating system environments
- Have experience in systems operations, including application deployment and management, either on-premises or in a public cloud environment
Duration
16 hours (2 days)
Investment
Check the next open public class in our enrollment page.
If you are interested in a private training class for your company, contact us.
Course Outline
The course includes presentations, demonstrations, and hands-on labs.
- Describe users in terms of roles and personas
- Write qualitative requirements with user stories
- Write quantitative requirements using key performance indicators (KPIs)
- Evaluate KPIs using SLOs and SLIs
- Determine the quality of application requirements using SMART
criteria
- Decompose monolithic applications into microservices
- Recognize appropriate microservice boundaries
- Architect stateful and stateless services to optimize scalability
and reliability - Implement services using 12-factor best practices
- Build loosely coupled services by implementing a well-designed REST architecture
- Design consistent, standard RESTful service APIs
- Automate service deployment using CI/CD pipelines
- Leverage Cloud Source Repositories for source and version control
- Automate builds with Cloud Build and build triggers
- Manage container images with Google Container Registry
- Create infrastructure with code using Deployment Manager and
Terraform
- Choose the appropriate Google Cloud data storage service based
on use case, durability, availability, scalability and cost - Store binary data with Cloud Storage
- Store relational data using Cloud SQL and Spanner
- Store NoSQL data using Firestore and Cloud Bigtable
- Cache data for fast access using Memorystore
- Build a data warehouse using BigQuery
- Design VPC networks to optimize for cost, security, and
performance - Configure global and regional load balancers to provide access to services
- Leverage Cloud CDN to provide lower latency and decrease
network egress - Evaluate network architecture using the Cloud Network
Intelligence Center - Connect networks using peering and VPNs
- Create hybrid networks between Google Cloud and on-premises
data centers using Cloud Interconnect
- Choose the appropriate Google Cloud deployment service for your applications
- Configure scalable, resilient infrastructure using Instance
Templates and Groups - Orchestrate microservice deployments using Kubernetes and GKE
- Leverage App Engine for a completely automated platform as a service (PaaS)
- Create serverless applications using Cloud Functions
- Design services to meet requirements for availability, durability, and scalability
- Implement fault-tolerant systems by avoiding single points of failure, correlated failures, and cascading failures
- Avoid overload failures with the circuit breaker and truncated
exponential backoff design patterns - Design resilient data storage with lazy deletion
- Analyze disaster scenarios and plan for disaster recovery using
cost/risk analysis
- Design secure systems using best practices like separation of concerns, principle of least privilege, and regular audits
- Leverage Cloud Security Command Center to help identify vulnerabilities
- Simplify cloud governance using organizational policies and folders
- Secure people using IAM roles, Identity-Aware Proxy, and Identity Platform
- Manage the access and authorization of resources by machines and processes using service accounts
- Secure networks with private IPs, firewalls, and Private Google Access
- Mitigate DDoS attacks by leveraging Cloud DNS and Cloud Armor
- Manage new service versions using rolling updates, blue/green deployments, and canary releases
- Forecast, monitor, and optimize service cost using the Google Cloud pricing calculator and billing reports and by analyzing billing data
- Observe whether your services are meeting their SLOs using Cloud Monitoring and Dashboards
- Use Uptime Checks to determine service availability
- Respond to service outages using Cloud Monitoring Alerts