GKE Flashcards

1
Q

What is GKE?

A

GKE is managed Kubernetes solution offered by GCP.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is Kubernetes?

A

Kubernetes is a container orchestration platform.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What are the 3 primary components that makeup a Kubernetes cluster?

A
  1. Control Plane Node
  2. Worker Node
  3. Pod

The Control Plane is a master node that manages Worker Nodes and Pods. A Worker Node is a node that hosts 1 or more Pods. A Pod is the smallest deployable unit and consists of 1 or more containers that share network and storage resources within the Pod.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

When using GKE Standard, what are the 3 things you are responsible for managing?

A
  1. Provisioning and managing Worker Nodes
  2. Network configuration
  3. Security
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is the billing structure difference between GKE Standard and GKE Autopilot?

A

In GKE Standard, you pay for all resources on nodes, regardless of Pod requests.

In GKE autopilot, you only pay for the compute resources that your workloads use while running (Pods). You don’t pay for unused capacity on your nodes, system Pods, operating system costs, or unscheduled workloads.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Which compute resources is used to serve as Kubernetes nodes?

A

Compute Engine instances

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Which GKE edition brings all the capabilities of Anthos to GKE?

A

GKE Enterprise edition

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is Anthos?

A

Anthos is a container platform that provides a range of features for working at enterprise scale. This platform was built around the idea of the fleet, a logical grouping of Kubernetes clusters that can be managed together and benefit from sameness of namespaces, services, and/or identity across the clusters.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

GKE offers persistent storage, Cloud Run does not. GKE is suited for both stateful and stateless complex microservice applications. Cloud run is only suited for stateless applications.

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Using a service mesh can help you manage traffic across your distributed services. A service mesh is software that links services together, and helps decouple business logic from networking. A service mesh typically provides resiliency features like request retries, failovers, and circuit breakers.

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What is a Kubernetes Service?

A

A Kubernetes Service is a network abstraction that provides a fixed IP address and load balancing capabilities for accessing a group of pods. These pods may be hosted in a single node or across multiple nodes.

This is important because pods are ephemeral and their IP addresses change as they are deleted and recreated. Therefore, it doesn’t make sense to use Pod IP addresses directly, hence the need for Kubernetes Services.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is a Kubernetes Volume and what are the 2 different types you can use?

A

A Kubernetes Volume is a directory that is accessible to all containers in a pod. The directory is mounted to a specific path inside each container.

  1. Ephemeral
  2. Persistent

Ephemeral volumes are created and terminated when a pod is created and terminated. A persistent volume has a lifecycle independent of the pod.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Does Kubernetes support declarative and imperative configurations?

A

Yes.

You can declare the desired sate and Kubernetes will implement the necessary steps to achieve that state.
You can also issue commands yourself to achieve a desired state.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Which features allows Kubernetes to support stateful applications?

A

SatefulSet Controllers and persistent storage

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What is a Kubernetes Object?

A

A Kubernetes Object is a record that contains the spec and status of an entity in your cluster. The spec represents the desired state and the status represents the current state.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What must you provide to Kubernetes so that it can create an Object?

A

You must provide Kubernetes with a manifest file.
A manifest is a specification of an Object in YAML or JSON format.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Which component is responsible for managing every object’s actual state to match the desired state requested?

A

Control Plane

18
Q

What term is used to define the type of an Object?

A

Kind

For example, a Pod is a specific kind of object.

19
Q

Does each Kubernetes Pod get its own unique IP address?

A

Yes

20
Q

What command line tool does Kubernetes provide to communicate with the Control Plane?

A

Kubectl

21
Q

What component runs on every node and is responsible for interacting with the control plane?

A

Kubelet

22
Q

Which component runs on every node and is responsible for supporting network communication to your pods from within and outside of your cluster?

A

Kube-proxy

23
Q

What are the 2 identifiers of a Kubernetes Object?

A
  1. Unique name per kind of Object
  2. Unique ID per cluster

Names are created by the developer and the unique IDs are created by Kubernetes.

24
Q

Deployment is an object which can own ReplicaSets and update them and their Pods via declarative, server-side rolling updates. While ReplicaSets can be used independently, today they’re mainly used by Deployments as a mechanism to orchestrate Pod creation, deletion and updates. When you use Deployments you don’t have to worry about managing the ReplicaSets that they create. Deployments own and manage their ReplicaSets. As such, it is recommended to use Deployments when you want ReplicaSets.

A
25
Q

What is a Kubernetes Deployment?

A

A Deployment is a Kubernetes Object that consists of a ReplicaSet object, and through it, Pod objects

26
Q

Does GKE Autopilot support SSH access to the nodes in the cluster?

A

No. SSH access is only available to the containers in your cluster that have the sh binary. However, GKE Standard does support SSH access to the nodes in the cluster since you are responsible for managing them yourself.

27
Q

What are the 2 different tiers that GKE offers?

A
  1. GKE Non-enterprise
  2. GKE Enterprise

GKE Enterprise uses Anthos

28
Q

The Container-Optimized OS image does not provide package management software such as apt-get. You can’t install arbitrary software onto the nodes using conventional mechanisms. Instead, create a container image that contains the software you need

A
29
Q

When you define Pods in a manifest, you can specify resource requests and limits in the Pod specification. When GKE places the Pods on a node, the Pod requests those specified resources from the allocatable resources on the node

A
30
Q

Usually you don’t need to create Pods directly, even singleton Pods. Instead, create them using workload resources such as Deployment or Job. If your Pods need to track state, consider the StatefulSet resource.

A
31
Q

When Compute Engine needs to reclaim the resources used by Spot VMs, a termination notice is sent to GKE. Spot VMs terminate 30 seconds after receiving a termination notice.

A
32
Q

To ensure that your workloads and Jobs are processed even when no Spot VMs are available, ensure that your clusters have a mix of node pools that use Spot VMs and node pools that use standard Compute Engine VMs.

A
33
Q

Autopilot clusters always automatically repair nodes. You can’t disable this setting.

In Standard clusters, node auto-repair is enabled by default for new node pools. You can disable auto repair for an existing node pool, however we recommend keeping the default configuration.

When enabled, GKE makes periodic checks on the health state of each node in your cluster. If a node fails consecutive health checks over an extended time period, GKE initiates a repair process for that node.

A
34
Q

Is Cluster Autoscaler available to GKE Standard?

A

Yes. This can be enabled or disabled for GKE Standard.

35
Q

Is the IP address of a Service static for throughout its lifetime?

A

Yes. This makes it possible for clients to connect to a service without having to worry about different IP addresses.

36
Q

Each node has a pool of IP addresses that GKE assigns Pods running on that node

A
37
Q

Pods can also attach to external storage volumes and other custom resources.

A
38
Q

By default, each Pod has unfiltered access to all the other Pods running on all nodes of the cluster, but you can limit access among Pods.

A
39
Q

A Service has a stable IP address and ports, and provides load balancing among the set of Pods whose labels match all the labels you define in the label selector when you create the Service.

A
40
Q

Kubernetes also assigns a hostname to the ClusterIP. You can reach a healthy Pod running your application using either the ClusterIP or the hostname of the Service.

A
41
Q
A