Добавление серверов размещения MySQL в Azure Stack Hub

Важно!

Начиная со сборки Azure Stack Hub 2108 поставщики ресурсов SQL и MySQL предлагаются для подписок, которым предоставлен доступ. Если вы хотите начать использовать эту функцию или вам нужно выполнить обновление с предыдущей версии, отправьте обращение в службу поддержки , и наши специалисты по поддержке помогут вам выполнить процесс развертывания или обновления.

Вы можете разместить экземпляр сервера размещения MySQL на виртуальной машине в Azure Stack Hub или на виртуальной машине за пределами среды Azure Stack Hub при условии, что поставщик ресурсов MySQL может подключаться к этому экземпляру.

Примечание

Поставщик ресурсов MySQL необходимо создать в подписке поставщика по умолчанию, а серверы размещения MySQL — в оплачиваемых пользовательских подписках. Сервер поставщика ресурсов не следует использовать для размещения баз данных пользователя.

Для серверов размещения можно использовать версии MySQL 5.6, 5.7 и 8.0. Поставщик ресурсов MySQL не поддерживает проверку подлинности caching_sha2_password. Серверы MySQL 8.0 должны быть настроены для использования mysql_native_password.

Подготовка сервера размещения MySQL

Создание правила группы безопасности сети

По умолчанию на виртуальной машине узла не настроен открытый доступ к MySQL. Поставщику ресурсов MySQL Azure Stack Hub для подключения к серверу MySQL и управления им необходимо создать правило входящего трафика для группы безопасности сети.

  1. На портале администратора перейдите к группе ресурсов, созданной при развертывании сервера MySQL, и выберите группу безопасности сети (default-subnet-sg):

    Выбор группы безопасности сети на портале администрирования Azure Stack Hub

  2. Щелкните Правила безопасности для входящего трафика, а затем выберите Добавить.

    Введите значение 3306 в поле Диапазон портов назначения и при желании добавьте описание в поля Имя и Описание.

    открыт

  3. Щелкните Добавить, чтобы закрыть диалоговое окно с правилом безопасности для входящего трафика.

Настройка внешнего доступа к серверу размещения MySQL

Прежде чем добавлять сервер MySQL в качестве узла размещения сервера MySQL для Azure Stack Hub, необходимо включить внешний доступ. Рассмотрим это на примере BitNami MySQL из Azure Stack Hub Marketplace. Внешний доступ можно настроить, выполнив описанные ниже действия.

  1. Войдите на сервер MySQL с компьютера, который имеет доступ к общедоступному IP-адресу, используя любой SSH-клиент (в нашем примере это PuTTY).

    По общедоступному IP-адресу войдите на виртуальную машину с именем пользователя и созданным ранее паролем приложения без специальных символов.

    LinuxLogin

  2. Используйте следующую команду в окне клиента SSH, чтобы убедиться, что служба bitnami включена и запущена. При появлении запроса введите пароль bitnami снова:

    sudo service bitnami status

    Проверка службы bitnami

  3. Если сервер размещения MySQL имеет версию 8.0 или более позднюю, необходимо изменить метод проверки подлинности на mysql_native_password. Если версия MySQL ниже 8.0, этот шаг можно пропустить.

    В случае BitNami MySQL файл конфигурации находится в разделе /opt/bitnami/mysql/conf/my.cnf. Задайте для свойства default_authentication_plugin значение mysql_native_password.

    [mysqld]
    default_authentication_plugin=mysql_native_password
    

    Перезапустите службу Bitnami и убедитесь, что она работает правильно, но прежде чем удалить файл ib_logfile0 перед запуском службы Bitnami.

    sudo service bitnami stop
    sudo rm /bitnami/mysql/data/ib_logfile0
    sudo service bitnami start
    sudo service bitnami status
    
  4. Создайте учетную запись удаленного доступа, которая будет использоваться сервером размещения MySQL Azure Stack Hub для подключения к MySQL.

    Выполните следующие команды, чтобы войти в MySQL от имени привилегированного пользователя, используя пароль root, который сохранен файле в ~/bitnami_credentials. Создайте нового пользователя с правами администратора и укажите для него <имя_пользователя> и <пароль> , соответствующие требованиям для вашей среды. В нашем примере создается пользователь с именем sqlsa и паролем высокой надежности:

    mysql -u root -p
    create user <username>@'%' identified by '<password>';
    grant all privileges on *.* to <username>@'%' with grant option;
    flush privileges;
    

    Создание пользователя-администратора

  5. Убедитесь, что подключаемый модуль созданного пользователя SQL sqlsa — это mysql_native_password, а затем выйдите из SSH-клиента.

    SELECT user,host,plugin from mysql.user;
    
  6. Запишите новые сведения о пользователе MySQL.

    Это имя пользователя и пароль оператор Azure Stack Hub будет использовать при создании сервера размещения MySQL с помощью этого сервера MySQL.

Подключение к серверу размещения MySQL

Убедитесь, что у вас есть учетные данные для учетной записи с правами системного администратора.

Примечание

Для MySQL 8.0 и более поздних версий удаленный доступ не включен по умолчанию. Прежде чем добавлять ее в качестве сервера размещения, необходимо создать новую учетную запись пользователя и предоставить ей права удаленного доступа.

Чтобы добавить сервер размещения, выполните следующие действия.

  1. Войдите на портал администратора Azure Stack Hub с правами администратора службы.

  2. Выбор пункта Все службы.

  3. В категории АДМИНИСТРАТИВНЫЕ РЕСУРСЫ выберите Серверы> размещения MySQL +Добавить. Откроется диалоговое окно Добавить сервер размещения MySQL, показанное на следующем снимке экрана.

    Настройка сервера размещения MySQL

  4. Введите сведения о подключении своего экземпляра MySQL Server.

    • В поле MySQL Hosting Server Name (Имя сервера размещения MySQL) укажите полное доменное имя (FQDN) или допустимый IPv4-адрес. Не используйте короткое имя виртуальной машины.
    • По умолчанию образы Bitnami MySQL, доступные в Azure Stack Hub Marketplace, имеют имя администратораroot.
    • Если вы не знаете пароль учетной записи root, ознакомьтесь с документацией Bitnami, чтобы узнать, как получить его.
    • Экземпляр MySQL по умолчанию отсутствует, поэтому необходимо указать значение в поле Size of Hosting Server in GB (Размер сервера размещения в ГБ). Значение должно быть близким к емкости сервера базы данных.
    • В поле Подписка оставьте значение по умолчанию.
    • В разделе Группа ресурсов можно создать новую группу или использовать имеющуюся.

    Важно!

    Не выбирайте группуsystem.<region>.sqladapter ресурсов, созданную установщиком поставщика ресурсов MySQL во время развертывания. Необходимо указать другую группу ресурсов для сервера размещения.

    Примечание

    Если экземпляр MySQL может быть доступен Azure Resource Manager клиента и администратора, его можно передать под контроль поставщика ресурсов. Но экземпляр MySQL должен быть выделен исключительно для поставщика ресурсов.

  5. Выберите Номера SKU, чтобы открыть диалоговое окно Создание номера SKU.

    Создание SKU MySQL

    Имя номера SKU должно отражать свойства номера SKU, чтобы пользователи могли развертывать базы данных на соответствующий номер SKU.

  6. Нажмите кнопку ОК, чтобы создать номер SKU.

    Примечание

    Отображение номеров SKU на портале может занять до часа. Вы не можете создать базу данных до развертывания и запуска SKU.

  7. В разделе Добавить сервер размещения MySQL нажмите кнопку Создать.

При добавлении серверов их необходимо назначать новым или имеющимся номерам SKU для дифференциации предложений служб. Например, в организации может существовать корпоративный экземпляр MySQL для поддержки объемных резервных копий баз данных и автоматических резервных копий. Этот высокопроизводительный сервер можно зарезервировать для разных отделов в вашей организации.

Вопросы безопасности для MySQL

Следующие сведения применимы к поставщикам ресурсов и серверам размещения MySQL:

Увеличение емкости серверной базы данных

Чтобы увеличить емкость серверной базы данных, разверните дополнительные серверы MySQL на портале Azure Stack Hub. Добавьте эти серверы в новый или существующий номер SKU. При добавлении сервера в существующий номер SKU, убедитесь, что характеристики сервера совпадают с характеристиками других серверов в номере SKU.

Примечания номеров SKU

Используйте имя номера SKU, которое описывает возможности серверов в номере SKU, такие как емкость и производительность. Имя предоставляет возможность пользователям развернуть свои базы данных в соответствующем номере SKU. Например, имена номеров SKU можно использовать для дифференциации предложений служб по следующим характеристикам:

  • Большая емкость
  • Высокая производительность
  • высокий уровень доступности

Как показала лучшая методика, все серверы размещения в номере SKU должны иметь одинаковые ресурсы и характеристики производительности.

Номера SKU не могут быть скрыты от определенных клиентов и не могут быть выделены для определенных клиентов.

Чтобы изменить номер SKU, перейдите к разделу Все службы>MySQL Adapter (Адаптер MySQL) >Номера SKU. Выберите номер SKU, который нужно изменить, внесите необходимые изменения и нажмите кнопку Сохранить для сохранения изменений.

Для удаления ненужного номера SKU, перейдите к разделу Все службы>Адаптер MySQL>Номера SKU. Щелкните правой кнопкой мыши имя номера SKU и выберите Удалить для его удаления.

Важно!

Отображение новых номеров SKU на пользовательском портале может занять до одного часа.

Предоставление пользователям доступа к серверам баз данных MySQL

Создайте планы и предложения, чтобы сделать серверы баз данных MySQL доступными для пользователей. Добавьте службу Microsoft.SqlAdapter в план и создайте квоту. MySQL не позволяет ограничивать размер баз данных.

Важно!

Отображение новых квот на пользовательском портале или применение измененных квот может занять до двух часов.

Примечание

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

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

Создание базы данных MySQL