Установка NATS в SUSE Linux Enterprise (SLE) Micro: пошаговое руководство

Установка NATS в SUSE Linux Enterprise (SLE) Micro: пошаговое руководство

22 марта 2022 г.

В этой короткой статье мы установим и изучим NATS на SUSE Linux Enterprise Micro (SLE Micro).


Что такое SUSE Linux Enterprise Micro


suse-banner


[SLE Micro] (https://www.suse.com/en-en/products/micro/) — сверхнадежная и легкая операционная система, специально созданная для контейнерных и виртуализированных рабочих нагрузок. Он использует усиленные корпоративные компоненты безопасности и соответствия требованиям SUSE Linux Enterprise и объединяет их с современной, неизменной, удобной для разработчиков операционной платформой.


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


SLE Micro создан с нуля для поддержки контейнеров и микросервисов. Рабочие нагрузки изолированы от основной файловой системы, чтобы защитить систему от вредоносных приложений.


Установка


Существует несколько способов установки NATS, некоторые из них:


  • Докер

  • Кубернетес

  • Менеджер пакетов

  • Выпустить почтовый индекс

Здесь мы будем использовать релизный почтовый индекс. Дополнительную информацию можно найти в официальных документах


Установка сервера NATS на SLE Micro


Начнем с установки сервера NATS на SLE Micro.


$ кошка /etc/os-релиз


НАЗВАНИЕ="SLE Micro"


ВЕРСИЯ="5.1"


VERSION_ID="5.1"


PRETTY_NAME="SUSE Linux Enterprise Micro 5.1"


ID="suse-микроос"


ID_LIKE="использовать"


ANSI_COLOR="0;32"


CPE_NAME="cpe:/o:suse:suse-microos:5.1"


Мы будем устанавливать сервер NATS изначально


$ curl -L https://github.com/nats-io/nats-server/releases/download/v2.7.3/nats-server-v2.7.3-linux-amd64.zip -o nats-server.zip


% Всего % Получено % Xferd Средняя скорость Время Время Время Текущее


Dload Upload Общая потраченная левая скорость


100 669 100 669 0 0 1050 0 --:--:-- --:--:-- --:--:-- 1065


100 4389k 100 4389k 0 0 1610k 0 0:00:02 0:00:02 --:--:-- 4248k


$ разархивировать nats-server.zip -d nats-server


Архив: nats-server.zip


раздувание: nats-server/nats-server-v2.7.3-linux-amd64/LICENSE


раздувание: nats-server/nats-server-v2.7.3-linux-amd64/README.md


раздувание: натс-сервер/натс-сервер-v2.7.3-linux-amd64/натс-сервер


$ sudo cp nats-server/nats-server-v2.7.3-linux-amd64/nats-server /usr/bin


Как и раньше, установка нашего сервера NATS проста.


Установка интерфейса командной строки NATS


Далее нам понадобится NATS CLI. Мы можем просто установить его для Linux со страницы [выпусков GitHub] (https://github.com/nats-io/natscli/releases/).


$ wget https://github.com/nats-io/natscli/releases/download/v0.0.30/nats-0.0.30-amd64.rpm


$ sudo rpm -i nats-0.0.30-amd64.rpm


Контрольный показатель


Для теста давайте сначала запустим наш сервер NATS.


$ nats-сервер


[47795] 14.03.2022 17:06:20.968158 [INF] Запуск nats-сервера


[47795] 2022/03/14 17:06:20.968277 [INF] Версия: 2.7.3


[47795] 2022/03/14 17:06:20.968280 [INF] Git: [не установлено]


[47795] 2022/03/14 17:06:20.968282 [INF] Имя: NCXNSBKZDHGEBPELZWIIGSGELPTHOP7R74XT2MHYIF732F264CZRDLND


[47795] 2022/03/14 17:06:20.968285 [INF] ID: NCXNSBKZDHGEBPELZWIIGSGELPTHOP7R74XT2MHYIF732F264CZRDLND


[47795] 14.03.2022 17:06:20.968692 [INF] Прослушивание клиентских подключений на 0.0.0.0:4222


[47795] 14.03.2022 17:06:20.968913 [INF] Сервер готов


Отлично, теперь мы можем просто использовать встроенную команду bench в интерфейсе командной строки NATS для тестирования.


Мы будем использовать следующие флаги:


  • --msgs: Количество сообщений для публикации

  • -pub: Количество одновременно работающих издателей

  • -sub: Количество одновременных подписчиков

  • -csv: сохранить данные тестов в CSV-файл.

Мы запустим тест для 1 миллиона сообщений с 4 одновременными издателями и подписчиками.


$ nats скамья my_subject --msgs 1000000 --pub 4 --sub 4 --csv=results.csv


17:36:48 Запуск теста pub/sub [subject=my_subject, msgs=1,000,000, msgsize=128 B, pubs=4, subs=4, js=false]


17:36:48 Стартовый подписчик, ожидание 1 000 000 сообщений


17:36:48 Стартовый подписчик, ожидание 1 000 000 сообщений


17:36:48 Стартовый подписчик, ожидание 1 000 000 сообщений


17:36:48 Стартовый подписчик, ожидание 1 000 000 сообщений


17:36:48 Запуск издателя, публикация 250 000 сообщений


17:36:48 Запуск издателя, публикация 250 000 сообщений


17:36:48 Запуск издателя, публикация 250 000 сообщений


17:36:48 Запуск издателя, публикация 250 000 сообщений


Завершено 0s [============================================== ====] 100%


Завершено 0s [============================================== ====] 100%


Завершено 0s [============================================== ====] 100%


Завершено 0s [============================================== ====] 100%


Завершено 0s [============================================== ====] 100%


Завершено 0s [============================================== ====] 100%


Завершено 0s [============================================== ====] 100%


Завершено 0s [============================================== ====] 100%


Статистика NATS Pub/Sub: 7 323 895 сообщений/сек ~ 894,03 МБ/сек


Статистика паба: 1 471 256 сообщений/сек ~ 179,60 МБ/сек


[1] 372 417 сообщений/сек ~ 45,46 МБ/сек (250000 сообщений)


[2] 371 332 сообщения/сек ~ 45,33 МБ/сек (250000 сообщений)


[3] 371 941 сообщений/сек ~ 45,40 МБ/сек (250 000 сообщений)


[4] 371 441 сообщений/сек ~ 45,34 МБ/сек (250000 сообщений)


мин 371 332 | в среднем 371 782 | макс 372 417 | stddev 432 сообщения


Дополнительная статистика: 5 861 333 сообщения/сек ~ 715,49 МБ/сек.


[1] 1 467 646 сообщений/сек ~ 179,16 МБ/сек (1000000 сообщений)


[2] 1 467 235 сообщений/сек ~ 179,11 МБ/сек (1000000 сообщений)


[3] 1 466 538 сообщений/сек ~ 179,02 МБ/сек (1000000 сообщений)


[4] 1 465 424 сообщения/сек ~ 178,88 МБ/сек (1 000 000 сообщений)


мин 1 465 424 | в среднем 1 466 710 | макс. 1 467 646 | stddev 841 сообщение


Сохраненные данные метрик в CSV-файле results.csv


Вот наш CSV-файл с результатами


RunID, ClientID, MsgCount, MsgBytes, MsgsPerSec, BytesPerSec, DurationSecs


oOn6aUsifPY3PToofcaO1O,S0,1000000,128000000,1467646,187858690,485677,0,681363


oOn6aUsifPY3PToofcaO1O,S1,1000000,128000000,1467235,187806090,364291,0,681554


oOn6aUsifPY3PToofcaO1O,S2,1000000,128000000,1466538,187716910,005906,0,681878


oOn6aUsifPY3PToofcaO1O,S3,1000000,128000000,1465424,187574290,043182,0,682396


oOn6aUsifPY3PToofcaO1O,P0,250000,32000000,372417,47669498,405688,0,671289


oOn6aUsifPY3PToofcaO1O,P1,250000,32000000,371332,47530537,906439,0,673251


oOn6aUsifPY3PToofcaO1O,P2,250000,32000000,371941,47608547,667213,0,672148


oOn6aUsifPY3PToofcaO1O,P3,250000,32000000,371441,47544470,508769,0,673054


Это немного трудно читать, так что давайте построим это.


контрольный показатель


Заключение


В этой статье мы установили и протестировали NATS, работающую на SUSE Linux Enterprise Micro. И, как и ожидалось, NATS обеспечивает надежную и стабильную производительность!



Оригинал
PREVIOUS ARTICLE
NEXT ARTICLE