Подготовка к Moodle миграцииHow to prepare for a Moodle migration

Перед миграцией приложения Moodle из локальной среды в Azure необходимо экспортировать данные.Before you migrate a Moodle application from your on-premises environment to Azure, you should export your data. В этом руководстве описываются шаги процесса экспорта.This guide explains the steps of the export process.

Установка Azure CLIInstall the Azure CLI

Выполните следующие действия, чтобы настроить Azure CLI в локальной среде.Follow these steps to set up the Azure CLI in your on-premises environment:

  1. На узле, который можно использовать для задач Azure, введите следующую команду, чтобы установить Azure CLI: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. В Azure CLI введите следующую команду, чтобы войти в учетную запись Azure:In the Azure CLI, enter this command to sign in to your Azure account:

    az login -u <username> -p <password>
    
  3. Если Azure CLI открывает окно или вкладку браузера, войдите в Azure с помощью учетная запись Майкрософт.If the Azure CLI opens a browser window or tab, sign in to Azure with your Microsoft account. Если окно браузера не открывается, перейдите к https://aka.ms/devicelogin и введите код авторизации, отображаемый в терминале.If a browser window doesn't open, go to https://aka.ms/devicelogin, and enter the authorization code displayed in your terminal.

Создание подпискиCreate a subscription

Пропустите этот шаг, если у вас уже есть подписка Azure.Skip this step if you already have an Azure subscription.

Если у вас нет подписки Azure, вы можете создать ее бесплатно.If you don't have an Azure subscription, you can create one for free. Можно также настроить подписку с оплатой по мереиспользования или создать подписку в портал Azure.You can also either set up a pay-as-you-go subscription, or you can create a subscription in the Azure portal.

  • Чтобы использовать портал Azure для создания подписки, откройте подписки, выберите Добавить и введите необходимые сведения.To use the Azure portal to create a subscription, open Subscriptions, select Add, and enter the required information.

    Снимок экрана со страницей "подписки" в портал Azure.

  • Чтобы использовать Azure CLI для создания подписки, введите следующую команду:To use the Azure CLI to create a subscription, enter this command:

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

Пример команды:An example command is:

az account set --subscription 'ComputePM LibrarySub'

Создание группы ресурсовCreate a resource group

После настройки подписки Azure создайте группу ресурсов в Azure, используя портал Azure или Azure CLI.Once you set up your Azure subscription, create a resource group in Azure using either the Azure portal or the Azure CLI.

  • Чтобы использовать портал Azure, выполните следующие действия.To use the Azure portal, follow these steps:

    1. Откройте группы ресурсови выберите Добавить.Open Resource Groups, and select Add.

    2. Введите имя подписки, имя группы ресурсов и регион.Enter your subscription name, a resource group name, and a region. Список доступных регионов см. в статье местонахождение данных в Azure .See Data residency in Azure for a list of available regions. Запишите имя введенной группы ресурсов, чтобы это имя можно было использовать в последующих шагах.Make a note of the name of the resource group that you enter so that you can use that name in later steps.

    3. Выберите Review + create (Просмотреть и создать).Select Review + create.

    Снимок экрана: страница "Создание группы ресурсов" в полях "портал Azure", "Подписка", "Группа ресурсов" и "Проверка + создать".

  • Чтобы использовать Azure CLI для создания группы ресурсов, введите следующую команду: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>'
    

    Например, введите:For example, enter:

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

    Значение, предоставленное с помощью -l параметра, указывает расположение по умолчанию.The value you provide with the -l parameter specifies the default location. Используйте то же расположение, которое использовалось на предыдущих шагах.Use the same location that you used in previous steps. Запишите имя создаваемой группы ресурсов и используйте это имя в последующих шагах.Make a note of the name of the resource group that you create, and use that name in later steps.

Создание учетной записи храненияCreate a storage account

Затем создайте учетную запись хранения в только что созданной группе ресурсов.Next, create a storage account within the resource group that you just created. Эта учетная запись хранения будет использоваться для резервного копирования локальных данных Moodle.You'll use this storage account to back up your on-premises Moodle data.

Для создания учетной записи хранения можно использовать либо портал Azure, либо Azure CLI.You can use either the Azure portal or the Azure CLI to create a storage account.

  • Чтобы использовать портал Azure, выполните следующие действия.To use the Azure portal, follow these steps:

    1. Перейдите к разделу Создание учетной записи хранения.Go to Create storage account.

    2. Введите следующие сведения:Enter the following information:

      • Имя подписки Azure.Your Azure subscription name
      • Имя только что созданной группы ресурсовThe name of the resource group that you just created
      • Имя учетной записи храненияA storage account name
      • Ваш регионYour region
    3. В поле тип учетной записи выберите блобстораже из раскрывающегося списка.For Account kind, select BlobStorage from the drop-down list.

    4. Для репликации выберите геоизбыточное хранилище с доступом на чтение (RA-GRS) из раскрывающегося списка.For Replication, select Read-access geo-redundant storage (RA-GRS) from the drop-down list.

    5. Выберите Review + create (Просмотреть и создать).Select Review + create.

    Снимок экрана со страницей создания учетной записи хранения в портал Azure с несколькими полями ввода и кнопкой "Проверка и создание".

  • Чтобы использовать Azure CLI для создания учетной записи хранения, введите следующую команду: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>
    

    Пример команды:An example command is:

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

    --kindПараметр указывает тип учетной записи хранения.The --kind parameter specifies the storage account's type.

Резервное копирование локальных данныхBack up on-premises data

Перед резервным копированием локальных данных Moodle включите режим обслуживания на веб-сайте Moodle, выполнив следующие действия.Before backing up your on-premises Moodle data, turn on Maintenance mode on your Moodle website by following these steps:

  1. В экземпляре Moodle в локальной среде введите следующую команду:From the Moodle instance in your on-premises environment, enter this command:

    sudo /usr/bin/php admin/cli/maintenance.php --enable
    
  2. Введите следующую команду, чтобы проверить состояние веб-сайта Moodle:Enter the following command to check the status of your Moodle website:

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

Необходимо создать резервные копии локальных файлов Moodle и мудледата, а также конфигураций и баз данных в одном каталоге.You should back up on-premises Moodle and moodledata files, configurations, and databases to a single directory. Эта рекомендация представлена на следующей схеме:The following diagram summarizes this recommendation:

Схема, показывающая структуру каталога хранилища резервных копий Moodle.

Создание каталога хранилищаCreate a storage directory

Перед копированием данных создайте пустой каталог хранилища в любом нужном месте.Before copying your data, create an empty storage directory in any desired location. Например, если расположение — /home/azureadmin , введите следующие команды:For example, if the location is /home/azureadmin, enter these commands:

sudo -s
cd /home/azureadmin
mkdir storage

Резервное копирование каталогов MoodleBack up Moodle directories

В локальной среде moodle Каталог содержит содержимое HTML веб-сайта.In your on-premises environment, the moodle directory contains website HTML content. moodledataКаталог содержит данные веб-сайта Moodle.The moodledata directory contains Moodle website data.

Введите эти команды, чтобы скопировать файлы из moodle moodledata каталогов и в каталог хранилища: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/

Резервное копирование конфигураций PHP и веб-сервераBack up PHP and web server configurations

Чтобы создать резервную копию файлов конфигурации, выполните следующие действия.To back up configuration files, follow these steps:

  1. Введите эти команды, чтобы создать новый каталог в каталоге хранилища:Enter these commands to create a new directory under your storage directory:

    cd /home/azureadmin/storage
    mkdir configuration
    
  2. Введите следующие команды, чтобы скопировать файлы конфигурации PHP и 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/
    

    В php каталоге хранятся файлы конфигурации PHP, такие как php-fpm.conf , php.ini , pool.d и conf.d .The php directory stores PHP configuration files, such as php-fpm.conf, php.ini, pool.d, and conf.d. В nginx каталоге хранятся конфигурации нгникс, такие как nginx.conf и sites-enabled/dns.conf .The nginx directory stores ngnix configurations, such as nginx.conf and sites-enabled/dns.conf.

Резервное копирование базы данныхBack up the database

Выполните следующие действия, чтобы создать резервную копию базы данных.Follow these steps to back up your database:

  1. Введите следующие команды, чтобы проверить, установлен ли MySQL-Client:Enter these commands to check whether mysql-client is installed:

    sudo -s
    mysql -V
    
  2. Если MySQL-Client установлен, пропустите этот шаг.If mysql-client is installed, skip this step. В противном случае введите следующую команду, чтобы установить MySQL-Client:Otherwise, enter this command to install mysql-client:

    sudo apt-get install mysql-client
    
  3. Введите эту команду, чтобы создать резервную копию базы данных: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
    

    Для <database server name> , <database user ID> , <database password> и <database name> используйте значения, используемые локальной базой данных.For <database server name>, <database user ID>, <database password>, and <database name>, use the values that your on-premises database uses.

Создание архиваCreate an archive

Введите эту команду, чтобы создать файл архива storage.tar.gz для каталога резервного копирования:Enter this command to create an archive file, storage.tar.gz, for your backup directory:

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

Скачивание и установка AzCopyDownload and install AzCopy

Введите следующие команды для установки 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/

Копирование архивных файлов в хранилище BLOB-объектов AzureCopy archived files to Azure Blob Storage

Выполните следующие действия, чтобы использовать AzCopy для копирования архивных локальных файлов в хранилище BLOB-объектов Azure.Follow these steps to use AzCopy to copy archived on-premises files to Azure Blob Storage.

Создание маркера безопасностиGenerate a security token

Чтобы создать маркер подписанного URL-адрес (SAS) для AzCopy, выполните следующие действия.To generate a shared access signature (SAS) token for AzCopy, follow these steps:

  1. В портал Azure перейдите на страницу созданной ранее учетной записи хранения.In the Azure portal, go to the page for the storage account you created earlier.

  2. На панели слева выберите подпись общего доступа.In the left panel, select Shared access signature.

    Снимок экрана страницы портал Azure учетной записи хранения с подписью общего доступа, выделенной на левой панели.

  3. В разделе Разрешенные типы ресурсов выберите контейнер.Under Allowed resource types, select Container.

  4. В поле Дата и время начала и окончания введите время начала и окончания для маркера SAS.Under Start and expiry date/time, enter a start and end time for the SAS token.

  5. Выберите действие Создать SAS и строку подключения.Select Generate SAS and connection string.

    Снимок экрана портал Azure показывающей страницу подписанного URL-доступа для учетной записи хранения.

  6. Создайте копию маркера SAS, который будет использоваться на последующих шагах.Make a copy of the SAS token to use in later steps.

Создание контейнераCreate a container

Создайте контейнер в учетной записи хранения.Create a container in the storage account. Для этого шага можно либо использовать Azure CLI, либо портал Azure.You can either use the Azure CLI or the Azure portal for this step.

  • Чтобы использовать Azure CLI, введите следующую команду:To use the Azure CLI, enter this command:

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

    Пример команды:An example command is:

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

    При использовании --auth-mode параметра со значением login Azure использует ваши учетные данные для проверки подлинности, а затем создает контейнер.When you use the --auth-mode parameter with a value of login, Azure uses your credentials for authentication and then creates the container.

  • Чтобы использовать портал Azure для создания контейнера, выполните следующие действия.To use the Azure portal to create the container, follow these steps:

    1. На портале перейдите на страницу созданной ранее учетной записи хранения.In the portal, go to the page for the storage account you created earlier.

    2. Выберите контейнер, а затем щелкните Добавить.Select Container, and then select Add.

    3. Введите имя для контейнера и нажмите кнопку создать.Enter a name for the container, and then select Create.

      Снимок экрана диалогового окна в портал Azure для создания нового контейнера с полем имени и кнопкой "создать".

Копирование файла архива в хранилище BLOB-объектов AzureCopy the archive file to Azure Blob Storage

Введите эту команду, чтобы скопировать файл архива в контейнер, созданный в хранилище BLOB-объектов: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>'

Пример команды:An example command is:

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

Теперь ваша учетная запись хранилища BLOB-объектов должна содержать копию архива.Your Blob Storage account should now contain a copy of your archive.

Снимок экрана страницы в портал Azure, показывающей учетные записи хранения BLOB-объектов.

Дальнейшие действияNext steps

Продолжайте Moodle архитектуру и шаблоны миграции.Continue to Moodle migration architecture and templates.