Otimize seu uso do GKE com insights e recomendações


Com o Google Kubernetes Engine (GKE), você recebe orientações prescritivas sobre como otimizar os clusters.

O GKE monitora seus clusters e, se houver possíveis otimizações, a orientação será fornecida por meio do Recomendador, um serviço do Google Cloud que gera insights e recomendações para usar recursos no Google Cloud. Para o GKE, os recomendadores fornecem dois tipos de informações:

  • Um insight explica que o GKE detectou que é possível otimizar o uso do cluster de alguma forma.
  • Uma recomendação explica como otimizar o uso do cluster.

O GKE fornece essas informações no Console do Google Cloud, e também é possível encontrá-las com a Google Cloud CLI e a API Recommender. O GKE fornece Recomendadores para tópicos como:

Antes de começar

Antes de começar, verifique se você realizou as tarefas a seguir:

  • Ativar a API Google Kubernetes Engine.
  • Ativar a API Google Kubernetes Engine
  • Se você quiser usar a Google Cloud CLI para essa tarefa, instale e, em seguida, inicialize a CLI gcloud. Se você instalou a CLI gcloud anteriormente, instale a versão mais recente executando gcloud components update.

Funções exigidas

Verifique se você tem as permissões necessárias para gerar insights e recomendações de suspensão de uso do Kubernetes, com os seguintes papéis básicos ou predefinidos:

Ver insights e recomendações

É possível visualizar insights e recomendações com o Google Cloud CLI, no console do Google Cloud ou com o recomendador de API.

Console

  1. Acesse a página do Google Kubernetes Engine no Console do Google Cloud:

    Acessar o Google Kubernetes Engine

  2. Verifique se há clusters específicos na coluna Notificações para encontrar insights.

  3. Clique no insight para ver mais informações. No painel da barra lateral revelada, é possível ver detalhes sobre esse insight, incluindo qualquer recomendação associada.

gcloud

Um insight geralmente tem uma recomendação correspondente. Os insights são buscados com gcloud recommender insights, e as recomendações são coletadas com gcloud recommender recommendations.

  1. Veja a lista de insights dos clusters de uma zona específica (para clusters zonais) ou uma região específica (para clusters regionais):

    gcloud recommender insights list \
        --insight-type=google.container.DiagnosisInsight \
        --location=LOCATION \
        --project=PROJECT_ID \
        --format=FORMAT \
        --filter="insightSubtype:SUBTYPE"
    

    Substitua:

    • PROJECT_ID: o ID do projeto do Google Cloud do projeto em que os clusters estão localizados.
    • LOCATION: a região ou zona exata do cluster. Para clusters zonais, é preciso fornecer a zona exata (por exemplo, us-central1-c). Para clusters regionais, você precisa fornecer a região exata (por exemplo, us-central1).
    • FORMAT: altere o formato de saída para YAML. Essa flag é opcional.
    • SUBTYPE: um subtipo de insight, por exemplo, DEPRECATION_K8S_1_23_CERTIFICATE. Isso limita a saída a insights de um subtipo especificado. Essa flag é opcional.

    Ou, se você já tiver um ID de insight, é possível ver detalhes sobre o insight executando o seguinte comando:

    gcloud recommender insights describe INSIGHT \
        --insight-type=google.container.DiagnosisInsight \
        --location=LOCATION \
        --project=PROJECT_ID \
        --format=FORMAT
    

    Substitua INSIGHT pelo valor do ID do insight, especificado no fim do URL do campo name.

    A saída inclui outros detalhes sobre o comportamento detectado pelo GKE no cluster.

  2. Confira a lista de recomendações para o cluster de uma zona específica (para clusters zonais) ou uma região específica (para clusters regionais):

    gcloud recommender recommendations list \
        --recommender=google.container.DiagnosisRecommender \
        --location=LOCATION \
        --project=PROJECT_ID \
        --format=FORMAT \
        --filter="recommenderSubtype:SUBTYPE"
    

    Substitua SUBTYPE por um subtipo de recomendador, por exemplo, DEPRECATION_K8S_1_23_CERTIFICATE. Isso limita a saída a recomendações de um subtipo especificado. Essa flag é opcional.

    Ou, se você já tiver um ID de recomendação, visualize a recomendação executando o seguinte comando:

    gcloud recommender recommendations describe RECOMMENDATION_ID \
        --recommender=google.container.DiagnosisRecommender \
        --location=LOCATION \
        --project=PROJECT_ID \
        --format=FORMAT
    

    Substitua RECOMMENDATION_ID pelo valor salvo de associatedRecommendations.recommendation da saída do comando na Etapa 1.

    A saída fornece orientações sobre qual ação pode ser necessária para otimizar o uso do GKE do cluster.

API

Cada insight tem uma recomendação correspondente. Os insights são buscados com o recurso REST: projects.locations.insightTypes.insights, e as recomendações são buscadas com o recurso REST: projects.locations.recommenders.recommendations.

  1. Veja a lista de insights dos clusters de uma zona específica (para clusters zonais) ou uma região específica (para clusters regionais):

    GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/insightTypes/google.container.DiagnosisInsight/insights?filter=insightSubtype%20%3D%20SUBTYPE
    

    Substitua:

    • PROJECT_ID: o ID do projeto do Google Cloud do projeto em que os clusters estão localizados.
    • LOCATION: a região ou zona exata do cluster. Para clusters zonais, é preciso fornecer a zona exata (por exemplo, us-central1-c). Para clusters regionais, você precisa fornecer a região exata (por exemplo, us-central1).
    • SUBTYPE: um subtipo de insight, por exemplo, DEPRECATION_K8S_1_23_CERTIFICATE. Isso limita a saída a insights de um subtipo especificado. Essa flag é opcional.

    Ou, se você já tiver um ID de insight, é possível consultar detalhes sobre o insight realizando a seguinte solicitação:

    GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/insightTypes/google.container.DiagnosisInsight/insights/INSIGHT
    

    Substitua INSIGHT pelo valor do ID do insight, especificado no fim do URL do campo name.

    O corpo da resposta inclui detalhes sobre o comportamento que o GKE detectou com o cluster.

  2. Confira a lista de recomendações para o cluster de uma zona específica (para clusters zonais) ou uma região específica (para clusters regionais):

    GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/recommenders/google.container.DiagnosisRecommender/recommendations?filter=recommenderSubtype%20%3D%20SUBTYPE
    

    Substitua SUBTYPE por um subtipo de recomendador, por exemplo, DEPRECATION_K8S_1_23_CERTIFICATE. Isso limita a saída a recomendações de um subtipo especificado. Essa flag é opcional.

    Ou então, se você já tiver um ID de recomendação, é possível visualizar a recomendação fazendo a seguinte solicitação:

    GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/recommenders/google.container.DiagnosisRecommender/recommendations/RECOMMENDATION_ID
    

    Substitua RECOMMENDATION_ID pelo valor salvo de associatedRecommendations.recommendation do corpo da resposta na Etapa 1.

    O corpo da resposta fornece orientações sobre qual ação pode ser necessária para otimizar o uso do GKE do cluster.

Exportar insights e recomendações para o BigQuery

É possível usar o BigQuery para exportar e analisar insights de descontinuação e recomendações para toda a organização. Para saber mais, consulte Exportar recomendações para o BigQuery.

Resolver recomendações

Se você implementou uma recomendação, marque-a como resolvida no Console do Google Cloud. Quando você marca uma recomendação como resolvida, ela não aparece mais para nenhum usuário no console. Depois de resolver a recomendação, se o GKE detectar o mesmo comportamento para esse cluster, o recomendador exibirá a recomendação novamente. Quando você resolve uma recomendação, ela permanece detectável com a Google Cloud CLI e a API Recommender.

É possível marcar uma recomendação como resolvida porque, dependendo de como o recomendador funciona, talvez ela continue sendo exibida por um período após a implementação.

Para marcar uma recomendação como resolvida, siga as instruções em Como visualizar insights e recomendações de descontinuação no console do Google Cloud para abrir o painel da barra lateral, que tem mais detalhes. Nesse painel, clique no botão Marcar como resolvida.

Dispensar ou restaurar recomendações

Se você não quiser mais ver uma recomendação de descontinuação de um cluster no console do Google Cloud, dispense-a. Você pode fazer isso, por exemplo, se avaliou a recomendação e decidiu não implementá-la.

Se você dispensar a recomendação, ela não aparecerá para nenhum usuário que estiver visualizando o cluster no console. Depois de dispensar a recomendação, ela não aparecerá novamente, mesmo que o GKE detecte o mesmo comportamento.

Ao dispensar uma recomendação, ela só será ocultada para todos os usuários no console. No entanto, a recomendação permanece detectável com a Google Cloud CLI e a API Recommender.

Dispensar uma recomendação

Para dispensar a recomendação, siga as instruções em Como visualizar insights e recomendações de descontinuação no console do Google Cloud para abrir o painel da barra lateral, que tem mais detalhes. Nesse painel, clique no botão Dispensar.

Restaurar uma recomendação dispensada

É possível restaurar uma recomendação dispensada seguindo as instruções em Como restaurar uma recomendação.

A seguir