Genuine Parts Google Cloud Mini Certs
Sponsored by GPC WIT
Who am I?
2
What are Genuine Parts Google Cloud Mini Certs?
3
The Six Mini Certs
1 - Cloud Architectures (general cloud architectures plus how Genuine Parts carries out Cloud Architecture design and governance)
2 - Google Cloud best practices within Genuine Parts (Paved Path, etc. within Genuine Parts)
3 - Google Cloud pricing/costing (tools for pricing/costing, understanding how Google Cloud charges for components, etc.)
4 - Google Cloud for Genuine Parts SREs (tickets, Git/github, CI/CD, Terraform, modules etc.)
5 - Google Cloud Components used by Genuine Parts teams (CloudRun, BigQuery, Cloud Load Balancer, CloudArmor, etc.)
6 - Google Cloud for programmers (authentication/authorization, microservices, CloudRun etc.)
4
Today – Cloud Architectures
5
General Cloud Architectures
6
Why the Cloud?
7
How the Cloud?
8
Regions and Availability Zones
Genuine Parts in the US uses us-east4 and us-central1 by default
9
Availability Zones
Think of an Availability Zone as a Data Center within a Region. Network components are all independent.
Try to use more than one availability zone for extra resilience of your application or data where you can
Cost vs Benefits
10
GCP Resource Hierarchy
11
Firewalls, NVAs, VPCs and other network components
Hub and spoke network architecture in GPC
Hub-and-spoke network architecture | Cloud Architecture Center | Google Cloud
Firewalls include CloudFlare (external WAF), Cloud Armor WAF – very important!!!
12
SMP
Cloud Armor WAF
CloudFlare WAF
13
Google Cloud Components
14
Compute
15
Storage
Within GPC, Cloud Storage is used to store files (hot/warm/cold storage with lifecycles)
16
Data Analytics
GPC will primarily use BigQuery for analytics – and use PowerBI for Business Intelligence in place of Qlik in future state. Speak to Alycia McCarty and her team about this area. There is a huge Enterprise Data plan in place with Domain driven design at the heart of it see here
https://gpcprod.atlassian.net/wiki/spaces/EDP/overview
https://gpcprod.atlassian.net/wiki/spaces/EDP/pages/195526724/Enterprise+Data+Platform+Deep+Dive
Pub Sub is used to publish to BigQuery or to decouple layers of an application
17
Databases
GPC uses CloudSQL (Postgres version) for relational data and BigQuery for its Data Warehouse data and for Data Lakes
18
Hybrid/multi-cloud Options in Google Cloud
Genuine Parts will use ApigeeX and Anthos in future state. Speak to Navin Anandaraj about these options.
19
AI/ML
Genuine Parts is looking into some of these options - AutoML and TensorFlow etc.
20
Networking
Genuine Parts used Interconnect to connect to a hub that provided connectivity to on premise from the cloud and vice versa.
Cloud DNS, CDN and Cloud Armor are also used
21
Authentication/Authorization - IAM
Authentication
Are you who you say you are?
Currently using Active Directory in Azure
Authorization
Now I know who you are, what can you do/access?
Active Directory in Azure with JWT tokens
Moving to Ping in near future
22
Operations and Monitoring
23
CI/CD
24
Google Cloud Migration Tools
25
Questions and Issues
Feel free to ping me on Teams any time – Michelle Sollicito
Useful resources:
Mini Certs Url
https://gpcprod.atlassian.net/wiki/spaces/WCC/overview
Enterprise Data Urls
https://gpcprod.atlassian.net/wiki/spaces/EDP/overview
https://gpcprod.atlassian.net/wiki/spaces/EDP/pages/195526724/Enterprise+Data+Platform+Deep+Dive
Paved Path Enablement Url
https://gpcprod.atlassian.net/wiki/spaces/DE/pages/52199425/Paved+Path+Enablement
Cloud Team Url (Getting started)
https://gpcprod.atlassian.net/wiki/spaces/CPE/pages/270663826/Getting+Started+in+Google+Cloud
Lessons Learned from Moving to Google Cloud
26
Mini Cert 2 – GPC Best Practices in the Cloud
1.Read Lessons Learned from Moving to Google Cloud https://gpcprod.atlassian.net/wiki/spaces/SMP/blog/2022/07/15/163381268/Lessons+Learned+from+moving+to+Google+Cloud
2.Watch this video "Lessons Learned from Moving to Google Cloud"
3.Read the Google Cloud Foundations documentation https://gpcprod.atlassian.net/wiki/spaces/CPE/pages/44793873/Google+Cloud+Foundations
And
How to start a new Google Cloud project etc.
https://gpcprod.atlassian.net/wiki/spaces/CPE/overview
4.Read the Google Cloud Tech Stack https://gpcprod.atlassian.net/wiki/spaces/CPE/pages/43548721/Google+Cloud+Tech+Stack
5.Read Paved Path Enablement https://gpcprod.atlassian.net/wiki/spaces/DE/pages/52199425/Paved+Path+Enablement
6.Read Change Management for Google Cloud within Genuine Parts ServiceNow Application Knowledge - GPC Change Management Quick Reference (service-now.com)
7.Take the Google Cloud/Genuine Parts Best Practices Mini Certification
27
Technical Architecture Design
Inputs to Design
28
Migration
29
Key Requirements – SLAs and Compliance
30
Key Requirements - Costs
31
Key Requirements – Security
32
Key Requirements – Disaster Recovery/Business Continuity
33
Key Requirements - Availability
34
Key Requirements - Scalability
35
Key Requirements – Data Sensitivity
36
Domains (Domain driven design)
37
Enterprise Data Platform Future State
38
Future State Data Architecture
39
Sign Off Is Essential
Sample Production Readiness Checklist (SMP)
https://gpcprod.atlassian.net/wiki/spaces/SMP/pages/73105409
Template
https://gpcprod.atlassian.net/wiki/spaces/OWCA/pages/65961999
Get to know the Business Assessment requirements here too
40
Organization, Bus, Folders and Projects
41
Network Architecture (Hub and Spoke)
Within GPC each project by default has ONE VPC with many subnets (one for each region is typical)
Projects share resources in a central VPC (hub)
The hub is used to access the on prem network
42
Networking and Google Cloud at GPC
43
Global Load Balancer, DNS CloudFlare and Certificates
NOTE that at some point you may have to clear cache on CloudFlare so you need access to that - Jared D will give access
SSL Certificates – now changed!!! Use KeyFactor!!!
https://gpcprod.atlassian.net/wiki/spaces/CIPA/pages/404291616/Request+a+Certificate+Using+SNOW
44
Firewall / NVA port Requests
45
Getting Cloud Environment Set up
46
Monitoring/Operations
47
CI/CD (Continuous Integration/Continuous Delivery/Deployment)
48
Testing
49
Resources
DON’T FORGET!!! APRIL 28th EXTRA LUNCH AND LEARN!!!!
50
Mini Cert 2a – GPC Best Practices in the Cloud In Depth
1.Read Lessons Learned from Moving to Google Cloud https://gpcprod.atlassian.net/wiki/spaces/SMP/blog/2022/07/15/163381268/Lessons+Learned+from+moving+to+Google+Cloud
2.Watch this video "Lessons Learned from Moving to Google Cloud"
3.Read the Google Cloud Foundations documentation https://gpcprod.atlassian.net/wiki/spaces/CPE/pages/44793873/Google+Cloud+Foundations
And
How to start a new Google Cloud project etc.
https://gpcprod.atlassian.net/wiki/spaces/CPE/overview
4.Read the Google Cloud Tech Stack https://gpcprod.atlassian.net/wiki/spaces/CPE/pages/43548721/Google+Cloud+Tech+Stack
5.Read Paved Path Enablement https://gpcprod.atlassian.net/wiki/spaces/DE/pages/52199425/Paved+Path+Enablement
6.Read Change Management for Google Cloud within Genuine Parts ServiceNow Application Knowledge - GPC Change Management Quick Reference (service-now.com)
7.Take the Google Cloud/Genuine Parts Best Practices Mini Certification
51
In depth
52
SMP Architecture
CLOUD ARMOR
CLOUD FLARE
PubSub
Authentication will use Ping; Authorization will use Ping/Workday
53
API Standards https://gpcprod.atlassian.net/wiki/spaces/DE/pages/528056497/API+standards+and+governance
Specification
Protection
Naming
Authorization
Contract testing
54
CI/CD Pipelines, Source code control etc. https://gpcprod.atlassian.net/wiki/spaces/DE/pages/161677348/GitHub+Actions+CI+CD
Contact Ryan Wade or Satish Reddy for this part – also see the SRE MiniCert at the beginning of June!
55
Testing
56
Testing Tools
Black Lantern
57
Future State – key facts
58
Domains (Domain driven design)
59
Enterprise Data Platform Future State
60
Future State Data Architecture
61
Mini Cert 3 – Billing and Costs in Google Cloud
62
Pricing
63
Cost Optimization
64
Pricing Calculator
65
Pricing Calculator
Comparing the cost of using kubernetes to the cost of using CloudRun
Comparing the cost of using a Debian Virtual Machine to the cost of using a Windows Virtual Machine
Estimating the total cost of your project/application
Compare Pay as you go costs to Committed Use costs
Determine costs of extra memory or cpu
Determine the difference in cost of using a different database
Determine the difference in cost of a regional failover strategy compared to a zonal failover strategy for a database
66
Pricing Calculator
Instances Pricing
68
GKE Kubernetes https://cloud.google.com/blog/products/containers-kubernetes/4-ways-to-optimize-your-gke-costs
69
Cloud Run Cost Savings
70
Data/Storage Useful Info
BigQuery
CloudSQL
71
File Storage Costs https://cloud.google.com/storage/docs/storage-classes
USE LIFECYCLES!!!
72
How GCP Charges for File Costs
Upload to Google Cloud Storage using Storage Transfer Service is FREE
Transfer within the same region to Google Cloud Storage is FREE
Comparable with AWS and Azure costs https://www.msp360.com/resources/blog/requests-and-data-transfer-prices-in-azure-google-and-aws-compared/
73
File Storage Costs https://cloud.google.com/storage/pricing-examples
Example Standard storage vs Coldline storage
Class A operations are bucket creates/object creates (Storage) Class B operations are retrievals (GETs)
74
Free Tiers / Services
Free tiers https://cloud.google.com/free/docs/free-cloud-features
75
The Rules of Reducing Costs
76
Scaling costs
77
Networking Costs All networking pricing | Virtual Private Cloud | Google Cloud
78
Watch Points
79
Spend Management
80
Cloud Billing in GPC
Cloud Billing - Cloud Platform Engineering - Confluence (atlassian.net)
Chargebacks
Billing Dashboard
International Corporate Billing
Data Billing
81
Use Filters to see breakdown of costs
82
Quotas
Quota costs
Genuine Parts Billing and Alerts
Useful billing/pricing resources
Training labs – do using your home google cloud account, not the company one (due to restrictions in your permissions etc. within the company)
Video accompanying this Mini Cert
Genuine Parts Billing and Alerts
https://gpcprod.atlassian.net/wiki/spaces/CPE/pages/460558284/Cloud+Billing
86
4. Google Cloud for Genuine Parts SREs Mini Certification
1. Read the "Getting started in Google Cloud" documentation
https://gpcprod.atlassian.net/wiki/spaces/CPE/pages/270663826/Getting+Started+in+Google+Cloud
2. Read the "Naming Standards in Google Cloud" documentation
https://gpcprod.atlassian.net/wiki/spaces/CPE/pages/172064846/Naming+Standards+in+GCP
3. Read the GCP SRE Assignments documentation
https://gpcprod.atlassian.net/wiki/spaces/CPE/pages/171475049/New+Projects+in+GCP+SRE+Assignments
4. Read the CI/CD Pipelines and Workflows documentation
https://gpcprod.atlassian.net/wiki/spaces/CPE/pages/337543551/CI+CD+Pipelines+and+Workflows
5. Read the "Creating Cloud Resources in GCP" documentation (Terraform)
https://gpcprod.atlassian.net/wiki/spaces/CPE/pages/171475042/Creating+Cloud+Resources+in+GCP
6. Watch the videos on this page re CI/CD pipelines
7. Read about CI/CD Pipelines:
Node js
Gradle
8. Read about modules
https://gpcprod.atlassian.net/wiki/spaces/CPE/pages/257851857/Modules+Info+Guides
87
4. Google Cloud for Genuine Parts SREs Mini Certification
9. Watch these videos about modules
https://gpcprod.atlassian.net/wiki/spaces/CPE/pages/364905160/Video+Tutorials+for+Modules
10. Read about Monitoring and Alerting Cloud Monitoring & Alerting - Cloud Platform Engineering - Confluence https://gpcprod.atlassian.net/wiki/spaces/CPE/pages/422150171/Cloud+Monitoring+Alerting
11. BigQuery setup (from Enterprise Data team) https://gpcprod.atlassian.net/wiki/spaces/EDP/pages/270565395/How-to+Deploy+Google+Cloud+and+IICS+Code
12. Read BigQuery setup (from SMP team)
14. Read How to Engage the Enterprise Data Team
https://genparts.sharepoint.com/sites/GPCDataAndAnalytics/SitePages/Engagement%20Process.aspx
Especially take note of the Pod information at the bottom of the page.
15. Watch the Cloud Team DevOps videos
16. Read how to setup a VM using CI/CD pipeline and terraform
https://gpcprod.atlassian.net/wiki/spaces/CPE/pages/574325330/Container+Optimized+VM+Pipeline
Take the SRE Certification TBA
Guest starring Satish Reddy and Lakshmi Sekharan Vaka
88
Getting Started as an SRE..
All you need to get started in Google Cloud are three things!
89
Responsibilities of an SRE
90
Organization, Folders, Projects
91
Networking and Google Cloud at GPC
92
4 Projects per Domain is Standard Practice at GPC
93
ALL CLOUD PURSUITS SHOULD START HERE!!!
94
New Projects
95
Things to know as an SRE..
96
Who to contact..
97
One Team, One GPC
98
Other useful contacts
99
Who Does What?
100
Deployments
101
What is the SRE responsible for?
102
What is the SRE responsible for?
103
Terraform tips for SREs
104
Service Accounts Terraform Module
105
GKE Terraform Module (Autopilot)
https://gpcprod.atlassian.net/wiki/spaces/CPE/pages/577634305/Setting+up+of+GKE+cluster+for+GKE-+Standard (GKE standard)
106
Load Balancing and Networking
107
A Word about Docker Desktop
108
Resources
(practice exam)
109
5. Google Cloud Components used by Genuine Parts Mini Certification�
2. Read GCP cloud dictionary
3. Learn the following cheat sheets: VMWare
4. Read Google cheatsheets
https://googlecloudcheatsheet.withgoogle.com
5. Learn how to choose Database components for cloud projects
Genuine Parts document
https://gpcprod.atlassian.net/wiki/spaces/DE/pages/273613077/DB+options+and+evaluation+chart
Google Cloud document
6. Take the Google Cloud Components Certification https://forms.office.com/Pages/ResponsePage.aspx?id=ZNc5tMvy6kOsBS43PIMEPhTdr_TbepBJiRW83UklJolUMlk2UEg2RVdOTUNEV0dNVlIzOFRQNlZWViQlQCN0PWcu
110
Architectural Components – the WHY?
111
Google Architectural Components – the What?
112
Security Components
113
Components in Identity and Access Management
114
Identity in GCP
Service accounts: These are robo accounts - and typically represent an application identity (as opposed to a HUMAN user).
115
Group, Roles, Permissions
Group: (Developers)
User: Michelle Sollicito
Identity: x457990@genpt.net
Member
Roles: (roles/run.developer)
Granted
roles/run.developer permissions
116
Components in Networking
117
compute
GCP Compute engine
GKE
Cloud Run
Cloud functions
When to use VMWare?
Google Compute
124
Components in Storage
125
Load Balancer Choices
126
Network layers (OSI Model)
127
Components in Applications
128
Containers
129
Microservices
130
Healthchecks and heartbeats
Healthcheck
Heartbeat
131
Database Components
132
Database Components
133
Database Components
134
Big Table vs Big Query
135
Apache Hadoop
136
Big Data Architecture Components
137
IOT
138
Gaming Analytics Architecture
139
Big Data Streaming/ML/AI Components
140
6. Google Cloud for Programmers
2. Watch this video "Lessons Learned from Moving to Google Cloud"
3. Read the Google Cloud Tech Stack
https://gpcprod.atlassian.net/wiki/spaces/CPE/pages/43548721/Google+Cloud+Tech+Stack
4. Read Paved Path Enablement
https://gpcprod.atlassian.net/wiki/spaces/DE/pages/52199425/Paved+Path+Enablement
5. Authentication
SSO with Azure AD https://gpcprod.atlassian.net/wiki/spaces/PET/pages/491423022/Project+Cookbook+for+SSO+with+azure+AD
Authentication is on my "lessons learned blog" https://gpcprod.atlassian.net/wiki/spaces/SMP/pages/438075654/4.+Technical+Implementation+-+Software+original
Also here is the OAUTH part of authentication we did with AD https://gpcprod.atlassian.net/wiki/spaces/SMP/pages/591659688/Back+End+Authentication+OAuth
Here is the Google OAUTH diagram that Param did https://gpcprod.atlassian.net/wiki/spaces/DE/pages/177635527/End+User+Browser+Based+Authentication
6. Learn the principles of REST API Design
7. Watch / read this presentation on Microservices in the cloud
8. Learn Python cheat sheet
9. Spring Cloud samples for Java developers
https://github.com/GoogleCloudPlatform/spring-cloud-gcp
10. MongoDb classes
141
6. Google Cloud for Programmers
11. Read the following links:
Setting up a GKE Cluster for GKE Standard
Performance testing with K6 (Grafana) https://gpcprod.atlassian.net/wiki/spaces/CPE/pages/542835617/Cloud+Performance+Testing+K6
Version control of CloudSQL (Postgres) via CI/CD pipeline
Multi-Region Failover for Cloud Run instances with Global Load Balancer
Understand the CI/CD pipeline for Gradle
More on CI/CD and Common Workflows
https://1drv.ms/w/s!Agz-G_kd_11BgZYYlv97UjGWCtpDLQ?e=8nHdRM
Cloud Functions Gen 2
https://gpcprod.atlassian.net/l/cp/Ubti969Y
Liquibase for Cloud SQL
Terraform Modules
https://gpcprod.atlassian.net/wiki/spaces/CPE/pages/257851857/Modules+Info+Guides
Do some of the Google QwikLabs
https://googlecloud.qwiklabs.com/
12. Take the Google Cloud for Programmers Certification
EXTRAS
Google Analytics training (Business side)
https://1drv.ms/v/s!Agz-G_kd_11BgZVO4kESQp7Ct37ASw?e=liOd2e
142
Cloud Developer Skillsets
Paved Path Enablement https://gpcprod.atlassian.net/wiki/spaces/DE/pages/52199425/Paved+Path+Enablement
143
Environment in which CLOUD development is happening
Manual >> DEVOPS >> DEVSECOPS
Build secure optimized code
Build secure containers
IAM (Authentication/Authorization)
Api gateways
Security built into IAC (terraform)
Automated Security policies
Automated Vulnerability scans
Automated Vulnerability remediation
Security As A Service
144
Architecting/Designing for Software
145
Software Design Principles
146
Containers
147
Architecting for Services at the Back end / Middleware
148
Build Secure Containers
For more on containers and microservices see
149
Microservices
150
Microservices
151
More on Microservices
Pros and Cons of Microservices by Michelle Sollicito
Do’s and Don’ts of Microservices by Michelle Sollicito
152
Architecting for Authentication and Authorization
153
Authentication/Authorization
154
3 legged authentication – future state
155
Development/architecture for Cloud Performance
156
Functional Programming (Java 8 onwards)
157
SQL like
repository database table
Person row “shape”/table schema/object schema
List<Person> persons table
persons.stream() = FROM all rows in the persons table
.filter(person -> person.getAge() >= 18) WHERE Age >-18
.map(person -> person.getName()) Name (select only the column Name)
.toList() Select
158
Front End and UI/UX
159
Back end / Data
160
BigQuery within GPC
161
CI/CD (Continuous Integration/Continuous Delivery/Deployment)
162
CI/CD Pipelines/Workflows
163
See my presentation on A Unified Approach to Testing
Unified Approach to Testing
164
Testing in Genuine Parts
165
Monitoring and Metrics
166
Healthchecks and heartbeats
Healthcheck
Heartbeat
167
Sidecar pattern for metrics/logs etc.
OTEL sidecar - Open Telemetry to Google Cloud Monitoring (see M Shaik)
See code here Custom metrics and traces using an OpenTelemetry sidecar - Commerce_Platforms - Confluence (atlassian.net)
168
Alerts to 1View
169
Ops Bridge integration
170
Database Tools
171
Resources for Cloud Programmers
172
Cloud Team Connections
173