Поделиться через


Используйте служебную программу SQLIOSim для имитации действий SQL Server в подсистеме диска в Linux

Область применения: SQL Server 2022 в Linux, SQL Server 2019 на Linux

Введение

В этой статье описывается средство SQLIOSim. Это средство можно использовать для выполнения тестов надежности и целостности дисковых подсистем для платформ SQL Server на Linux и контейнеров. Эти тесты имитируют действия чтения, записи, контрольной точки, резервного копирования, сортировки и чтения для SQL Server на Linux.

Средство SQLIOSim было создано и выпущено на платформе Windows. SQLIOSim зависит от платформы SQLPAL, которая позволяет выполнять служебную программу Windows SQLIOSim в Linux.

Поддерживаемые платформы

Платформа Файловая система Руководство по установке
Red Hat Enterprise Linux 7.9 или 8.x Server XFS или EXT4 Руководство по установке Red Hat
SUSE Enterprise Linux Server версии 12 (SP4 — SP5) или версии 15 (SP1 — SP4) XFS или EXT4 Руководство по установке SUSE Linux Enterprise Server
Ubuntu 18.04 LTS, 20.04 LTS XFS или EXT4 Руководство по установке Ubuntu
Docker Engine 1.8+ в Windows, macOS или Linux Н/П Запуск образов контейнеров SQL Server с помощью руководства По Docker

Инструкции по установке SQLIOSim в Linux

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

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

    • Для RHEL 7:

      • SQL Server 2019:

        sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/7/mssql-server-2019.repo
        
    • Для RHEL 8:

      • SQL Server 2019:

        sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/8/mssql-server-2019.repo
        
      • SQL Server 2022:

        sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/8/mssql-server-2022.repo
        
  2. После добавления репозитория запустите установку со следующими командами:

    1. Переключитесь на роль пользователя root (привилегированного):

      sudo su
      
    2. Задайте для переменной ACCEPT_EULA yсреды значение , чтобы принять лицензионное соглашение конечного пользователя:

      export ACCEPT_SQLIOSIM_EULA=y
      
    3. Установите SQLIOSim:

      yum install mssql-server-sqliosim
      

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

Пользователи, не являющиеся корневыми, не могут установить SQLIOSim, но могут запустить его. Чтобы запустить SQLIOSim в качестве пользователя, не являющегося корневым, добавьте пользователя, не являющегося корневым, в группу "sqliosim". В этом примере замените <account_to_add> учетную запись, которую вы хотите добавить.

sudo usermod -a -G sqliosim <account_to_add>

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

Теперь вы готовы запустить SQLIOSim:

/opt/mssql-sqliosim/bin/sqliosim -cfg /tmp/sqliosim.default.cfg.ini -dir /tmp -log /tmp/sqliosim_log.xml

Файл конфигурации SQLIOSim

Примеры файлов конфигурации для различных тестов можно скачать из репозитория GitHub группы поддержки SQL Server.

wget https://raw.githubusercontent.com/microsoft/mssql-support/master/sqliosim/sqliosim.cfg.linux/sqliosim.default.cfg.ini -P /tmp
wget https://raw.githubusercontent.com/microsoft/mssql-support/master/sqliosim/sqliosim.cfg.linux/sqliosim.hwcache.cfg.ini -P /tmp
wget https://raw.githubusercontent.com/microsoft/mssql-support/master/sqliosim/sqliosim.cfg.linux/sqliosim.nothrottle.cfg.ini -P /tmp
wget https://raw.githubusercontent.com/microsoft/mssql-support/master/sqliosim/sqliosim.cfg.linux/sqliosim.seqwrites.cfg.ini -P /tmp
wget https://raw.githubusercontent.com/microsoft/mssql-support/master/sqliosim/sqliosim.cfg.linux/sqliosim.sparse.cfg.ini -P /tmp

Примечание.

/tmp пример пути. Измените его на свой собственный путь.

Пример команды для запуска SQLIOSim с помощью файла default.ini

/opt/mssql-sqliosim/bin/sqliosim -cfg /tmp/sqliosim.default.cfg.ini -dir /tmp -log /tmp/sqliosim_log.xml

Дополнительные сведения о различных параметрах конфигурации для файлов конфигурации и о том, как запустить SQLIOSim, см. в статье "Использование служебной программы SQLIOSim" для имитации действий SQL Server в подсистеме диска. Эта статья также относится к экосистемам SQLIOSim для Linux.