# Services & Storage

> Source: https://parallelworks.com/docs/kubernetes/services-and-storage

# Services & Storage

ACTIVATE provides a unified view of Kubernetes services, persistent storage, ConfigMaps, and Secrets across all connected clusters. You can filter, search, and inspect these resources without switching between clusters or namespaces.

## Services

Navigate to **Kubernetes > Services** in the sidebar to view all services across your clusters.

### Service Table Columns

| Column | Description |
|--------|-------------|
| **Name** | The service name. Click to view full resource details. |
| **Type** | The Kubernetes service type: `ClusterIP`, `NodePort`, `LoadBalancer`, or `ExternalName`. |
| **Namespace** | The namespace the service belongs to. |
| **Cluster** | The cluster hosting the service (hidden when filtering by a single cluster). |
| **Cluster IP** | The internal cluster IP address assigned to the service. |
| **External IP** | The external IP or hostname assigned by a load balancer, or the explicitly configured external IPs. Displays `-` if none. |
| **Ports** | Port mappings in `port:targetPort/protocol` format (e.g., `80:8080/TCP`). |
| **Created** | Relative timestamp showing when the service was created. |

### Filtering Services

Use the filter bar at the top of the services table to narrow results:

- **Clusters** — Show services from specific clusters only
- **Namespaces** — Filter by one or more namespaces
- **Types** — Filter by service type (`ClusterIP`, `NodePort`, `LoadBalancer`, `ExternalName`)
- **Search** — Free-text search across service name, namespace, cluster, cluster IP, and external IP

### Selectors

Each service includes a **selector** field that shows which pods the service targets. Selectors are displayed as comma-separated `key=value` pairs (e.g., `app=nginx,tier=frontend`). Services without selectors show an empty value.

## Persistent Volume Claims (PVCs)

Navigate to **Kubernetes > Storages** in the sidebar to view PVCs and PVs across your clusters.

PVCs represent storage requests made by pods. The storage table displays the following information for each PVC:

| Column | Description |
|--------|-------------|
| **Name** | The PVC name. Click to view full resource details. |
| **Status** | Binding status: `Bound`, `Pending`, or `Failed`. |
| **Type** | Displays `PVC`. |
| **Namespace** | The namespace the PVC belongs to. |
| **Cluster** | The cluster hosting the PVC. |
| **Capacity** | The provisioned storage capacity (e.g., `10Gi`). |
| **Access** | Access mode abbreviations: `RWO` (ReadWriteOnce), `ROX` (ReadOnlyMany), `RWX` (ReadWriteMany), `RWOP` (ReadWriteOncePod). |
| **Storage Class** | The storage class used for provisioning (e.g., `standard`, `gp3`). |
| **Used By** | The pod currently using this PVC. Click the pod name to navigate to the pod details. |
| **Created** | Relative timestamp showing when the PVC was created. |

### Access Mode Reference

| Abbreviation | Full Name | Description |
|-------------|-----------|-------------|
| `RWO` | ReadWriteOnce | Volume can be mounted as read-write by a single node |
| `ROX` | ReadOnlyMany | Volume can be mounted as read-only by many nodes |
| `RWX` | ReadWriteMany | Volume can be mounted as read-write by many nodes |
| `RWOP` | ReadWriteOncePod | Volume can be mounted as read-write by a single pod |

## Persistent Volumes (PVs)

PVs are cluster-scoped storage resources. They appear alongside PVCs in the same storage table.

| Column | Description |
|--------|-------------|
| **Name** | The PV name. |
| **Status** | Volume phase: `Available`, `Bound`, `Released`, or `Failed`. |
| **Type** | Displays `PV`. |
| **Namespace** | Displays `-` (PVs are cluster-scoped). |
| **Cluster** | The cluster hosting the PV. |
| **Capacity** | The total storage capacity of the volume. |
| **Access** | Supported access modes (same abbreviations as PVCs). |
| **Storage Class** | The storage class of the volume. |
| **Reclaim Policy** | What happens when the PVC is deleted: `Retain`, `Delete`, or `Recycle`. |
| **Created** | Relative timestamp showing when the PV was created. |

### Filtering Storage

Use the filter bar to narrow storage results:

- **Clusters** — Show storage from specific clusters only
- **Namespaces** — Filter by namespace (applies to PVCs only)
- **Types** — Filter by `PVC` or `PV`
- **Status** — Filter by status: `Bound`, `Pending`, `Available`, `Released`, or `Failed`
- **Search** — Free-text search across name, namespace, cluster, storage class, volume name, and claim reference

:::info Admin Access Required
PVs are cluster-scoped resources and only appear when querying across all namespaces (admin users). Non-admin users see only PVCs within their accessible namespaces.
:::

## ConfigMaps & Secrets

Navigate to **Kubernetes > ConfigMaps & Secrets** in the sidebar to view configuration data across your clusters.

### ConfigMap and Secret Table Columns

| Column | Description |
|--------|-------------|
| **Name** | The resource name. Click to view full details including key-value data. |
| **Type** | Either `ConfigMap` or `Secret`. |
| **Namespace** | The namespace the resource belongs to. |
| **Cluster** | The cluster hosting the resource. |
| **Data** | Number of keys in the resource (e.g., `3 keys`). |
| **Created** | Relative timestamp showing when the resource was created. |

### ConfigMaps

ConfigMaps store non-confidential configuration data as key-value pairs. When you click a ConfigMap name, you can view:

- All keys and their values
- Binary data keys (marked with a `(binary)` suffix)
- Labels attached to the ConfigMap
- Which deployments reference the ConfigMap (via volume mounts or `envFrom`)

### Secrets

Secrets store sensitive data such as passwords, tokens, and TLS certificates. ACTIVATE displays:

- The list of keys contained in the secret (values are not exposed in the listing)
- The secret type (e.g., `Opaque`, `kubernetes.io/tls`, `kubernetes.io/dockerconfigjson`)
- Which deployments reference the secret
- Labels attached to the secret

:::warning Filtered Tokens
Service account tokens are automatically filtered out from the secrets list to reduce noise. Only application-level secrets are shown.
:::

### Filtering ConfigMaps & Secrets

- **Clusters** — Show configs from specific clusters only
- **Namespaces** — Filter by one or more namespaces
- **Types** — Filter by `ConfigMap` or `Secret`
- **Search** — Free-text search across name, namespace, and cluster

## Cross-Cluster Queries

All resource views in this section aggregate data from every connected cluster by default. The response metadata includes:

- **Total clusters queried** — How many clusters were contacted
- **Successful clusters** — How many clusters responded successfully
- **Total resources** — The combined count of resources returned

If a cluster is unreachable, the other clusters still return their results and the error is noted in the response metadata. This ensures partial availability does not block the entire view.

## See Also

- [Managing Workloads](/docs/kubernetes/managing-workloads) — View and manage Deployments, StatefulSets, and other workload types
- [Connecting Clusters](/docs/kubernetes/connecting-clusters) — Add clusters to enable cross-cluster resource views
