DZone
Cloud Zone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
  • Refcardz
  • Trend Reports
  • Webinars
  • Zones
  • |
    • Agile
    • AI
    • Big Data
    • Cloud
    • Database
    • DevOps
    • Integration
    • IoT
    • Java
    • Microservices
    • Open Source
    • Performance
    • Security
    • Web Dev
DZone > Cloud Zone > The Most Common Kubernetes Terms

The Most Common Kubernetes Terms

Time to consult the dictionary. Take a look at some of the most commonly-used terms in the world of Kubernetes for your reference.

Joseph Muiruri user avatar by
Joseph Muiruri
·
Aug. 22, 18 · Cloud Zone · Presentation
Like (13)
Save
Tweet
7.80K Views

Join the DZone community and get the full member experience.

Join For Free

This article aims at explaining the basic terminologies used in Kubernetes.

Cluster: A cluster is the foundation of Kubernetes Engine; the Kubernetes objects that represent your containerized applications all run on top of a cluster. It is a set of machines (physical or virtual) on which your applications are managed and run. For Kubernetes, all machines are managed as a cluster (or set of clusters, depending on the topology used).

Node: A cluster typically has one or more nodes, which are the worker machines that run your containerized applications and other workloads. In Kubernetes Engine, a cluster consists of at least one cluster master and multiple worker machines called nodes. A logical machine unit (physical or virtual), which is part of a larger cluster on which you can run your applications. 

Pod: A co-located group of containers and their storage is called a pod or simply a pod is a group of containers that are deployed together on the same host. For example, it makes sense to have database processes and data containers as close as possible — ideally, they should be in the same pod.

Replication Controller: Replication Controllers (RC) are an abstraction used to manage pod lifecycles. One of the key uses of replication controllers is to maintain a certain number of pods. This is also useful when you want to enable a certain number of pods for scaling, or ensure that at least one pod. It is a best practice to use replication controllers to define pod lifecycles, rather than to create pods directly.

Selector: A selector expression matches labels to filter certain resources. For example, you may want to search for all pods that belong to a certain service or find all containers that have a specific tier label value as a database. You can use labels to classify resources and use selectors to find them and use them for certain actions.

Label: Labels are key-value pairs that are attached to objects, such as pods. The key-value pairs can be used to filter, organize and perform mass operations on a set of resources. Think of labels as a role, group, or any similar mechanism given to a container or resource. One container can have a database role, while the other can be a load-balancer.

Replication Sets: Replica Sets define how many replicas of each pod will be running. They also monitor and ensure the required number of pods are running, replacing pods that die. Replica Sets can act as replacements for Replication Controllers.

Annotation: An annotation is a Label but with much larger data capacity. Typically, this data is not readable by humans and not easy to filter through. Annotation is useful only for storing data which may not be searched but is required by the resource.

Name: A name by which a resource is identified.

Volume: A volume is a directory with data which is accessible to a container. The volume co-terminates with the pods that encloses it.

Namespace: Namespace provides additional qualification to a resource name. This is especially helpful when multiple teams/projects are using the same cluster and there is a potential for name collision. You can think of a namespace as a virtual wall between multiple clusters.

Service: A service is an abstraction on top of pods which provides a single IP address and DNS name by which the pods can be accessed. This load balancing configuration is much easier to manage and helps scale pods seamlessly.

Kubernetes pods cluster

Opinions expressed by DZone contributors are their own.

Popular on DZone

  • Blocking Ads on Your Network Using Raspberry Pi 3 + Fedora + Pi-hole
  • Monolith vs Microservices Architecture: To Split or Not to Split?
  • API Security Weekly: Issue 165
  • How To Evaluate Software Quality Assurance Success: KPIs, SLAs, Release Cycles, and Costs

Comments

Cloud Partner Resources

X

ABOUT US

  • About DZone
  • Send feedback
  • Careers
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • MVB Program
  • Become a Contributor
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 600 Park Offices Drive
  • Suite 300
  • Durham, NC 27709
  • support@dzone.com
  • +1 (919) 678-0300

Let's be friends:

DZone.com is powered by 

AnswerHub logo