Service types and ports
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:
- LoadBalancer (Default)
- NodePort
- ClusterIP
Create 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
Update 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
Service types are controlled at the pipeline level. If you want to update the service type for a particular port, you'll need to update the entire pipeline's service type, which also impacts any other ports within that pipeline.
Verify 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'