Todos os produtos
Search
Central de documentação

Container Service for Kubernetes:Compare runC and Sandboxed-Container (runV)

Última atualização: Jun 27, 2026

Este tópico compara o desempenho e os métodos de criação de pods do runC e do Sandboxed-Container (runV) para que você compreenda os benefícios do sandbox e utilize o Sandboxed-Container com eficiência.

Comparação entre runC e runV

Configuração

runC

runV

Mecanismo de contêiner

Docker e containerd

containerd

Tipo de nó

Instâncias do Elastic Compute Service (ECS) e ECS Bare Metal (EBM)

Instâncias EBM

Kernel do contêiner

Compartilha o kernel do host

Usa um kernel dedicado

Isolamento do contêiner

Grupos de controle (cgroups) e namespaces

VMs leves

Graph Driver do Rootfs

OverlayFS

OverlayFS

Limitação de I/O do RootFS

cgroups

Sem suporte

Montagem de NAS

Sem suporte

Com suporte

Montagem de disco

Sem suporte

Sem suporte

Coleta de logs do contêiner

O Logtail coleta logs diretamente do nó

Logtail Sidecar

Overhead do pod

N/A

Memória = 64 MiB + (solicitação de memória do pod × 2%). Máximo: 512 MiB. Mínimo: 64 MiB.

Overhead do pod no runV

Cada pod runV gera overhead de memória para a VM leve e os componentes convidados.

Fórmula: memória de overhead do pod = 64 MiB + solicitação de memória do pod × 2%, limitada a 512 MiB e com piso de 64 MiB.

A memória total visível corresponde à solicitação de memória do pod mais o overhead, menos uma pequena reserva do sistema. A contagem de CPU também difere da do host.

Limitações do runV

O runV não oferece suporte aos seguintes recursos:

  • Limitação de I/O do RootFS: a limitação baseada em cgroup não está disponível para rootfs.

  • Montagem de disco: não é possível montar discos persistentes diretamente.

  • Coleta direta de logs: o Logtail não coleta logs diretamente do nó. Use o Logtail Sidecar.

Crie um pod com runC

Pré-requisitos

Crie o pod

  1. Crie um pod com runC:

    Nota

    Definir runtimeClassName: runc é opcional. O runC é o runtime padrão.

    cat <<EOF | kubectl create -f -
    apiVersion: v1
    kind: Pod
    metadata:
      name: busybox-runc
      labels:
        app: busybox-runc
    spec:
      containers:
      - name: busybox
        image: registry.cn-hangzhou.aliyuncs.com/acs/busybox:v1.29.2
        command:
        - tail
        - -f
        - /dev/null
        resources:
          limits:
            cpu: 1000m
            memory: 512Mi
          requests:
            cpu: 1000m
            memory: 512Mi
    EOF

Crie um pod com runV

Pré-requisitos

Crie o pod

  1. (Opcional) Verifique se a RuntimeClass runv existe no cluster:

    kubectl get runtimeclass runv -o yaml
    Nota

    Uma RuntimeClass runv é criada automaticamente em clusters ACK com Sandboxed-Container.

  2. Crie um pod com runV:

    Importante

    O campo nodeSelector é obrigatório para versões do Kubernetes anteriores à 1.16 e opcional para a versão 1.16 e posteriores.

    cat <<EOF | kubectl create -f -
    apiVersion: v1
    kind: Pod
    metadata:
      name: busybox-runv
      labels:
        app: busybox-runv
    spec:
      runtimeClassName: runv
      nodeSelector:
        alibabacloud.com/container-runtime: Sandboxed-Container.runv
      containers:
      - name: busybox
        image: registry.cn-hangzhou.aliyuncs.com/acs/busybox:v1.29.2
        command:
        - tail
        - -f
        - /dev/null
        resources:
          limits:
            cpu: 1000m
            memory: 512Mi
          requests:
            cpu: 1000m
            memory: 512Mi
    EOF
  3. Verifique se o pod está em execução em um sandbox:

    kubectl get pod busybox-runv -o jsonpath={.spec.runtimeClassName}

    Se a saída exibir runv, o pod estará em execução dentro de um sandbox.

  4. Acesse o pod para verificar a CPU e a memória:

    kubectl exec -ti pod busybox-runv /bin/sh
    / # cat /proc/meminfo | head -n1
    MemTotal:        1130692 kB
    / # cat /proc/cpuinfo | grep processor
    processor    : 0

    A contagem de CPUs difere da do host. A memória total equivale à memória do pod somada ao overhead, menos o uso do sistema.

Próximos passos