Kubernetes – When to use Which ServiceTypes?

0

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

Ajitesh Kumar

Ajitesh is passionate about various different technologies including programming languages such as Java/JEE, Javascript, PHP, C/C++, mobile programming languages etc, and, computing fundamentals related with cloud-native technologies, application security, cloud computing platforms, mobile apps, big data etc.

He has also authored the book, Building Web Apps with Spring 5 and Angular.
Ajitesh Kumar

Leave A Reply

Time limit is exhausted. Please reload the CAPTCHA.