Como preparar para uma migração do MoodleHow to prepare for a Moodle migration

Antes de migrar um aplicativo Moodle do seu ambiente local para o Azure, você deve exportar seus dados.Before you migrate a Moodle application from your on-premises environment to Azure, you should export your data. Este guia explica as etapas do processo de exportação.This guide explains the steps of the export process.

Instalar a CLI do AzureInstall the Azure CLI

Siga estas etapas para configurar o CLI do Azure em seu ambiente local:Follow these steps to set up the Azure CLI in your on-premises environment:

  1. Em um host que você pode usar para as tarefas do Azure, digite este comando para instalar o CLI do Azure:On a host that you can use for Azure tasks, enter this command to install the Azure CLI:

    curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash
    
  2. Na CLI do Azure, digite este comando para entrar em sua conta do Azure:In the Azure CLI, enter this command to sign in to your Azure account:

    az login -u <username> -p <password>
    
  3. Se o CLI do Azure abrir uma janela ou guia do navegador, entre no Azure com seu conta Microsoft.If the Azure CLI opens a browser window or tab, sign in to Azure with your Microsoft account. Se uma janela do navegador não abrir, vá para https://aka.ms/devicelogin e insira o código de autorização exibido no terminal.If a browser window doesn't open, go to https://aka.ms/devicelogin, and enter the authorization code displayed in your terminal.

Criar uma assinaturaCreate a subscription

Ignore esta etapa se você já tiver uma assinatura do Azure.Skip this step if you already have an Azure subscription.

Se você não tiver uma assinatura do Azure, poderá criá-la gratuitamente.If you don't have an Azure subscription, you can create one for free. Você também pode configurar uma assinatura paga conforme o usoou pode criar uma assinatura no portal do Azure de entrada.You can also either set up a pay-as-you-go subscription, or you can create a subscription in the Azure portal.

  • Para usar o portal do Azure para criar uma assinatura, abra assinaturas, selecione Adicionar e insira as informações necessárias.To use the Azure portal to create a subscription, open Subscriptions, select Add, and enter the required information.

    Captura de tela da página assinaturas no portal do Azure.

  • Para usar o CLI do Azure para criar uma assinatura, digite este comando:To use the Azure CLI to create a subscription, enter this command:

    az account set --subscription '<subscription name>'
    

Um comando de exemplo é:An example command is:

az account set --subscription 'ComputePM LibrarySub'

Criar um grupo de recursosCreate a resource group

Depois de configurar sua assinatura do Azure, crie um grupo de recursos no Azure usando o portal do Azure ou o CLI do Azure.Once you set up your Azure subscription, create a resource group in Azure using either the Azure portal or the Azure CLI.

  • Para usar o portal do Azure, siga estas etapas:To use the Azure portal, follow these steps:

    1. Abra grupos de recursose selecione Adicionar.Open Resource Groups, and select Add.

    2. Insira o nome da sua assinatura, um nome de grupo de recursos e uma região.Enter your subscription name, a resource group name, and a region. Consulte residência de dados no Azure para obter uma lista de regiões disponíveis.See Data residency in Azure for a list of available regions. Anote o nome do grupo de recursos inserido para que você possa usar esse nome em etapas posteriores.Make a note of the name of the resource group that you enter so that you can use that name in later steps.

    3. Selecione Examinar + criar.Select Review + create.

    Captura de tela da página criar um grupo de recursos nas caixas portal do Azure, com assinatura, grupo de recursos e região e um botão revisar + criar.

  • Para usar o CLI do Azure para criar um grupo de recursos, digite este comando:To use the Azure CLI to create a resource group, enter this command:

    az group create -l <region> -n <resource group name> -s '<subscription name>'
    

    Por exemplo, digite:For example, enter:

    az group create -l eastus -n manual_migration -s 'ComputePM LibrarySub'

    O valor que você fornece com o -l parâmetro especifica o local padrão.The value you provide with the -l parameter specifies the default location. Use o mesmo local que você usou nas etapas anteriores.Use the same location that you used in previous steps. Anote o nome do grupo de recursos que você criou e use esse nome em etapas posteriores.Make a note of the name of the resource group that you create, and use that name in later steps.

Criar uma conta de armazenamentoCreate a storage account

Em seguida, crie uma conta de armazenamento dentro do grupo de recursos que você acabou de criar.Next, create a storage account within the resource group that you just created. Você usará essa conta de armazenamento para fazer backup dos dados de Moodle locais.You'll use this storage account to back up your on-premises Moodle data.

Você pode usar o portal do Azure ou o CLI do Azure para criar uma conta de armazenamento.You can use either the Azure portal or the Azure CLI to create a storage account.

  • Para usar o portal do Azure, siga estas etapas:To use the Azure portal, follow these steps:

    1. Vá para criar conta de armazenamento.Go to Create storage account.

    2. Insira as seguintes informações:Enter the following information:

      • Seu nome da assinatura do AzureYour Azure subscription name
      • O nome do grupo de recursos que você acabou de criarThe name of the resource group that you just created
      • Um nome de conta de armazenamentoA storage account name
      • Sua regiãoYour region
    3. Para tipo de conta, selecione BlobStorage na lista suspensa.For Account kind, select BlobStorage from the drop-down list.

    4. Para replicação, selecione armazenamento com redundância geográfica com acesso de leitura (ra-grs) na lista suspensa.For Replication, select Read-access geo-redundant storage (RA-GRS) from the drop-down list.

    5. Selecione Examinar + criar.Select Review + create.

    Captura de tela da página Criar conta de armazenamento na portal do Azure, com várias caixas de entrada e um botão revisar + criar.

  • Para usar o CLI do Azure para criar a conta de armazenamento, digite este comando:To use the Azure CLI to create the storage account, enter this command:

    az storage account create -n <storage account name> -g <resource group name> --sku <storage account SKU> --kind <storage account type> -l <region>
    

    Um comando de exemplo é:An example command is:

    az storage account create -n onpremisesstorage -g manual_migration --sku Standard_LRS --kind BlobStorage -l eastus

    O --kind parâmetro especifica o tipo da conta de armazenamento.The --kind parameter specifies the storage account's type.

Fazer backup de dados locaisBack up on-premises data

Antes de fazer backup dos dados do Moodle local, ative o modo de manutenção no site do Moodle seguindo estas etapas:Before backing up your on-premises Moodle data, turn on Maintenance mode on your Moodle website by following these steps:

  1. Na instância do Moodle no seu ambiente local, digite este comando:From the Moodle instance in your on-premises environment, enter this command:

    sudo /usr/bin/php admin/cli/maintenance.php --enable
    
  2. Digite o seguinte comando para verificar o status do seu site do Moodle:Enter the following command to check the status of your Moodle website:

    sudo /usr/bin/php admin/cli/maintenance.php
    

Você deve fazer backup de arquivos, configurações e bancos de dados Moodle e moodledata no local em um único diretório.You should back up on-premises Moodle and moodledata files, configurations, and databases to a single directory. O diagrama a seguir resume essa recomendação:The following diagram summarizes this recommendation:

Diagrama mostrando a estrutura do diretório de armazenamento de backup do Moodle.

Criar um diretório de armazenamentoCreate a storage directory

Antes de copiar os dados, crie um diretório de armazenamento vazio em qualquer local desejado.Before copying your data, create an empty storage directory in any desired location. Por exemplo, se o local for /home/azureadmin , insira estes comandos:For example, if the location is /home/azureadmin, enter these commands:

sudo -s
cd /home/azureadmin
mkdir storage

Fazer backup de diretórios do MoodleBack up Moodle directories

No seu ambiente local, o moodle diretório contém o conteúdo HTML do site.In your on-premises environment, the moodle directory contains website HTML content. O moodledata diretório contém dados do site Moodle.The moodledata directory contains Moodle website data.

Insira estes comandos para copiar arquivos dos moodle diretórios e para moodledata o diretório de armazenamento:Enter these commands to copy files from the moodle and moodledata directories into the storage directory:

cp -R /var/www/html/moodle /home/azureadmin/storage/
cp -R /var/moodledata /home/azureadmin/storage/

Fazer backup de configurações de servidor Web e PHPBack up PHP and web server configurations

Para fazer backup dos arquivos de configuração, siga estas etapas:To back up configuration files, follow these steps:

  1. Insira estes comandos para criar um novo diretório em seu diretório de armazenamento:Enter these commands to create a new directory under your storage directory:

    cd /home/azureadmin/storage
    mkdir configuration
    
  2. Insira estes comandos para copiar os arquivos de configuração PHP e NGINX:Enter these commands to copy the PHP and NGINX configuration files:

    cp -R /etc/php /home/azureadmin/storage/configuration/
    cp -R /etc/nginx /home/azureadmin/storage/configuration/
    

    O php diretório armazena arquivos de configuração php, como php-fpm.conf , php.ini , pool.d e conf.d .The php directory stores PHP configuration files, such as php-fpm.conf, php.ini, pool.d, and conf.d. O nginx diretório armazena configurações de Ngnix, como nginx.conf e sites-enabled/dns.conf .The nginx directory stores ngnix configurations, such as nginx.conf and sites-enabled/dns.conf.

Fazer backup do banco de dadosBack up the database

Siga estas etapas para fazer backup do banco de dados:Follow these steps to back up your database:

  1. Insira estes comandos para verificar se o MySQL-Client está instalado:Enter these commands to check whether mysql-client is installed:

    sudo -s
    mysql -V
    
  2. Se o MySQL-Client estiver instalado, ignore esta etapa.If mysql-client is installed, skip this step. Caso contrário, digite este comando para instalar o MySQL-Client:Otherwise, enter this command to install mysql-client:

    sudo apt-get install mysql-client
    
  3. Digite este comando para fazer backup do banco de dados:Enter this command to back up the database:

    mysqldump -h <database server name> -u <database user ID> -p<database password> <database name> > /home/azureadmin/storage/database.sql
    

    Para <database server name> , <database user ID> , e <database password> <database name> , use os valores que seu banco de dados local usa.For <database server name>, <database user ID>, <database password>, and <database name>, use the values that your on-premises database uses.

Criar um arquivo mortoCreate an archive

Digite este comando para criar um arquivo morto, storage.tar.gz , para seu diretório de backup:Enter this command to create an archive file, storage.tar.gz, for your backup directory:

cd /home/azureadmin/ tar -zcvf storage.tar.gz storage

Baixar e instalar o AzCopyDownload and install AzCopy

Insira os seguintes comandos para instalar o AzCopy:Enter the following commands to install AzCopy:

sudo -s
wget https://aka.ms/downloadazcopy-v10-linux
tar -xvf downloadazcopy-v10-linux
sudo rm /usr/bin/azcopy
sudo cp ./azcopy_linux_amd64_*/azcopy /usr/bin/

Copiar arquivos arquivados no armazenamento de BLOBs do AzureCopy archived files to Azure Blob Storage

Siga estas etapas para usar o AzCopy para copiar arquivos locais arquivados para o armazenamento de BLOBs do Azure.Follow these steps to use AzCopy to copy archived on-premises files to Azure Blob Storage.

Gerar um token de segurançaGenerate a security token

Para gerar um token de SAS (assinatura de acesso compartilhado) para AzCopy, siga estas etapas:To generate a shared access signature (SAS) token for AzCopy, follow these steps:

  1. Na portal do Azure, vá para a página da conta de armazenamento que você criou anteriormente.In the Azure portal, go to the page for the storage account you created earlier.

  2. No painel esquerdo, selecione assinatura de acesso compartilhado.In the left panel, select Shared access signature.

    Captura de tela da página no portal do Azure para uma conta de armazenamento, com a assinatura de acesso compartilhado realçada no painel esquerdo.

  3. Em tipos de recursos permitidos, selecione contêiner.Under Allowed resource types, select Container.

  4. Em início e data/hora de expiração, insira uma hora de início e de término para o token SAS.Under Start and expiry date/time, enter a start and end time for the SAS token.

  5. Selecione Gerar SAS e cadeia de conexão.Select Generate SAS and connection string.

    Captura de tela da portal do Azure mostrando a página de assinatura de acesso compartilhado para uma conta de armazenamento.

  6. Faça uma cópia do token SAS para usar em etapas posteriores.Make a copy of the SAS token to use in later steps.

Criar um contêinerCreate a container

Crie um contêiner na conta de armazenamento.Create a container in the storage account. Você pode usar o CLI do Azure ou o portal do Azure para esta etapa.You can either use the Azure CLI or the Azure portal for this step.

  • Para usar o CLI do Azure, digite este comando:To use the Azure CLI, enter this command:

    az storage container create --account-name <storage account name> --name <container name> --auth-mode login
    

    Um comando de exemplo é:An example command is:

    az storage container create --account-name onpremisesstorage --name migration --auth-mode login

    Quando você usa o --auth-mode parâmetro com um valor de login , o Azure usa suas credenciais para autenticação e, em seguida, cria o contêiner.When you use the --auth-mode parameter with a value of login, Azure uses your credentials for authentication and then creates the container.

  • Para usar o portal do Azure para criar o contêiner, siga estas etapas:To use the Azure portal to create the container, follow these steps:

    1. No portal, vá para a página da conta de armazenamento que você criou anteriormente.In the portal, go to the page for the storage account you created earlier.

    2. Selecione contêiner e, em seguida, selecione Adicionar.Select Container, and then select Add.

    3. Insira um nome para o contêiner e, em seguida, selecione criar.Enter a name for the container, and then select Create.

      Captura de tela de uma caixa de diálogo no portal do Azure para criar um novo contêiner, com uma caixa de nome e um botão de criação.

Copiar o arquivo morto para o armazenamento de BLOBs do AzureCopy the archive file to Azure Blob Storage

Digite este comando para copiar o arquivo morto para o contêiner que você criou no armazenamento de BLOBs:Enter this command to copy your archive file to the container that you created in Blob Storage:

sudo azcopy copy /home/azureadmin/storage.tar.gz 'https://<storage account name>.blob.core.windows.net/<container name>/<SAS token>'

Um comando de exemplo é:An example command is:

azcopy copy /home/azureadmin/storage.tar.gz 'https://onpremisesstorage.blob.core.windows.net/migration/?sv=2019-12-12&ss='

Sua conta de armazenamento de BLOBs agora deve conter uma cópia do seu arquivo morto.Your Blob Storage account should now contain a copy of your archive.

Captura de tela de uma página no portal do Azure mostrando contas de armazenamento de BLOBs.

Próximas etapasNext steps

Continue a Moodle a arquitetura de migração e os modelos.Continue to Moodle migration architecture and templates.