Avaliar e migrar o Cloud Foundry

Este documento explica como realizar uma avaliação da fundação atual do Cloud Foundry (CF) e como migrar uma fundação, uma organização, um espaço ou um aplicativo do CF para o Kf.

Avaliação de adequação à migração

Use o comando kf migrate scan-cf-cluster para gerar um relatório com uma avaliação da prontidão de migração de uma fundação do CF. Você pode formatar o relatório como uma planilha (recomendado) ou um arquivo de texto.

Pré-requisitos

Realizar uma avaliação

  1. Valide a fundação que será segmentada.

    cf curl /v2/info
  2. Execute o comando para gerar uma planilha com o relatório de avaliação.

    kf migrate scan-cf-cluster report.xlsx
  3. Revise a avaliação.

    Se você planeja compartilhar a avaliação, é possível editar informações que não quer compartilhar.

Migração

Execute as etapas a seguir para migrar entidades do CF:

  1. Crie um plano que descreva a migração.

  2. Edite o plano para personalizar sua migração.

  3. Aplique o plano para realizar a migração.

As seções a seguir descrevem essas etapas em mais detalhes.

Escopos de migração

Sua primeira decisão ao realizar a migração é definir o escopo da migração. O escopo determina a entidade do CF que você quer migrar e os privilégios necessários para realizar a migração:

  • Fundação ou organização inteira: você precisa ter privilégios somente leitura de administrador ou mais altos na fundação do CF.

  • Apenas um espaço ou aplicativo: é necessário ter privilégios de desenvolvedor de espaço ou mais altos.

Pré-requisitos

Para realizar a migração, é necessário:

  • Criar o plano de migração: a CLI do Kf. Veja as instruções de instalação em Instalar a CLI do Kf.
  • Aplicar o plano de migração: um cluster do GKE executando o Kf. Veja as instruções de instalação em Instalar o Kf.
  • Acesso a um cluster com uma instalação do Cloud Foundry.
  • A CLI do CF que segmentou a fundação do CF.
  • Os privilégios na fundação do CF exigidos pelo escopo de migração desejado, conforme mostrado acima.

Criar um plano de migração

Use o comando kf migrate plan para criar o plano de migração.

Por padrão, o comando grava o plano de migração na saída padrão. Normalmente, você redireciona a saída para um arquivo yaml para personalizar o plano antes de aplicá-lo. Por exemplo, o comando a seguir grava a saída na saída padrão:

kf migrate plan

Redirecione a saída para um arquivo yaml:

kf migrate plan > plan.yaml

Ao executar o comando kf migrate plan, você verá a saída na janela de comando no formulário abaixo, listando as etapas realizadas pelo comando e quaisquer avisos ou problemas na migração:

kf migrate plan > plan.yaml

    Checking CF CLI is available
    Checking CF CLI is authenticated
    ...

    WARNING: plan has issues
    Issues with domain "apps.internal" in space "kf-team-acceptance":
        E04 - internal domains are not supported

    Issues with application "spring-music" in space "kf-team-app":
        E14 - app manifest must have a single process

    Issues with service instance "logspinner-1" in space "kf-team-app":
        E10 - syslog drain configuration is not supported
    ...

Gerar um plano de migração

  1. Verifique se você fez login na fundação do CF usando a CLI do CF.

  2. Realize a migração com base no escopo desejado, em que:

    • MY_ORG especifica o nome da organização.
    • MY_SPACE especifica o nome do espaço.
    • MY_APP especifica o nome do app.
    1. Gere um plano de migração para uma fundação do CF inteira.

      kf migrate plan > plan.yaml
    2. Gere um plano de migração para uma organização.

      kf migrate plan --cf-org MY_ORG > plan.yaml
    3. Gere um plano de migração para um espaço

      kf migrate plan --cf-org MY_ORG --cf-space MY_SPACE > plan.yaml
    4. Gere um plano de migração para um app.

      kf migrate plan --cf-org MY_ORG --cf-space MY_SPACE --cf-app MY_APP > plan.yaml

Se você vir o seguinte erro depois de executar um destes comandos:

You are not authorized to perform the requested action CF-NotAuthorized 10003

Você não tem os privilégios necessários para ler os endpoints da CAPI necessários.

Editar o plano de migração

Revise e modifique opcionalmente o plano de migração gerado para resolver eventuais erros.

Aplicar o plano de migração

Use o comando kf migrate apply para aplicar o plano de migração e migrar a entidade do CF:

  1. Verifique se você definiu .kubeconfig para segmentar o cluster do Kf.

  2. Verifique se você tem acesso a um cluster do GKE executando uma instalação completa do Kf. Isso significa que você executou o seguinte comando para se conectar ao cluster:

    gcloud container clusters get-credentials CLUSTER_NAME \
       --project=CLUSTER_PROJECT_ID \
       --zone=CLUSTER_LOCATION
  3. Verifique se não há nomes de espaços existentes no cluster do Kf que entrem em conflito com um espaço referenciado no plano de migração.

    Os nomes dos espaços têm o formato cf-org-cf-space. Por exemplo, se o nome da organização for myorg e o nome do espaço for myspace, o espaço do Kf será myorg-myspace.

  4. Aplique o plano de migração.

    kf migrate apply -v --plan plan.yaml

    A sinalização detalhada -v é recomendada, mas não obrigatória. Essa sinalização faz com que o comando gere os comandos do Kf usados para realizar a migração.