Como configurar a alocação de CPU

Saiba como especificar o número de CPUs a serem alocadas para cada instância de contêiner do Knative serving. Por padrão, o Knative serving não especifica um número mínimo ou máximo de CPUs. Em vez disso, seus serviços são limitados pela quantidade de recursos disponíveis. Saiba mais sobre os recursos da CPU no contrato de ambiente de execução do contêiner.

Como configurar e atualizar a alocação de CPU

Qualquer mudança na configuração leva à criação de uma nova revisão. As próximas revisões também recebem essa configuração de modo automático, a menos que você faça atualizações explícitas para alterar esse comportamento.

É possível definir a alocação de CPU usando o console do Google Cloud, a Google Cloud CLI ou um arquivo YAML ao implantar um novo serviço ou atualizar um que já existe e implantar uma revisão:

Console

  1. Acesse o Knative serving no console do Google Cloud:

    Acessar o Knative serving

  2. Clique em Criar serviço se estiver configurando um novo serviço em que fará uma implantação. Se você estiver configurando um serviço atual, clique nele e em Editar e implantar uma nova revisão.

  3. Em Configurações avançadas, clique em Contêiner.

  4. Selecione a alocação de CPU que você quer na lista suspensa. É possível selecionar números em Unidades de CPU do Kubernetes. Por exemplo, especifique 1 para uma CPU, 400m para 0,4 CPU e assim por diante.

  5. Clique em Avançar para acessar a próxima seção.

  6. Na seção Configurar como este serviço é acionado, selecione qual conectividade você quer usar para invocar o serviço.

  7. Clique em Criar para implantar a imagem no Knative serving e aguarde até que a implantação seja concluída.

Linha de comando

  • Para serviços existentes, defina o número de CPUs a serem alocadas executando o comando gcloud run services update com o parâmetro --cpu:

    gcloud run services update SERVICE --cpu CPU

    Substitua:

    • SERVICE pelo nome do serviço;
    • CPU pela alocação de CPU que você quer. Especifique um valor em Unidades de CPU do Kubernetes. Por exemplo, especifique 1 para uma CPU, 400m para 0,4 CPU e assim por diante.
  • Para novos serviços, defina o número de CPUs a serem alocadas executando o comando gcloud run deploy com o parâmetro --cpu:

    gcloud run deploy SERVICE --image=IMAGE_URL --cpu CPU

    Substitua:

    • SERVICE pelo nome do serviço;
    • IMAGE_URL por uma referência à imagem de contêiner. Por exemplo, gcr.io/cloudrun/hello;
    • CPU pela alocação de CPU que você quer. Especifique um valor em Unidades de CPU do Kubernetes. Por exemplo, especifique 1 para uma CPU, 400m para 0,4 CPU e assim por diante.

YAML

Faça o download da configuração de um serviço existente para um arquivo YAML com o comando gcloud run services describe usando a sinalização --format=export. Em seguida, modifique o arquivo YAML e implante essas alterações com o comando gcloud run services replace. Modifique apenas os atributos especificados.

  1. Faça o download da configuração do serviço em um arquivo chamado service.yaml no espaço de trabalho local:

    gcloud run services describe SERVICE --format export > service.yaml

    Substitua SERVICE pelo nome do seu serviço do Knative serving.

  2. No seu arquivo local, atualize o atributo cpu:

    apiVersion: serving.knative.dev/v1
    kind: Service
    metadata:
      name: SERVICE
    spec:
      template:
        spec:
          containers:
          - image: IMAGE
            resources:
              limits:
                cpu: CPU

    Substituir

    • SERVICE pelo nome do serviço do Knative serving
    • IMAGE pelo URL da imagem de contêiner.
    • CPU pelo valor de CPU que você usará. Especifique um valor em Unidades de CPU do Kubernetes. Por exemplo, especifique 1 para uma CPU, 400m para 0,4 CPU e assim por diante.
  3. Substitua o serviço pela nova configuração usando o seguinte comando:

    gcloud run services replace service.yaml