Este tutorial descreve como usar a API para migrar uma implantação do MongoDB para uma nova versão do MongoDB. Essas etapas pressupõem que você tenha uma implantação existente que usa uma versão 4.0.6 do MongoDB, como seria o caso se você usasse o tutorial para Implantar um cluster por meio da API.
Observação
Grupos e projetos são termos sinônimos. Seu {PROJECT-ID} é igual ao ID do seu projeto. Para grupos existentes, o ID do grupo/projeto permanece o mesmo. Esta página usa o termo grupo, que é mais familiar, ao se referir a descrições. O ponto de extremidade permanece conforme indicado no documento.
Considerações
A API suporta a maioria das configurações e parâmetros do MongoDB para as versões 2.6 do MongoDB e posteriores. Para saber mais, consulte Suporte a configurações e automação do MongoDB .
Aviso
Atualizações do MongoDB 5.0 para 6.0
Ao atualizar um cluster fragmentado do MongoDB 5.0 6.0para, você deve usar o procedimento na página Atualizar um cluster fragmentado para.60 do Manual do MongoDB para atualizar a tabela de roteamento em cache para mongos cada.
Variáveis para recursos de API para atualizar a versão MongoDB
Os recursos da API usam uma ou mais dessas variáveis. Substitua essas variáveis pelos valores desejados antes de chamar esses recursos da API.
Nome | Tipo | Descrição |
|---|---|---|
| string | Sua chave de API pública para suas credenciais de API. |
| string | Sua chave de API privada para suas credenciais de API . |
| string | URL da sua instância do Ops Manager. |
| string | Identificador único do seu projeto a partir das configurações do projeto. |
| string | Identificador único do seu cluster. |
Pré-requisitos
Você deve ter credenciais para acessar o Ops Manager como um usuário com a role Global Owner .
Procedimento
Recupere a configuração de automação do Ops Manager.
Use o recurso automationConfig para recuperar a configuração. Emita o seguinte comando, substituindo os espaços reservados pelas variáveis para recursos de API para atualizar a versão MongoDB.
curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \ --request GET "https://<OpsManagerHost>:<Port>/api/public/v1.0/groups/{PROJECT-ID}/automationConfig?pretty=true" \ --output currentAutomationConfig.json Valide o arquivo de configuração de automação baixado.
Verifique se o conteúdo dos arquivos
currentAutomationConfig.jsonemms-cluster-config-backup.jsonestá atualizado.Você pode encontrar o arquivo
mms-cluster-config-backup.jsonem qualquer host que esteja executando o MongoDB Agent em:Linux e macOS:
/var/lib/mongodb-mms-automation/mms-cluster-config-backup.jsonWindows:
%SystemDrive%\MMSAutomation\versions\mms-cluster-config-backup.json
Abra o documento de configuração para edição.
Ao editar o documento de configuração nas próximas etapas, consulte a descrição de uma configuração de automação para obter descrições detalhadas das configurações.
Envie a configuração de automação atualizada.
Use o recurso automationConfig para enviar a configuração de automação atualizada.
Emita o comando a seguir com o caminho para o documento de configuração atualizado e substitua os espaços reservados pelas variáveis para recursos de API para atualizar a versão do MongoDB.
curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \ --header "Content-Type: application/json" \ --request PUT "https://<OpsManagerHost>:<Port>/api/public/v1.0/groups/{PROJECT-ID}/automationConfig?pretty=true" \ --data @currentAutomationConfig.json
Após a atualização bem-sucedida da configuração, a API retorna o código de status HTTP 200 OK para indicar que a solicitação foi bem-sucedida.
Confirme a atualização bem-sucedida da configuração de automação.
Recupere a configuração de automação do Ops Manager e confirme se ela contém as alterações. Para recuperar a configuração, emita o seguinte comando, substituindo os espaços reservados pelas Variáveis de Recursos de API para Atualizar a Versão MongoDB.
curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \ --request GET "https://<OpsManagerHost>:<Port>/api/public/v1.0/groups/{PROJECT-ID}/automationConfig?pretty=true"
Verifique o status do sistema para garantir que o estado do objetivo seja atingido.
Use o recurso automationStatus para recuperar o status do sistema. Emita o seguinte comando, substituindo os espaços reservados pelas variáveis para recursos de API para atualizar a versão MongoDB.
curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \ --request GET "https://<OpsManagerHost>:<Port>/api/public/v1.0/groups/{PROJECT-ID}/automationStatus?pretty=true"
Confirme que os valores de todos os campos lastGoalVersionAchieved na array processes correspondem ao campo goalVersion . Para saber mais sobre o status da implementação, consulte Obter o status de automação do plano mais recente.