Categories: CloudNativeKubernetes

Kubernetes – When to use Which ServiceTypes?

Kubernetes supports different kinds of service types such as following:

  • ClusterIP: The service of type, ClusterIP, can only be exposed to other services running within the same Kubernetes cluster. The default ServiceType is ClusterIP.
    kind: Service
    apiVersion: v1
    metadata:
      name: hello-service
    spec:
      selector:
        app: HelloApp
      ports:
      - protocol: TCP
        port: 80
        targetPort: 9376
        nodePort: 30061
    
  • NodePort: The service of type, NodePort, can be exposed externally at a static port. The service address would look like  NodeIP:NodePort. External APIs can invoke the NodePort services.
  • LoadBalancer: The service of type, LoadBalancer, can be exposed externally using cloud providers’ load balancer.
    kind: Service
    apiVersion: v1
    metadata:
      name: hello-service
    spec:
      selector:
        app: HelloApp
      ports:
      - protocol: TCP
        port: 80
        targetPort: 9376
        nodePort: 30061
      clusterIP: 10.0.171.239
      loadBalancerIP: 78.11.24.19
      type: LoadBalancer
    status:
      loadBalancer:
        ingress:
        - ip: 146.148.47.155
    
  • ExternalName: The service of type, ExternalName, is mapped to an external name, such as helloapp.vitalflux.com.
Ajitesh Kumar

I have been recently working in the area of Data analytics including Data Science and Machine Learning / Deep Learning. I am also passionate about different technologies including programming languages such as Java/JEE, Javascript, Python, R, Julia, etc, and technologies such as Blockchain, mobile computing, cloud-native technologies, application security, cloud computing platforms, big data, etc. I would love to connect with you on Linkedin. Check out my latest book titled as First Principles Thinking: Building winning products using first principles thinking.

Share
Published by
Ajitesh Kumar
Tags: Kubernetes

Recent Posts

Coefficient of Variation in Regression Modelling: Example

When building a regression model or performing regression analysis to predict a target variable, understanding…

3 days ago

Chunking Strategies for RAG with Examples

If you've built a "Naive" RAG pipeline, you've probably hit a wall. You've indexed your…

2 weeks ago

RAG Pipeline: 6 Steps for Creating Naive RAG App

If you're starting with large language models, you must have heard of RAG (Retrieval-Augmented Generation).…

2 weeks ago

Python: List Comprehension Explained with Examples

If you've spent any time with Python, you've likely heard the term "Pythonic." It refers…

2 weeks ago

Large Language Models (LLMs): Four Critical Modeling Stages

Large language models (LLMs) have fundamentally transformed our digital landscape, powering everything from chatbots and…

3 months ago

Agentic Workflow Design Patterns Explained with Examples

As Large Language Models (LLMs) evolve into autonomous agents, understanding agentic workflow design patterns has…

3 months ago