Introduction |
|
xxi | |
Assessment Test |
|
xxxiii | |
|
Chapter 1 Overview of Google Cloud |
|
|
1 | (16) |
|
|
2 | (1) |
|
|
3 | (1) |
|
|
4 | (3) |
|
|
7 | (1) |
|
|
8 | (1) |
|
Cloud Computing vs. Data Center Computing |
|
|
8 | (1) |
|
Rent Instead of Own Resources |
|
|
8 | (1) |
|
Pay-as-You-Go-for-What-You-Use Model |
|
|
9 | (1) |
|
Elastic Resource Allocation |
|
|
9 | (1) |
|
|
10 | (1) |
|
|
10 | (1) |
|
|
10 | (2) |
|
|
12 | (5) |
|
Chapter 2 Google Cloud Computing Services |
|
|
17 | (24) |
|
Computing Components of Google Cloud |
|
|
18 | (1) |
|
|
19 | (4) |
|
Storage Components of Google Cloud |
|
|
23 | (1) |
|
|
23 | (3) |
|
|
26 | (2) |
|
Networking Components of Google Cloud |
|
|
28 | (1) |
|
|
28 | (2) |
|
Identity Management and Security |
|
|
30 | (1) |
|
|
30 | (1) |
|
Additional Components of Google Cloud |
|
|
31 | (1) |
|
Management and Observability Tools |
|
|
31 | (1) |
|
|
32 | (1) |
|
|
33 | (1) |
|
|
33 | (3) |
|
|
36 | (5) |
|
Chapter 3 Projects, Service Accounts, and Billing |
|
|
41 | (26) |
|
How Google Cloud Organizes Projects and Accounts |
|
|
42 | (1) |
|
Google Cloud Resource Hierarchy |
|
|
42 | (3) |
|
|
45 | (1) |
|
|
46 | (3) |
|
|
49 | (1) |
|
|
50 | (1) |
|
Granting Roles to Identities |
|
|
50 | (2) |
|
|
52 | (1) |
|
|
53 | (1) |
|
|
53 | (3) |
|
Billing Budgets and Alerts |
|
|
56 | (1) |
|
|
57 | (2) |
|
|
59 | (1) |
|
|
60 | (1) |
|
|
61 | (1) |
|
|
62 | (5) |
|
Chapter 4 Introduction to Computing in Google Cloud |
|
|
67 | (34) |
|
|
68 | (1) |
|
|
68 | (9) |
|
Virtual Machines Are Contained in Projects |
|
|
77 | (1) |
|
Virtual Machines Run in a Zone and Region |
|
|
78 | (1) |
|
Users Need Privileges to Create Virtual Machines |
|
|
79 | (1) |
|
Preemptible Virtual Machines |
|
|
80 | (1) |
|
|
81 | (1) |
|
Use Cases for Compute Engine Virtual Machines |
|
|
82 | (1) |
|
|
83 | (1) |
|
Structure of an App Engine Application |
|
|
84 | (1) |
|
App Engine Standard and Flexible Environments |
|
|
85 | (1) |
|
|
86 | (1) |
|
|
87 | (1) |
|
|
88 | (1) |
|
Kubernetes Cluster Architecture |
|
|
88 | (1) |
|
Kubernetes Engine Use Cases |
|
|
89 | (1) |
|
|
90 | (1) |
|
|
90 | (1) |
|
|
91 | (1) |
|
|
91 | (1) |
|
Cloud Functions Execution Environment |
|
|
91 | (2) |
|
Cloud Functions Use Cases |
|
|
93 | (1) |
|
|
93 | (2) |
|
|
95 | (1) |
|
|
96 | (5) |
|
Chapter 5 Computing with Compute Engine Virtual Machines |
|
|
101 | (30) |
|
Creating and Configuring Virtual Machines with the Console |
|
|
102 | (2) |
|
Main Virtual Machine Configuration Details |
|
|
104 | (5) |
|
Advanced Configuration Details |
|
|
109 | (8) |
|
Creating and Configuring Virtual Machines with Cloud SDK |
|
|
117 | (1) |
|
|
117 | (1) |
|
Example Installation on Ubuntu Linux |
|
|
118 | (1) |
|
Creating a Virtual Machine with Cloud SDK |
|
|
119 | (1) |
|
Creating a Virtual Machine with Cloud Shell |
|
|
120 | (1) |
|
Basic Virtual Machine Management |
|
|
121 | (1) |
|
Starting and Stopping Instances |
|
|
121 | (1) |
|
Network Access to Virtual Machines |
|
|
121 | (2) |
|
Monitoring a Virtual Machine |
|
|
123 | (1) |
|
|
123 | (2) |
|
Guidelines for Planning, Deploying, and Managing Virtual Machines |
|
|
125 | (1) |
|
|
125 | (1) |
|
|
126 | (1) |
|
|
127 | (4) |
|
Chapter 6 Managing Virtual Machines |
|
|
131 | (26) |
|
Managing Single Virtual Machine Instances |
|
|
132 | (1) |
|
Managing Single Virtual Machine Instances in the Console |
|
|
132 | (9) |
|
Managing a Single Virtual Machine Instance with Cloud Shell and the Command Line |
|
|
141 | (6) |
|
Introduction to Instance Groups |
|
|
147 | (1) |
|
Creating and Removing Instance Groups and Templates |
|
|
147 | (2) |
|
Instance Groups Load Balancing and Autoscaling |
|
|
149 | (1) |
|
Guidelines for Managing Virtual Machines |
|
|
150 | (1) |
|
|
150 | (1) |
|
|
151 | (1) |
|
|
152 | (5) |
|
Chapter 7 Computing with Kubernetes |
|
|
157 | (22) |
|
Introduction to Kubernetes Engine |
|
|
158 | (1) |
|
Kubernetes Cluster Architecture |
|
|
159 | (1) |
|
|
159 | (3) |
|
Deploying Kubernetes Clusters |
|
|
162 | (1) |
|
Deploying Kubernetes Clusters Using Cloud Console |
|
|
162 | (5) |
|
Deploying Kubernetes Clusters Using Cloud Shell and Cloud SDK |
|
|
167 | (1) |
|
Deploying Application Pods |
|
|
168 | (4) |
|
|
172 | (1) |
|
|
172 | (1) |
|
|
173 | (1) |
|
|
174 | (5) |
|
Chapter 8 Managing Standard Mode Kubernetes Clusters |
|
|
179 | (36) |
|
Viewing the Status of a Kubernetes Cluster |
|
|
180 | (1) |
|
Viewing the Status of Kubernetes Clusters Using Cloud Console |
|
|
180 | (2) |
|
Pinning Services to the Top of the Navigation Menu |
|
|
182 | (6) |
|
Viewing the Status of Kubernetes Clusters Using Cloud SDK and Cloud Shell |
|
|
188 | (5) |
|
Adding, Modifying, and Removing Nodes |
|
|
193 | (1) |
|
Adding, Modifying, and Removing Nodes with Cloud Console |
|
|
193 | (2) |
|
Adding, Modifying, and Removing Nodes with Cloud SDK and Cloud Shell |
|
|
195 | (1) |
|
Adding, Modifying, and Removing Pods |
|
|
196 | (1) |
|
Adding, Modifying, and Removing Pods with Cloud Console |
|
|
196 | (4) |
|
Adding, Modifying, and Removing Pods with Cloud SDK and Cloud Shell - |
|
|
200 | (3) |
|
Adding, Modifying, and Removing Services |
|
|
203 | (1) |
|
Adding, Modifying, and Removing Services with Cloud Console |
|
|
203 | (2) |
|
Adding, Modifying, and Removing Services with Cloud SDK and Cloud Shell |
|
|
205 | (2) |
|
Creating Repositories in the Artifact Registry |
|
|
207 | (1) |
|
Viewing the Image Repository and Image Details with Cloud Console |
|
|
207 | (2) |
|
|
209 | (1) |
|
|
209 | (1) |
|
|
210 | (5) |
|
Chapter 9 Computing with Cloud Run and App Engine |
|
|
215 | (22) |
|
|
216 | (1) |
|
|
216 | (1) |
|
|
217 | (1) |
|
Creating a Cloud Run Service |
|
|
218 | (4) |
|
|
222 | (1) |
|
|
223 | (3) |
|
Deploying an App Engine Application |
|
|
226 | (1) |
|
Deploying an App Using Cloud Shell and SDK |
|
|
226 | (2) |
|
Scaling App Engine Applications |
|
|
228 | (1) |
|
Splitting Traffic Between App Engine Versions |
|
|
229 | (1) |
|
|
230 | (1) |
|
|
231 | (1) |
|
|
232 | (5) |
|
Chapter 10 Computing with Cloud Functions |
|
|
237 | (16) |
|
Introduction to Cloud Functions |
|
|
238 | (1) |
|
Events, Triggers, and Functions |
|
|
238 | (1) |
|
|
239 | (2) |
|
Cloud Functions Receiving Events from Cloud Storage |
|
|
241 | (1) |
|
Deploying a Cloud Function for Cloud Storage Events Using Cloud Console |
|
|
241 | (3) |
|
Deploying a Cloud Function for Cloud Storage Events Using gcloud Commands |
|
|
244 | (1) |
|
Cloud Functions Receiving Events from Pub/Sub |
|
|
245 | (1) |
|
Deploying a Cloud Function for Cloud Pub/Sub Events Using Cloud Console |
|
|
245 | (1) |
|
Deploying a Cloud Function for Cloud Pub/Sub Events Using gcloud Commands |
|
|
246 | (1) |
|
|
247 | (1) |
|
|
247 | (2) |
|
|
249 | (4) |
|
Chapter 11 Planning Storage in the Cloud |
|
|
253 | (32) |
|
|
254 | (1) |
|
|
255 | (2) |
|
|
257 | (1) |
|
|
258 | (6) |
|
Storage Types When Planning a Storage Solution |
|
|
264 | (1) |
|
|
265 | (1) |
|
|
266 | (1) |
|
Relational: Cloud SQL and Cloud Spanner |
|
|
266 | (2) |
|
|
268 | (2) |
|
NoSQL: Cloud Firestore and Bigtable |
|
|
270 | (7) |
|
Choosing a Storage Solution: Guidelines to Consider |
|
|
277 | (1) |
|
|
278 | (1) |
|
|
278 | (2) |
|
|
280 | (5) |
|
Chapter 12 Deploying Storage in Google Cloud |
|
|
285 | (36) |
|
Deploying and Managing Cloud SQL |
|
|
286 | (1) |
|
Creating and Connecting to a MySQL Instance |
|
|
286 | (2) |
|
Creating a Database, Loading Data, and Querying Data |
|
|
288 | (1) |
|
Backing Up MySQL in Cloud SQL |
|
|
289 | (3) |
|
Deploying and Managing Firestore |
|
|
292 | (1) |
|
Adding Data to a Firestore Database |
|
|
292 | (2) |
|
|
294 | (1) |
|
Deploying and Managing BigQuery |
|
|
294 | (1) |
|
Estimating the Cost of Queries in BigQuery |
|
|
294 | (2) |
|
|
296 | (1) |
|
Deploying and Managing Cloud Spanner |
|
|
297 | (5) |
|
Deploying and Managing Cloud Pub/Sub |
|
|
302 | (4) |
|
Deploying and Managing Cloud Bigtable |
|
|
306 | (2) |
|
Deploying and Managing Cloud Dataproc |
|
|
308 | (6) |
|
|
314 | (2) |
|
|
316 | (1) |
|
|
316 | (1) |
|
|
317 | (4) |
|
Chapter 13 Loading Data into Storage |
|
|
321 | (28) |
|
Loading and Moving Data to Cloud Storage |
|
|
322 | (1) |
|
Loading and Moving Data to Cloud Storage Using the Console |
|
|
322 | (5) |
|
Loading and Moving Data to Cloud Storage Using the Command Line |
|
|
327 | (1) |
|
Importing and Exporting Data |
|
|
328 | (1) |
|
Importing and Exporting Data: Cloud SQL |
|
|
328 | (4) |
|
Importing and Exporting Data: Cloud Firestore |
|
|
332 | (1) |
|
Importing and Exporting Data: BigQuery |
|
|
332 | (5) |
|
Importing and Exporting Data: Cloud Spanner |
|
|
337 | (2) |
|
Exporting Data from Cloud Bigtable |
|
|
339 | (1) |
|
Importing and Exporting Data: Cloud Dataproc |
|
|
340 | (1) |
|
Streaming Data to Cloud Pub/Sub |
|
|
341 | (1) |
|
|
342 | (1) |
|
|
342 | (2) |
|
|
344 | (5) |
|
Chapter 14 Networking in the Cloud: Virtual Private Clouds and Virtual Private Networks |
|
|
349 | (26) |
|
Creating a Virtual Private Cloud with Subnets |
|
|
350 | (1) |
|
Creating a Virtual Private Cloud with Cloud Console |
|
|
350 | (4) |
|
Creating a Virtual Private Cloud with gcloud |
|
|
354 | (1) |
|
Creating a Shared Virtual Private Cloud Using gcloud |
|
|
355 | (2) |
|
Deploying Compute Engine with a Custom Network |
|
|
357 | (2) |
|
Creating Firewall Rules for a Virtual Private Cloud |
|
|
359 | (1) |
|
Structure of Firewall Rules |
|
|
360 | (1) |
|
Creating Firewall Rules Using Cloud Console |
|
|
361 | (3) |
|
Creating Firewall Rules Using gcloud |
|
|
364 | (1) |
|
Creating a Virtual Private Network |
|
|
364 | (1) |
|
Creating a Virtual Private Network Using Cloud Console |
|
|
364 | (4) |
|
Creating a Virtual Private Network Using gcloud |
|
|
368 | (1) |
|
|
368 | (1) |
|
|
369 | (1) |
|
|
370 | (5) |
|
Chapter 15 Networking in the Cloud: DNS, Load Balancing, Google Private Access, and IP Addressing |
|
|
375 | (24) |
|
|
376 | (1) |
|
Creating DNS Managed Zones Using Cloud Console |
|
|
376 | (5) |
|
Creating DNS Managed Zones Using gcloud |
|
|
381 | (1) |
|
Configuring Load Balancers |
|
|
382 | (1) |
|
|
382 | (1) |
|
Configuring Load Balancers Using Cloud Console |
|
|
383 | (3) |
|
Configuring Load Balancers Using gcloud |
|
|
386 | (3) |
|
|
389 | (1) |
|
|
389 | (1) |
|
|
390 | (1) |
|
|
390 | (1) |
|
|
391 | (1) |
|
|
392 | (2) |
|
|
394 | (5) |
|
Chapter 16 Deploying Applications with Cloud Marketplace and Cloud Foundation Toolkit |
|
|
399 | (26) |
|
Deploying a Solution Using Cloud Marketplace |
|
|
400 | (1) |
|
Browsing Cloud Marketplace and Viewing Solutions |
|
|
400 | (3) |
|
Deploying Cloud Marketplace Solutions |
|
|
403 | (8) |
|
Building Infrastructure Using the Cloud Foundation Toolkit |
|
|
411 | (1) |
|
Deployment Manager Configuration Files |
|
|
411 | (3) |
|
Deployment Manager Template Files |
|
|
414 | (1) |
|
Launching a Deployment Manager Template |
|
|
414 | (1) |
|
|
415 | (3) |
|
|
418 | (1) |
|
|
418 | (1) |
|
|
418 | (2) |
|
|
420 | (5) |
|
Chapter 17 Configuring Access and Security |
|
|
425 | (22) |
|
Managing Identity and Access Management |
|
|
426 | (1) |
|
Viewing Account IAM Assignments |
|
|
426 | (2) |
|
Assigning IAM Roles to Accounts and Groups |
|
|
428 | (4) |
|
Defining Custom IAM Roles |
|
|
432 | (4) |
|
Managing Service Accounts |
|
|
436 | (1) |
|
Managing Service Accounts with Scopes |
|
|
436 | (2) |
|
Assigning a Service Account to a VM Instance |
|
|
438 | (2) |
|
|
440 | (1) |
|
|
441 | (1) |
|
|
441 | (2) |
|
|
443 | (4) |
|
Chapter 18 Monitoring, Logging, and Cost Estimating |
|
|
447 | (26) |
|
|
448 | (1) |
|
|
449 | (1) |
|
|
450 | (4) |
|
|
454 | (4) |
|
|
458 | (1) |
|
Log Routers and Log Sinks |
|
|
458 | (1) |
|
|
459 | (1) |
|
Viewing and Filtering Logs |
|
|
459 | (3) |
|
|
462 | (1) |
|
|
463 | (1) |
|
|
463 | (1) |
|
Viewing Google Cloud Status |
|
|
464 | (1) |
|
Using the Pricing Calculator |
|
|
464 | (3) |
|
|
467 | (1) |
|
|
468 | (1) |
|
|
469 | (4) |
|
Appendix Answers to Review Questions |
|
|
473 | (42) |
|
Chapter 1 Overview of Google Cloud |
|
|
474 | (2) |
|
Chapter 2 Google Cloud Computing Services |
|
|
476 | (2) |
|
Chapter 3 Projects, Service Accounts, and Billing |
|
|
478 | (2) |
|
Chapter 4 Introduction to Computing in Google Cloud |
|
|
480 | (2) |
|
Chapter 5 Computing with Compute Engine Virtual Machines |
|
|
482 | (3) |
|
Chapter 6 Managing Virtual Machines |
|
|
485 | (2) |
|
Chapter 7 Computing with Kubernetes |
|
|
487 | (2) |
|
Chapter 8 Managing Standard Mode Kubernetes Clusters |
|
|
489 | (2) |
|
Chapter 9 Computing with Cloud Run and App Engine |
|
|
491 | (3) |
|
Chapter 10 Computing with Cloud Functions |
|
|
494 | (2) |
|
Chapter 11 Planning Storage in the Cloud |
|
|
496 | (2) |
|
Chapter 12 Deploying Storage in Google Cloud |
|
|
498 | (2) |
|
Chapter 13 Loading Data into Storage |
|
|
500 | (2) |
|
Chapter 14 Networking in the Cloud: Virtual Private Clouds and Virtual Private Networks |
|
|
502 | (2) |
|
Chapter 15 Networking in the Cloud: DNS, Load Balancing, Google Private Access, and IP Addressing |
|
|
504 | (3) |
|
Chapter 16 Deploying Applications with Cloud Marketplace and Cloud Foundation Toolkit |
|
|
507 | (2) |
|
Chapter 17 Configuring Access and Security |
|
|
509 | (2) |
|
Chapter 18 Monitoring, Logging, and Cost Estimating |
|
|
511 | (4) |
Index |
|
515 | |