Service types for ports

Service Types

A pipeline in Calyptia Core can be associated with multiple ports. To list these ports, you can use the following command:

calyptia get endpoints --pipeline $PIPELINE_ID

These ports are mapped to corresponding Kubernetes services.

Kubernetes services can be of various types, as described here (opens in a new tab). In the context of Calyptia Core, you have the flexibility to configure the type of service utilized by a pipeline. The service types supported by Calyptia Core include:

  • NodePort
  • ClusterIP
  • LoadBalancer (This is the default type)

Creating a Pipeline with a Specific Service Type

When creating a pipeline, you can specify the desired service type using the following command:

calyptia create pipeline --name $PIPELINE_NAME --core-instance $CORE_INSTANCE_NAME --config-file ./config.yaml --service-type=LoadBalancer

Updating the Service Type of an Existing Pipeline

To update the service type of an existing pipeline, use:

calyptia update pipeline $PIPELINE_NAME --service-type=LoadBalancer

If you need to modify the service type for a specific port (endpoint), the following command can be used:

calyptia update endpoint $ENDPOINT_NAME_OR_ID --service-type=NodePort

Verifying the Service Type in Kubernetes

To check the type of service within your Kubernetes cluster, you can use:

kubectl get svc -A -o json | jq '.items[] | .metadata.name, .spec.type'