---
title: Kubernetes y Private Cloud
description: Venda clústeres de Kubernetes (CKS) y Private Cloud con ancho de banda dedicado (VPC) en CloudStack: ofertas requeridas y dónde conectarlas.
url: https://nexcmp.com/es/docs/infrastructure/kubernetes-and-private-cloud/
applies_to: NexCMP 1.6.1
updated: 2026-11-02
---

# Kubernetes y Private Cloud {#kubernetes-and-private-cloud}

> **En el panel de administración:** Kubernetes: Infrastructure › Cloud provider › CloudStack › Kubernetes (CKS) (`/infra/cloudstack?tab=k8s`), luego Services › Kubernetes (Overview, Clusters, Versions, Policy). Private Cloud: Services › Private Cloud (Overview `/vpc`, VPC `/vpc/list`, Plans & pricing `/vpc/plans`). Active ambos módulos en System › Admin › License & updates.

## Qué hace {#what-it-does}

- **Kubernetes.** Los clientes crean clústeres gestionados de Kubernetes en su CloudStack con CloudStack Kubernetes Service (CKS). El plano de control es gratuito; los clientes pagan por los nodos **worker**. NexCMP crea una red y una IP pública independientes para cada clúster y mantiene separados los clústeres de cada cliente.
- **Private Cloud.** Los clientes obtienen una red privada (una VPC de CloudStack) con un router, subredes (tiers), reglas de firewall (network ACLs) y máquinas virtuales en su interior. Se comercializa por **plan de ancho de banda** con velocidad dedicada e ilimitada (por ejemplo 50, 100, 500 Mbps, 1 y 3 Gbps). Cada cliente puede tener una VPC de forma predeterminada.

Ambos se basan en [CloudStack](https://nexcmp.com/es/docs/infrastructure/cloudstack/) y utilizan su API a través de la misma conexión.

## Requisitos {#requirements}

### Kubernetes {#kubernetes}

| Elemento | Requisito |
|---|---|
| CloudStack | 4.23 (probado). CKS debe estar **habilitado** (`cloud.kubernetes.service.enabled = true`). |
| Cuenta | Una cuenta **Domain Admin** en el dominio dedicado, para que NexCMP pueda crear un proyecto de CloudStack para cada cliente y límites de recursos dentro de él. Consulte [CloudStack](https://nexcmp.com/es/docs/infrastructure/cloudstack/#create-a-dedicated-account-and-api-key). |
| `endpoint.url` | El parámetro global de CloudStack debe apuntar a su API de administración, accesible desde las VM del clúster. NexCMP muestra el valor y el resultado de una comprobación del endpoint. |
| Versiones | Al menos una entrada de versión admitida de Kubernetes con su ISO de binarios, en estado **Enabled**. Las versiones que han alcanzado el final de su vida útil no se pueden poner a la venta. |
| Oferta de plano de control | Una oferta de servicio gratuita con **exactamente 2 vCPU, 2048 MB de RAM y un límite de CPU** (`limitcpuuse = true`), visible para la cuenta. El servidor rechaza cualquier otra cosa con `cp_offering_invalid`. |
| Red | Una oferta de red aislada compatible con CKS que esté habilitada. |
| IP | Direcciones IPv4 públicas libres en el rango comercializable; cada clúster utiliza una. |
| Capacidad | Cada clúster le cuesta entre 2 y 4 GB de RAM para el plano de control y una pequeña VM de enrutador. Supervise las pestañas de capacidad. |

### Private Cloud {#private-cloud}

| Elemento | Requisito |
|---|---|
| CloudStack | 4.23 (probado) con VPC habilitado. |
| Oferta de VPC | Una oferta de VPC. Una oferta dual-stack proporciona a cada nivel un /64 de IPv6 también. |
| Ofertas de red de nivel | **Una oferta de red por plan de ancho de banda**, creada para VPC, con la **tasa de red** (Mbps) igual a la del plan, más una oferta **bloqueada** de **1 Mbps** que se aplica cuando un VPC se bloquea por falta de pago. |
| Cuenta | La cuenta dedicada (se recomienda Domain Admin). Las redes VPC permanecen en la cuenta, no en proyectos. |
| IP | Direcciones IPv4 públicas libres (cada VPC utiliza una para source NAT). |
| Espacio de direcciones | Cada VPC recibe un /16 de `10.128.0.0/9`. Mantenga ese rango sin usar en sus propias redes. |
| Depende de | CloudStack conectado; el módulo **Private Cloud**. |

## Preparar la infraestructura {#prepare-the-infrastructure}

### Kubernetes: habilitar CKS y añadir versiones {#kubernetes-enable-cks-and-add-versions}

1. Habilite el servicio y configure el endpoint, luego reinicie el servidor de administración:

   ```bash
   cmk update configuration name=cloud.kubernetes.service.enabled value=true
   cmk update configuration name=endpoint.url value=https://cloudstack.example.com/client/api
   sudo systemctl restart cloudstack-management
   ```

   El controlador del clúster invoca `endpoint.url`, por lo que debe ser una dirección accesible para las VM del clúster.

2. Cree una ISO de binarios de Kubernetes para la versión que desea vender con el script `create-kubernetes-binaries-iso.sh` del árbol de código fuente de CloudStack, alójela en un servidor web y regístrela:

   ```bash
   cmk add kubernetessupportedversion name="Kubernetes 1.35.0" semanticversion=1.35.0 \
     url=https://files.example.com/setup-v1.35.0-calico-amd64.iso zoneid=<zone-id> \
     mincpunumber=2 minmemory=2048
   cmk list kubernetessupportedversions filter=name,semanticversion,state,isostate
   ```

   Espere a que el estado de la ISO sea **Ready** y a que la versión esté **Enabled**.

3. Cree la oferta de plano de control, limitada al dominio de NexCMP:

   ```bash
   cmk create serviceoffering name=K8S-CP-2-2 displaytext="Kubernetes control plane" \
     cpunumber=2 cpuspeed=1000 memory=2048 limitcpuuse=true offerha=false domainid=<domain-id>
   ```

4. Compruebe que una oferta de red CKS esté habilitada:

   ```bash
   cmk list networkofferings state=Enabled forvpc=false filter=id,name
   ```

### Private Cloud: crear las ofertas {#private-cloud-create-the-offerings}

En la interfaz de usuario de CloudStack (**Service Offerings › Network Offerings › Add network offering**) o con `cmk`:

1. Enumere lo que tiene:

   ```bash
   cmk list vpcofferings filter=id,name,state
   cmk list networkofferings forvpc=true filter=id,name,networkrate,state
   ```

2. Utilice una oferta de VPC habilitada (dual-stack si desea IPv6). Si necesita una nueva, clone la oferta de VPC predeterminada de CloudStack y habilítela.
3. Para **cada** plan de ancho de banda que venda, cree una oferta de red **para VPC** (clone la "isolated network offering for VPC networks" predeterminada) y establezca **Network rate (Mb/s)** a la velocidad del plan: `50`, `100`, `500`, `1000`, `3000`. Habilite cada oferta.
4. Cree una oferta más con **network rate 1** (`VPC-LOCKED-1M`) para VPC bloqueados: los clientes aún podrán acceder a sus servidores mediante SSH, pero la velocidad estará limitada.
5. Anote el UUID de cada offering. NexCMP los necesita en la siguiente sección.

::: warning Los ID de offering incluidos no existen en su cloud
El formulario de Private Cloud viene precargado con UUID de offering que pertenecen a otra instalación de CloudStack. Reemplace **cada uno** con los suyos propios, o el primer pedido de VPC fallará.
:::

## Conectar en NexCMP {#connect-in-nexcmp}

### Kubernetes {#kubernetes-1}

1. Abra **Infrastructure › Cloud provider › CloudStack** y seleccione la pestaña **Kubernetes (CKS)**. La tarjeta de la derecha **CKS status on CloudStack (read-only)** muestra `kubernetesserviceenabled`, `endpoint.url` con **Endpoint check**, el network offering de CKS, la configuración de `cloud.kubernetes.*` y la lista de ISO y versiones. Haga clic en **Recheck** después de corregir cualquier elemento.
2. En **Sales config**, seleccione el **Control plane Offering** (aparecerá una advertencia si no tiene exactamente 2 vCPU / 2048 MB / CPU cap), defina **Max workers per cluster** (de 1 a 9: CKS permite 10 nodos incluyendo el nodo de control), active **Enable CKS for this backend** y haga clic en **Save**. El interruptor permanecerá deshabilitado hasta que se seleccione un offering.

      ![La pestaña Kubernetes (CKS) con el offering de control plane seleccionado y la tarjeta de estado de CKS](https://nexcmp.com/es/docs/images/infrastructure/kubernetes-and-private-cloud-01-cks.webp)

3. Abra **Services › Kubernetes › Versions** y haga clic en **Sync from CloudStack**. Active **Available for new clusters** para las versiones que comercialice, defina la predeterminada y, si lo desea, una fecha de **End of life (EOL)**.


4. Abra **Services › Kubernetes › Policy**. En **Worker plans**, agregue planes con un **Plan code** (A-Z, 0-9, guion, hasta 16 caracteres). Configure **NVMe per worker (GB)**, **Min and max workers** y los límites del clúster (clústeres activos por cuenta, creaciones por 24 horas, límite global, operaciones concurrentes de CKS). Luego, active **Sell Kubernetes (CKS)**. Debe permanecer a la venta al menos un plan.

      ![Política de Kubernetes con los planes de worker y el interruptor de ventas](https://nexcmp.com/es/docs/images/infrastructure/kubernetes-and-private-cloud-03-policy.webp)

### Private Cloud {#private-cloud-1}

1. Abra **Services › Private Cloud** (Overview). En la tarjeta de política, reemplace **VPC offering** y **Locked offering tier** con sus propios UUID. Verifique los límites (VPC por cuenta, tiers, VM y reglas ACL por VPC, saldo en horas de tarifa del plan requerido para la creación, cambios de plan por 24 horas, operaciones concurrentes donde 0 es una parada de emergencia) y los servidores DNS. Haga clic en **Save** (se solicitará un motivo).

      ![Vista general de Private Cloud con los campos de VPC offering y locked offering](https://nexcmp.com/es/docs/images/infrastructure/kubernetes-and-private-cloud-04-vpc-policy.webp)

2. Abra **Services › Private Cloud › Plans & pricing**. Para cada plan, haga clic en **Edit** y configure **VND price per month**, **On sale** y el UUID de **CloudStack tier offering** cuya tasa de red equivalga a los Mbps del plan. La fila muestra el costo y la ganancia a uso completo, lo que le permite identificar qué planes están por debajo de su costo.

      ![Diálogo de edición de plan para un plan de ancho de banda de Private Cloud](https://nexcmp.com/es/docs/images/infrastructure/kubernetes-and-private-cloud-05-vpc-plan.webp)

3. Active **Sell Private Cloud**. Para probarlo primero, agregue los ID de las cuentas de prueba a **Beta accounts**: esas cuentas podrán usar el servicio mientras el interruptor de ventas esté desactivado.

## Verificación {#verify}

1. Kubernetes: la tarjeta de estado muestra `kubernetesserviceenabled: true`, una verificación de endpoint correcta y una versión habilitada. Cree un clúster de prueba con un worker como cliente; debería pasar al estado running y `kubectl get nodes` debería mostrarlo listo. Elimínelo después: la red y la IP volverán al grupo.
2. Private Cloud: cree una VPC con el plan más pequeño como cliente de prueba. La VPC se muestra activa, un tier obtiene su subred, una VM en el tier accede a Internet a través del router de la VPC y **Change plan** a un plan superior surte efecto en unos 20 segundos sin interrumpir las conexiones.

## Límites y notas {#limits-and-notes}

- Kubernetes: los workers se facturan como VM a los precios del plan y cuentan como VM en los límites de VM. Un clúster puede tener como máximo 9 workers debido al límite de 10 nodos de CKS.
- Kubernetes: el control plane, el router y la IP pública de un clúster son gratuitos para el cliente; usted asume su costo.
- Private Cloud: todos los planes son **unmetered**. Los precios en el formulario están en dong vietnamitas por mes; la columna de costo utiliza un precio de referencia que no es el suyo, así que utilice sus propios números.
- Una VPC bloqueada está limitada a 1 Mbps, no se factura y no se elimina automáticamente.
- Private Cloud utiliza un router por VPC, no un par redundante. Si su host falla, CloudStack lo reconstruye en unos minutos.

## Resolución de problemas {#troubleshooting}

| Síntoma | Causa | Solución |
|---|---|---|
| `cp_offering_invalid` / "Esta oferta no es 2 vCPU / 2048 MB / limitcpuuse" | El offering del plano de control tiene otros tamaños o no tiene límite de CPU | Cree el offering como en el paso 3 y selecciónelo de nuevo. |
| El interruptor **Enable CKS** está desactivado | No se ha seleccionado ningún offering para el plano de control | Seleccione uno primero. |
| `kubernetesserviceenabled: false` | CKS está desactivado en CloudStack | Actívelo y reinicie el management server. |
| Falla la comprobación del endpoint | `endpoint.url` no es accesible desde las VM del clúster | Configure una URL accesible, reinicie el management server y haga clic en **Recheck**. |
| "EOL: no se puede habilitar para la venta" | La fecha de fin de vida útil de la versión ya ha pasado | Registre una versión más reciente. |
| "Sin versiones: haga clic en Sync from CloudStack" | No hay ninguna versión de Kubernetes registrada | Registre una versión y sincronice. |
| "El backend de CKS está en OFF: los clientes no pueden crear clústeres aunque el indicador de venta esté habilitado" | El interruptor de venta está activado pero el backend de CKS está desactivado | Active CKS en la pestaña CloudStack. |
| "Al menos 1 plan debe estar a la venta" | Se ha eliminado el último plan de worker | Mantenga al menos un plan o desactive la venta de Kubernetes. |
| El clúster se queda bloqueado al crearse | Capacidad insuficiente o falta una ISO | Compruebe las pestañas de capacidad y el estado de la ISO de la versión. |
| Una nueva VPC falla en el primer paso | El ID del VPC offering o del tier offering no es válido | Sustituya cada UUID de offering por uno de su CloudStack. |
| "cs_offering_id debe ser un UUID" | El ID de un offering no es un UUID | Pegue el ID desde `cmk list networkofferings`. |
| Falla el cambio de plan | El nuevo tier offering no existe o la tasa de red es incorrecta | Compruebe el UUID del offering y su tasa de red. |


