As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Gerenciamento de scripts
A AWS solução Cloud Migration Factory on permite que os usuários gerenciem totalmente a biblioteca de scripts ou pacotes de automação na interface do usuário. Você pode fazer upload de novos scripts personalizados, bem como de novas versões do script, usando a interface de gerenciamento de scripts. Quando várias versões estão disponíveis, um administrador pode alternar entre essas versões, permitindo testar as atualizações antes de torná-las padrão. A interface de gerenciamento de scripts também permite que os administradores baixem pacotes de scripts para atualizar ou revisar o conteúdo.
Um pacote de script compatível é um arquivo zip compactado contendo os seguintes arquivos obrigatórios na raiz:
-
Package-Structure.yml — Usado para definir os argumentos do script e outros metadados, como descrição e nome padrão. Consulte Composição de um novo pacote de scripts para obter mais detalhes.
-
[script python personalizado] .py — Esse é o script inicial que será executado quando um trabalho for enviado. Esse script pode chamar outros scripts e módulos e, em caso afirmativo, eles devem ser incluídos no arquivo. O nome desse script deve corresponder ao valor especificado na
MasterFileName
chave noPackage-Structure.yml
.
Carregar novo pacote de scripts
nota
Um pacote de scripts deve estar em conformidade com o formato compatível. Consulte Composição de um novo pacote de scripts para obter mais detalhes.
-
Escolha Adicionar na tabela Scripts de automação.
-
Selecione o arquivo do pacote que você deseja carregar.
-
Insira um nome exclusivo para o script. Os usuários referenciarão o script com esse nome para iniciar trabalhos.
Baixar pacotes de script
Você pode baixar pacotes de scripts do console para ativar as atualizações e a verificação de conteúdo.
-
Selecione Automação e, em seguida, Scripts.
-
Selecione o script que você deseja baixar da tabela, selecione Ações e escolha Baixar versão padrão ou Baixar versão mais recente.
Você pode baixar versões específicas de um script. Para fazer isso, selecione o script, depois Ações e escolha Alterar versão padrão. Na lista Versão padrão do script, escolha Baixar a versão selecionada.
Adicionar nova versão de um pacote de scripts
As atualizações dos pacotes de scripts do AWS Cloud Migration Factory podem ser carregadas na seção Automação > Scripts seguindo estas etapas:
-
Selecione Automação e, em seguida, Scripts.
-
Selecione o script existente para adicionar uma nova versão, selecione Ações e escolha Adicionar nova versão.
-
Selecione o arquivo compactado do pacote atualizado que deseja carregar e escolha Avançar. A nova versão do script manterá o nome existente por padrão. Insira um nome de script exclusivo. Qualquer alteração de nome só será aplicada a essa versão do script.
-
Você pode tornar a nova versão do script a versão padrão selecionando Tornar versão padrão.
-
Escolha Carregar.
Excluindo pacotes e versões de scripts
Você não pode excluir scripts ou versões de um script para fins de auditoria. Isso permite revisar o script exato que foi executado em um sistema em um determinado momento. Cada versão de script tem uma assinatura e um ID exclusivos quando carregada, que são registrados no histórico de tarefas em que o script e a versão foram usados.
Composição de um novo pacote de scripts
O Cloud Migration Factory em pacotes de AWS script oferece suporte ao Python como a principal linguagem de script. Você pode iniciar outras linguagens de script de shell, conforme necessário, de dentro de um programa principal ou wrapper do Python. Para criar um novo pacote de scripts rapidamente, recomendamos baixar uma cópia de um dos scripts pré-empacotados e atualizá-lo para realizar a tarefa necessária. Primeiro, você deve criar um script Python mestre que executará a funcionalidade principal do script. Em seguida, crie um Package-Structure.yml
arquivo para definir os argumentos e outros metadados que o script exige. Consulte Package-Structure.yml
as opções para obter mais detalhes.
Script Python principal
Esse é o script principal inicial que é executado quando um trabalho é iniciado. Quando a execução do script for concluída, a tarefa será concluída e o código de retorno final determinará o status do trabalho. Toda a saída desse script é capturada quando executada remotamente e passada para o registro de auditoria de saída do trabalho para referência. Esse registro também é armazenado na Amazon CloudWatch.
Acessando o Cloud Migration Factory em AWS dados e APIs a partir de um script
Para fornecer acesso aos dados do Cloud Migration Factory, você pode usar o módulo auxiliar de python incluído. AWS APIs O módulo fornece as principais funções. Abaixo estão algumas das principais funções para começar:
factory_login
Retorna um token de acesso que pode ser usado para ativar o Cloud Migration Factory AWS APIs. Essa função tentará fazer login CMF usando várias tentativas de credenciais:
-
Ao tentar acessar o segredo padrão contendo o ID de usuário e a senha da conta de serviço, se existirem e o acesso for permitido. Esse nome secreto MFServiceAccount - [
userpool id
] será verificado. -
Se a Etapa 1 não for bem-sucedida e o usuário estiver executando o script na linha de comando, ele será solicitado a fornecer um ID de usuário e uma senha de fábrica do AWS Cloud Migration. Se executado a partir de uma tarefa de automação remota, a tarefa falhará.
get_server_credentials
Retorna as credenciais de login de um servidor armazenado no AWS Cloud Migration Factory no Credentials Manager ou por meio da entrada do usuário. Essa função verificará várias fontes diferentes para determinar as credenciais de um servidor específico, a ordem das fontes é:
-
Se local_username e local_password estiverem definidos e válidos, serão retornados.
-
Se secret_overide estiver definido, isso será usado para recuperar o segredo especificado do AWS Secret Manager, caso contrário, verifica se o registro do servidor contém a chave secret_name e se ela não está vazia, então esse nome secreto será usado.
-
Se houver uma falha ao localizar ou acessar os segredos especificados, a função voltará a solicitar as credenciais ao usuário, mas somente se o no_user_prompts estiver definido como False, caso contrário, retornará uma falha.
Parâmetros
local_username — Se aprovado, será retornado.
local_password — Se aprovado, será retornado.
server — CMF Server dict, conforme retornado por get_factory_servers. no Cloud Migration Factory. AWS
Secret_overide — Se passado, isso definirá o nome secreto a ser recuperado do Secrets Manager para este servidor.
No_user_prompts — Diz à função que não solicite ao usuário um ID de usuário e senha se não forem armazenados. Isso deve ser verdadeiro para qualquer script de automação remota.
get_credentials
Obtém as credenciais armazenadas usando o AWS Cloud Migration Factory Credentials Manager do Secrets Manager.
Parâmetros
secret_name – nome do segredo a ser recuperado.
get_factory_servers
Retorna uma matriz de servidores do armazenamento de dados do AWS Cloud Migration Factory com base no waveid fornecido.
Parâmetros
waveid — ID do registro Wave dos servidores que serão retornados.
token — Token de autenticação obtido da função FactoryLogin Lambda.
app_ids — Lista opcional de IDs de aplicativos dentro da onda a serem incluídos.
server_ids — Lista opcional de IDs de servidor dentro do wave e aplicativos a serem incluídos.
os_split — Se definido comotrue
, duas listas serão retornadas, uma para Linux e outra para servidores Windows; se for False, uma única lista combinada será retornada.
rtype — String opcional para filtrar somente para uma estratégia de migração específica de servidores, ou seja, passar o valor 'Rehost' retornará somente servidores com Rehost.
Resumo da mensagem final
É recomendável fornecer uma mensagem resumida do resultado do script como saída final para a tela ou sysout. Isso será mostrado no console na propriedade Última mensagem, que fornece um status rápido do resultado do script sem que o usuário precise ler o log de saída completo.
Código de retorno
O script python principal deve retornar um código de retorno diferente de zero na saída se a função do script não for totalmente bem-sucedida. Ao receber um código de retorno diferente de zero, o status do trabalho será mostrado como Falha no log de trabalhos, indicando ao usuário que ele deve revisar o log de saída para obter detalhes sobre a falha.
YAMLOpções package-structure.yml
Exemplo de arquivo YAML
Name: "0-Check MGN Prerequisites" Description: "This script will verify the source servers meet the basic requirements for AWS MGN agent installation." MasterFileName: "0-Prerequisites-checks.py" UpdateUrl: "" Arguments: - name: "ReplicationServerIP" description: "Replication Server IP." long_desc: "IP Address of an AWS MGN Replication EC2 Instance." type: "standard" required: true - name: "SecretWindows" long_desc: "Windows Secret to use for credentials." description: "Windows Secret" type: "relationship" rel_display_attribute: "Name" rel_entity: "secret" rel_key: "Name" - name: "SecretLinux" long_desc: "Linux Secret to use for credentials." description: "Linux Secret" type: "relationship" rel_display_attribute: "Name" rel_entity: "secret" rel_key: "Name" - name: "Waveid" description: "Wave Name" type: "relationship" rel_display_attribute: "wave_name" rel_entity: "wave" rel_key: "wave_id" validation_regex: "^(?!\\s*$).+" validation_regex_msg: "Wave must be provided." required: true SchemaExtensions: - schema: "server" name: "server_pre_reqs_output" description: "Pre-Req Output" type: "string"
YAMLdescrições principais
Obrigatório
Nome — Nome padrão que o script usará na importação.
Descrição — Descrição do uso do script.
MasterFileName— Este é o ponto de partida para a execução do script. Ele deve ser um nome de arquivo python incluído no arquivo do pacote de scripts.
Argumentos — Uma lista de argumentos que o script MasterFileName Python aceita. Cada argumento especificado está no formato de definição de atributos do AWS Cloud Migration Factory. As propriedades obrigatórias para cada argumento são Nome e Tipo, todas as outras propriedades são opcionais.
Opcional
UpdateUrl— Forneça URL onde a fonte do pacote de scripts está disponível para fornecer atualizações. Atualmente, isso é apenas para referência.
SchemaExtensions— Uma lista de atributos que o script Python exige que estejam no esquema para armazenar a saída ou recuperar dados adicionais. Cada atributo deve ser especificado no formato de definição de AWS CMF atributo. As propriedades obrigatórias para cada atributo são Esquema, Nome, Descrição e Tipo. Todas as outras propriedades são opcionais. Quaisquer novos atributos serão adicionados automaticamente ao esquema quando o script for carregado inicialmente, e as alterações feitas não SchemaExtensions serão processadas para novas versões do script. Se isso for necessário para que um novo script seja adicionado, atualizações manuais no esquema devem ser feitas.