> ## Documentation Index
> Fetch the complete documentation index at: https://docs.scitix.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Create and manage Service

> Create a stable access entry point for a group of Pods, and view or delete Services that are no longer in use.

A Service selects a set of Pods by labels and provides them with a stable access address. When workloads are scaled or Pods change, clients can still access Pods that meet the selection criteria through the Service. To configure HTTP or HTTPS routing with Ingress, you must first create a Service as the backend.

## Create Service

1. Log in to the [GPU Cloud console](https://console.scitix.ai/gpu-cloud/home) and go to the **Clusters** page.

2. Click the target cluster name to open the cluster workspace.

3. In the left navigation pane, go to the **Network** page and switch to the **Services** tab.

4. Click **Create**.

5. Configure Service.

   | Parameter | Description |
   | - | - |
   | **Name** | Set the Service name. The name should reflect the application or workload being accessed. |
   | **Namespace** | Select the namespace to which the Service belongs. When selecting Pods by labels, the Service and Pods must be in the same namespace. |
   | **Labels** | Optional. Add labels to the Service resource to identify or filter Services. The labels here do not determine which Pods traffic is forwarded to. |
   | **Spec (YAML)** | Enter the Kubernetes spec for the Service. Enter only the content under `spec`; you do not need to enter `apiVersion`, `kind`, or `metadata`. Here, `selector` is used to select backend Pods, and `ports` is used to configure the mapping between Service ports and Pod ports. |

   The following example creates a Service of type `ClusterIP`, forwarding port 80 of the Service to port 8080 of Pods labeled `app: example-app`. `ClusterIP` is suitable for accessing workloads within the cluster and can also serve as a backend Service for Ingress.

   ```yaml theme={null}
   type: ClusterIP
   selector:
     app: example-app
   ports:
     - name: http
       protocol: TCP
       port: 80
       targetPort: 8080
   ```

   Modify the example based on the actual labels and listening ports of the workload:

   | Field | Description |
   | - | - |
   | `type` | The Service type. This example uses `ClusterIP`, which provides an access endpoint only within the cluster. |
   | `selector` | Selects the backend Pods. The key-value pairs must match the labels of the target Pods; otherwise, the Service cannot forward requests to the target Pods. |
   | `port` | The port exposed by the Service to clients. |
   | `targetPort` | The port on which the application in the backend Pod actually listens. |

6. Click **Create**, then verify that the Service has been created.

## View Service

1. On the **Services** tab, filter by namespace or use the Search box to locate the target Service.

2. In the **Actions** column of the target Service, click **View**.

3. Check the Service type, label selector, and port mappings to ensure that they point to the expected Pods and application ports.

If the Service has been created but the workload cannot be accessed, first check whether `selector` matches the Pod labels and whether `targetPort` is the port actually listened on by the application.

## Delete Service

> [!WARNING]
>
> Deleting a Service removes the access endpoint it provides and interrupts in-cluster access or Ingress routing that depends on it. Deleting a Service does not delete its backend Pods.

1. On the **Services** tab, locate the target Service.

2. In the **Actions** column for the target Service, click **Delete**.

3. Confirm the deletion.

When HTTP or HTTPS access needs to be provided through a domain name or path, see [Expose Cluster Services Using Ingress](https://docs.scitix.ai/gpu-cloud/cluster/expose-services-with-ingress.md).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.