1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/OpenCloudOS-lkp-extent

В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
README.md 8.4 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 10.03.2025 16:31 1860a21

img

lkp-extent

Проект lkp-extent направлен на увеличение тестирования, связанного с нагрузкой в контейнерной среде проекта LKP, что повышает характеристики отказоустойчивости операционной системы Linux. В настоящее время основные направления следующие:

  1. Увеличение механизма удалённого управления распределением LKP.
  2. Увеличение тестирования LKP в контейнерной среде.
  3. Добавление примеров использования ядер с eBPF.

Код: https://github.com/OpenCloudOS/lkp-tests

Удалённое управление

Описание

Мы знаем, что при тестировании стабильности системы, требуется массовое агрессивное тестирование различных типов серверов, чтобы лучше выявить проблемы. Однако базовая конфигурация LKP предназначена для тестирования стабильности одной системы Linux. Для развертывания нескольких разных серверов для одновременного тестирования требуется ручное вход в каждый сервер для настройки. Поэтому lkp-extent используется для расширения функциональности LKP, решая недостатки в этом отношении, и создаётся режим работы одного сервера для множества клиентских узлов.

Принцип

                                          lkp-server
                                              |
          +-----------------+----------------+----------------+-------------------+
          |                 |                |                |                   |
          |                 |                |                |                   |
       lkp-node         lkp-node           .....           lkp-node           lkp-node
```На рисунке выше одна машина называется узлом (node), а lkp-extent требует наличия одного серверного узла и нескольких клиентских узлов. Серверный узел переходит в режим прослушивания, а клиентские узлы последовательно подключаются к соответствующему серверному узлу в соответствии со своими конфигурациями. Таким образом, на серверном узле можно выполнять полный спектр операций над клиентскими узлами. Ниже приведены несколько распространённых команд:

1. Просмотр списка узлов для тестирования

$ lkp-ctl list

# Возвращает ID узла, тип архитектуры и информацию о памяти

2. Обновление компонентов тестирования

$ lkp-ctl update

# Обновляет локальные компоненты тестирования, включая lkp-extent и lkp два репозитория

$ lkp-ctl update all

# Обновляет все узлы

$ lkp-ctl update -i nodeid

# Обновляет компоненты тестирования узла с ID nodeid

3. Выполнение тестовых команд

$ lkp-ctl run testcase

# Все узлы выполняют тестовый случай testCase

$ lkp-ctl -i nodeid run testcase

# Узел с ID nodeid выполняет тестовый случай testcase

$ lkp-ctl -i nodeid -c containerCount run testcase

# Узел с ID nodeid запускает containerCount контейнеров и выполняет тестовый случай testcase внутри каждого контейнера

4. Распределение набора тестовых случаев    `$ lkp-ctl run testcluster` # testcluster — это набор тестовых случаев, используемых для проведения множества тестов

 `$ lkp-ctl -i nodeid run testcluster` # выполнение комбинированного тестирования на указанной тестовой машине

 `$ lkp-ctl -i nodeid -c containerCount run testcluster` # выполнение комбинированного тестирования в контейнерах на указанной тестовой машине

5. Отправка пользовательских тестовых случаев

 `$ lkp-ctl push testscript` # отправка скрипта с именем testscript на все тестовые машины

 `$ lkp-ctl -i nodeid push testscript` # отправка скрипта с именем testscript на указанную тестовую машину

6. Сбор результатов тестирования

 `$ lkp-ctl result` # сбор результатов тестирования со всех тестовых машин

 `$ lkp-ctl -i nodeid result` # сбор результатов тестирования с указанной тестовой машины

Хотя lkp-extent является расширением [LKP](https://github.com/intel/lkp-tests "LKP"), этот репозиторий не модифицирует сам проект [LKP](https://github.com/intel/lkp-tests "LKP"). Он может использовать последнюю версию [LKP](https://github.com/intel/lkp-tests "LKP"), а новые тестовые случаи в lkp-extent будут добавлены поверх существующего [LKP](https://github.com/intel/lkp-tests "LKP").

#### Прогресс
Разработка находится в процессе...## Тестирование в контейнерах
#### Описание
На данный момент большинство тестовых случаев [LKP](https://github.com/intel/lkp-tests "LKP") направлены на тестирование Linux-ядра, но тестирование среды контейнеризации практически отсутствует. Поэтому проект lkp-extent сосредоточен на разработке тестовых случаев для проверки стабильности контейнерной операционной системы.#### Принцип работы
lkp-extent — это проект, зависящий от тестового пакета [LKP](https://github.com/intel/lkp-tests "LKP"). Внутри lkp-extent тестовые случаи для контейнеров создаются аналогично job-файлам [LKP](https://github.com/intel/lkp-tests "LKP") ([readme](https://github.com/intel/lkp-tests/blob/master/doc/add-testcase.md "как")). При использовании lkp-extent добавляются свои тестовые случаи поверх директории jobs [LKP](https://github.com/intel/lkp-tests "LKP"), что позволяет удобно управлять всеми тестами через [LKP](https://github.com/intel/lkp-tests "LKP"). Также, как было упомянуто ранее, благодаря возможности удалённого управления, lkp-ctl может автоматически разворачивать, выполнять тесты и возвращать результаты тестирования на нескольких хостах согласно конфигурационному файлу.

#### Прогресс
Разработка в процессе...

#### Документация
Пожалуйста, обратитесь к документу «Design.doc»

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/OpenCloudOS-lkp-extent.git
git@api.gitlife.ru:oschina-mirror/OpenCloudOS-lkp-extent.git
oschina-mirror
OpenCloudOS-lkp-extent
OpenCloudOS-lkp-extent
main