GCP Interview Questions Lecture

Jul 10, 2024

GCP Interview Questions Lecture Notes

Introduction

  • Presenter: Aman from Medical
  • Topic: GCP Interview Questions
  • Audience: Candidates preparing for various GCP job roles (Cloud Engineer, Cloud Developer, Customer Engineer, Administrator, etc.)

Agenda

  1. General cloud computing and Google Cloud Platform (GCP) questions
  2. Questions on different GCP service domains:
    • Compute and Hosting
    • Storage and Databases
    • Networking
    • Big Data, Machine Learning, Cloud AI
  3. Skills required to become a Cloud Engineer
  4. GCP Certification

General Cloud Computing Questions

What is Cloud?

  • Refers to a global network of servers with unique functions
  • Designed to store/manage data, run applications, deliver content
  • Located in data centers worldwide
  • Services: Compute, Storage, Databases, Networking, etc.

What is Cloud Computing?

  • On-demand availability of computer system resources
  • Includes computing power, storage, databases, etc.
  • Benefits: No need to own/maintain physical data centers and servers
  • Uses: Data backup, disaster recovery, virtual desktops, software development, big data analytics, customer-facing web applications

Types of Service Models

  1. IaaS (Infrastructure as a Service): Rent IT infrastructure (servers, VMs, storage, networks, OS)
  2. PaaS (Platform as a Service): Provides environment for developing, testing, delivering, and managing applications
  3. SaaS (Software as a Service): Cloud providers lease applications/software to clients

Types of Cloud Deployment Models

  1. Public Cloud: Resources available to the general public over the internet
  2. Private Cloud: Operated solely for a single organization
  3. Hybrid Cloud: Combination of public and private clouds
  4. Community Cloud: Shared infrastructure between organizations with common concerns (e.g., educational institutions)

Benefits of Cloud Computing

  • Reduced cost of managing IT infrastructure
  • Scalability of resources
  • Improved productivity and collaboration
  • Data backup and storage
  • Automatic updates from cloud service providers

What is Eucalyptus?

  • Elastic Utility Computing Architecture for Linking Your Programs to Useful Systems
  • Open-source software infrastructure
  • Builds public, hybrid, private clouds
  • Can create data centers into a private cloud

Google Cloud Platform (GCP) Questions

What is Google Cloud Platform?

  • Suite of cloud computing services/tools by Google
  • Runs on Google’s internal cloud infrastructure

Services Offered by GCP

  • Compute Services
  • Storage and Databases
  • Networking Services
  • Big Data Services
  • Identity and Security Services
  • Internet of Things (IoT) Services
  • Machine Learning and Cloud AI Services

What is Google Cloud SDK?

  • Set of command-line tools for GCP development
  • Access to Compute Engine, Cloud Storage, BigQuery, etc.

What is Google Cloud API?

  • Programmatic interface to GCP services
  • Allows integration of computing, networking, storage, and machine learning capabilities

Why Prefer GCP Over Other Cloud Providers?

  • Better pricing model
  • Increased performance and service
  • Quick updates on servers and security
  • Excellent security level

What are Projects in GCP?

  • Projects organize GCP resources
  • Consist of users, APIs, billing, authentication, and monitoring settings
  • Creation: Google Cloud Platform Console -> Project -> New Project

What is Cloud Shell?

  • Online development/operational environment accessible via browser
  • Manage resources with pre-loaded utilities
  • Develop, build, debug, and deploy cloud-based applications

Availability Zones and Regions in GCP

  • Region: Geographical location for resources
  • Availability Zones: Isolated locations within regions
  • GCP: 25 regions, 76 zones
  • Choosing zone/region factors: Latency, Cost

Compute and Hosting Services in GCP

What is Google Compute Engine?

  • Secure and customizable compute service for VMs

What is Google App Engine?

  • Fully managed, serverless platform for web applications
  • Automatically manages servers/scaling

What is Serverless Computing?

  • Cloud provider allocates machine resources on-demand
  • Customer focuses on building applications

Difference Between Google App Engine and Google Compute Engine

  • Compute Engine: IaaS, customizable infrastructure
  • App Engine: PaaS, managed environment emphasizes application development

GCP Pricing Model

  • Based on compute instances, network use, and storage
  • VMs charged per second (min. 1 minute)
  • Storage based on data amount
  • Network charges for data transmission

What is Google Kubernetes Engine?

  • Managed environment for deploying, managing, scaling containerized applications

Application Deployment in GCP

  • Depends on application requirements:
    • Compute Engine for custom VMs
    • Kubernetes Engine for containerized apps
    • App Engine for managed, scalable environments
    • Cloud Functions for event-driven functions

Migrating Servers/VMs to Compute Engine

  • Use Cloud Migrate for Compute Engine (free software by Google)

Why Choose Google Cloud Hosting?

  • Benefits: Better pricing, live VM migration, enhanced performance, security, redundant backup

What are Shielded VMs?

  • VMs hardened with security controls against threats (e.g., malicious insiders, guest firmware attacks)

Storage and Database Services in GCP

What is Cloud Storage?

  • Primary storage service for objects (files of any format)
  • Bucket: Container for objects, controls access, defines geographical location

Types of GCP Storage

  • Google Drive: Personal file storage, management, and sharing
  • Cloud Storage for Firebase: Mobile app data management
  • Persistent Disk: Block storage for Compute Engine VMs
  • Filestore: File-based storage for workloads

What is Object Versioning?

  • Retrieve overwritten/deleted objects
  • Increases storage cost, provides data security

Libraries and Tools for Cloud Storage

  • Console: Google Cloud Console for visual management
  • Gsutil: Command-line tool for terminal interactions
  • Client Libraries: Manage data using supported languages (C++, Java, Python, etc.)
  • REST APIs: JSON/XML APIs for managing data

Maximizing Data Availability

  • Store data in multi-region or dual-region bucket locations for high availability

What is Cloud SQL?

  • Fully managed relational database service
  • Supports MySQL, PostgreSQL, SQL Server

Choosing the Right Google Cloud Database Service

  • Cloud SQL: For relational databases up to 10 TB
  • Cloud Spanner: For large data with transactional consistency
  • Firestore/Datastore: For application development, live sync, offline support
  • Bigtable: For large single key data with low latency
  • MemoryStore: For transactional latency focus

App Engine Accessing Cloud SQL in Different Region

  • Yes, with potential latency increase due to geographical distance

Importing/Exporting Databases

  • MySQL: Single or multiple databases
  • PostgreSQL: Only specific databases

Networking in GCP

What is Google Cloud VPC?

  • Virtual network providing connectivity for VMs and other resources

Difference Between Google VPC and Other Providers

  • Traditional VPC: Region-specific, VMs connect via VPC gateway
  • Google VPC: Global construct, VMs communicate directly across regions

What are Routes and Firewall Rules?

  • Routes: Define VM instance traffic pathways
  • Firewall Rules: Control packet travel to/from VM instances

What is Load Balancing?

  • Distributing computing resources/workload
  • Reduces performance issues, ensures content delivery proximity
  • Software-defined managed service, not hardware-based

What is Cloud DNS?

  • High performance, resilient global DNS service
  • Translates domains to IP addresses for easier communication between computers

Connecting Existing Network to GCP Resources

  • Four options:
    • Cloud Interconnect: Connect VPC network via low latency connection
    • Cloud VPN: Connect VPC network via IPsec connection
    • Direct Peering: Exchange traffic between business network and Google
    • Carrier Peering: Connect to Google’s network edge via service providers

Security in GCP

Security Aspects in Cloud

  • Access Control: Admin-controlled user access
  • Identity Management: Authorization for applications/services
  • Authorization and Authentication: Controlled user access to applications/data

GCP Security Services

  • Cloud Security Command Center: Monitors assets, detects vulnerabilities, reviews access permissions
  • Cloud Armor: DDoS and application defense system
  • Cloud Identity: Defines user and resource access

Other GCP Services

What is Google BigQuery?

  • Fully managed, petabyte-scale analytics data warehouse
  • Organizes data into datasets for analytics

Big Data Services in GCP

  • Google Cloud BigQuery
  • Google Cloud Dataflow
  • Google Cloud Dataproc
  • Google Cloud Pub/Sub
  • Google Cloud Composer
  • Google Cloud Datacatalog

What is Google Cloud Dataflow?

  • Managed service for a wide range of data processing patterns (batch/streaming)

What is Cloud AutoML?

  • Enables developers with limited ML expertise to train high-quality models
  • Creates custom ML models tailored to business needs

What is Google Cloud AI Platform?

  • Suite of services for building, deploying, managing ML models
  • Integrated tools: BigQuery, Data Labeling Service

What is Cloud IoT Core?

  • Fully managed service for connecting, managing, storing data from millions of globally distributed devices

Service for Text Analytics in GCP

  • Cloud Natural Language: Analyze text, integrate with document storage, understand social media sentiments and customer conversations

Skills Required to Become a Cloud Engineer

  • Knowledge of Cloud Service Providers: Familiarity with AWS, Azure, or GCP
  • Programming Skills: Essential languages (PHP, Java, .NET, SQL, Python, Ruby)
  • Important Cloud Service Domains: Compute, storage, networking, security
  • Web Services and APIs: Integration over the internet using standards (XML, SOAP, WSDL, UDDI)
  • Linux: Architect, administer, maintain Linux environments
  • DevOps: Efficient development and operational practices, bridging gaps between the two teams

GCP Certification

  • Validates cloud skills
  • Makes resume stand out, potential for higher pay
  • Prepares for job interviews, client-preferred certification
  • Recommended course: Edureka’s Google Cloud Architect Certification Training