8. Приложение 1

8.1. Настройка firewall (Iptables)

Утилита iptables - это межсетевой экран для операционных систем Linux. Настройка iptables производится в командной строке. С помощью правил iptables можно разрешать или блокировать прохождение трафика.

Для выполнения настройки межсетевого экрана необходимо создать конфигурационный файл iptables.conf в папке /etc/:

/etc/iptables.conf

Далее, необходимо скопировать в файл следующие настройки:

*filter
:INPUT ACCEPT [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
:FILTERS - [0:0]
:DOCKER-USER - [0:0]

-F INPUT
-F DOCKER-USER
-F FILTERS

-A INPUT -i lo -j ACCEPT
-A INPUT -p icmp --icmp-type any -j ACCEPT
-A INPUT -j FILTERS

-A DOCKER-USER -o docker0 -j FILTERS

-A FILTERS -m state --state ESTABLISHED,RELATED -j ACCEPT
-A FILTERS -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A FILTERS -m state --state NEW -m tcp -p tcp --dport 3000 -j ACCEPT
-A FILTERS -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
-A FILTERS -m state --state NEW -m tcp -p tcp --dport 9000 -j ACCEPT
-A FILTERS -j REJECT --reject-with icmp-host-prohibited

COMMIT

1. Выполнить команду

iptables-restore -n /etc/iptables.conf

2. Создать файл

/etc/systemd/system/iptables.service
  1. Сохранить в файл

[Unit]
Description=Restore iptables firewall rules
Before=network-pre.target

[Service]
Type=oneshot
ExecStart=/sbin/iptables-restore -n /etc/iptables.conf

[Install]
WantedBy=multi-user.target
  1. Включить iptables, выполнив команду:

sudo systemctl enable --now iptables

или выполнить следующие две команды:

sudo systemctl enable iptables
sudo systemctl start iptables

После обновления правил в файле /etc/iptables.conf, выполнить следующую команду:

sudo systemctl restart iptables

8.2. Инструкция по эксплуатации CSV-Uploader

8.2.1. Общие правила формата загружаемых CSV-файлов

Общие правила формата загружаемых CSV-файлов приведены в tab_csv_rules.

Общие правила формата загружаемых CSV-файлов

Параметр

Значение

Разделитель строк

Любой вариант из: CR/LF (0x0D0A), CR (0x0D), LF (0x0A)

Разделитель полей

по настройке csv-parser/separator (Параметры конфигурации)

Строка заголовка

да (обязательно)

Порядок полей в строке

определяется строкой заголовка

Ограничитель текстового поля

по настройке csv-parser/quote-char (Параметры конфигурации)

Символ маскировки в текстовом поле

по настройке csv-parser/escape-char (Параметры конфигурации)

Обнаружение значения null

До релиза 1.5.0 (включительно): по настройке csv-parser/field-as-null (Параметры конфигурации)

начиная с релиза 1.10.0: в текущей реализации парсера данная настройка не поддерживается

Кодирование символов

UTF-8

Десятичный разделитель

символ . (0x2E), может не указываться для целых значений

Формат даты

любой из: dd.MM.yyyy, yyyy-MM-dd

Формат времени

любой из: HH:mm:ss, H:mm:ss

Формат даты-времени

до релиза 1.5.0(включительно) любой из: yyyy-MM-dd HH:mm:ss, dd.MM.yyyy HH:mm:ss

начиная с релиза 1.10.0 любой из: yyyy-MM-dd HH:mm:ss.000000, dd.MM.yyyy HH:mm:ss.000000

8.2.2. Загрузка структуры Витрины

Внимание

XML-файл со структурой Витрины может быть загружен только один раз после установки Компонент «Витрина данных Лайт».

Для передачи xml-файла со структурой Витрины, выполните следующие действия:

  1. Откройте программный интерфейс CSV-uploader.

  2. Выберите вкладку Загрузка структуры.

  3. В открывшемся окне Загрузка структуры Витрины нажмите кнопку Выберите файл, выберите XML-файла для загрузки и нажмите кнопку Загрузить. (см. img_csv-uploader)

Загрузка структуры Витрины

Загрузка структуры Витрины

В случае успешного применения настроек отобразится информационное сообщение: Список таблиц загружен.

8.2.3. Выгрузка шаблона CSV

Для выгрузки существующего CSV-файла со структурой Витрины, выполните следующие действия:

  1. Откройте программный интерфейс CSV-uploader.

  2. Выберите вкладку Выгрузка шаблона CSV.

  3. Выберите таблицу для выгрузки, например, demo_view_podd.all_types_table, для выгрузки примера CSV-таблиц

  4. для ПОДД (см. img_csv_uploader_table).

Выгрузка шаблона CSV

Выгрузка шаблона CSV

  1. Нажмите кнопку Выгрузить. Файл будет загружен на локальный компьютер. Если требуется выгрузить все таблицы, нажмите кнопку Выгрузить все.

В случае успешной выгрузки на экране монитора отобразится информационное сообщение: Список таблиц выгружен.

8.2.4. Загрузка CSV-файла

Для загрузки CSV-файла, выполните следующие действия:

  1. Откройте программный интерфейс CSV-uploader.

  2. Выберите вкладку Загрузчик CSV.

  3. В открывшемся окне Загрузка файла выберите Режим загрузки:

  • Вставка - параметр определяет, что данные будут добавлены.

  • Удаление - параметр определяет, что данные будут удалены.

В случае, если в настройках модуля CSV-uploader включен ФЛК и прописан адрес модуля REST-Uploader, на странице отображается переключатель с текстом «Выполнять проверку форматно-логического контроля».

  1. Для автоматического определения типа таблиц включите переключатель Автоматическое определение таблицы, если автоматическое определение таблиц не требуется, выключите переключатель и выберите таблицу, в которую требуется внести изменения, например, demo_view_podd.all_types_table (см. img_csv_uploader_load).

Загрузка CSV-файла

Загрузка CSV-файла

  1. Нажмите кнопку Выберите файл чтобы выбрать файл для загрузки.

  2. Нажмите кнопку Загрузить.

  3. Убедитесь, что файл с таблицами был загружен.

При включенной настройке определения таблиц после выбора и загрузки файла:

  • модулем CSV-Uploader определяется таблица загрузки:

    • в случае, если активен переключатель «Автоматическое определение таблицы» по метаданным csv файла;

    • в случае если выбрана конкретная таблица, в соответствии с выбором пользователя;

  • модуль CSV-Uploader обогащает url запроса на загрузку именем датамарта и таблицы;

  • модуль CSV-Uploader выполняет запрос /v2/datamarts/{datamart_name}/tables/{table_name}/upload к модулю REST-Uploader;

  • модуль CSV-Uploader отображает текст ответа на странице загрузки в формате:

    • время ответа;

    • код ответа;

    • body ответа:

  • в случае успешного ответа, модуль CSV-Uploader сохраняет requestId файла в топик flk_logs в внутренней Kafka.

8.2.5. Загрузка CSV-файла с предварительным форматно-логическим контролем

В случае, если в настройках модуля CSV-Uploader включена настройка VALIDATION_ENABLE: true и прописан адрес модуля REST-Uploader (REST_UPLOADER_URL) при активном режиме «Вставка» на странице отображается переключатель с текстом «Выполнять проверку форматно-логического контроля» , по умолчанию значение вкл (true) см. img_csv_uploader_csv_1.

Переключатель выполнения ФЛК

Переключатель выполнения ФЛК

  1. При включенном переключателе «Выполнять проверку форматно-логического контроля» после выбора файла и нажатия кнопки Загрузить:

  • модулем CSV-Uploader определяется таблица загрузки:

    • в случае, если включен переключатель «автоопределение таблицы» по метаданным CSV файла;

    • в случае если выбрана конкретная таблица, в соответствии с выбором пользователя;

    • модуль CSV-Uploader обогащает URL запроса на загрузку именем датамарта и таблицы;

    • модуль CSV-Uploader выполняет запрос /v2/datamarts/{datamart_name}/tables/{table_name}/upload к модулю REST-Uploader;

    • модуль CSV-Uploader отображает текст синхронного ответа на странице загрузки в формате:

      • время ответа;

      • код ответа;

      • body ответа.

  1. При выключенном переключателе «Выполнять проверку форматно-логического контроля» загрузка выполняется стандартным способом через модуль CSV-Uploader.

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

При включении настройки VALIDATION_MANDATOR: true, переключатель «Выполнять проверку форматно-логического контроля» неактивен и находится во включенном положении.

В данном режиме загрузка данных в ручном режиме с использованием CSV-Uploader невозможна, для всех загружаемых данных будут проводиться проверки форматно-логического контроля в модуле REST-Uploader см. img_csv_uploader_csv_2.

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

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

8.2.7. Аутентификация с использованием jwt-токена при включенной аутентификации в модуле REST-Uploader

Для использования jwt-токена при загрузке данных с предварительным ФЛК в случае, если в REST-Uploader включена аутентификация, необходимо включить следующие настройки в модуле CSV-Uploader:

  • VALIDATION_ENABLE:true;

  • JWT_AUTH:true.

В случае, если обе настройки имеют значение true, при открытии загрузчика CSV-uploader отображается модальное окно ввода токена пользователя, а на странице загрузки данных в витрину отображается поле «Изменить JWT» (см. img_csv_uploader_csv_3).

Модальное окно ввода токена

Модальное окно ввода токена

Значение внесенного JWT-токена используется как барьерный токен при обращении к REST-Uploader.

Внесенное значение токена сохраняется в сессии пользователя и автоматически подставляется при включении переключателя выполнения ФЛК проверок. Для того, чтобы изменить JWT-токен для аутентификации, необходимо нажать кнопку Изменить JWT (см. img_csv_uploader_csv_4).

Отображение кнопки **Изменить JWT**

Отображение кнопки Изменить JWT

8.2.8. Настройки CSV-uploader

Для CSV-uploader можно настроить следующие параметры:

  • автоматический запуск загрузки CSV-файлов по расписанию;

  • количество отображаемых записей для Журнала операций.

8.2.9. Автоматический запуск загрузки CSV-файлов по расписанию

Для настройки автоматического запуска загрузки CSV-файлов по расписанию, выполните следующие действия:

  1. Откройте программный интерфейс CSV-uploader.

  2. Выберите вкладку Настройки.

  3. В открывшемся окне Настройки в поле Запуск по расписанию, укажите время в Cron формате (например, 0 15 10? * * - загрузка файлов будет происходить каждый день в 10.15) и путь к каталогу с CSV-файлами (см. img_csv_uploader_start_load) .

Автоматический запуск загрузки CSV-файлов по расписанию

Автоматический запуск загрузки CSV-файлов по расписанию

  1. Установите маркер в поле Включить, для активации автоматического запуска загрузки.

  2. Нажмите кнопку Применить настройки.

В случае успешного применения настроек отобразится информационное сообщение: Конфигурация успешно получена.

8.2.10. Настройка Журнала операций

Для настройки Журнала операций, выполните следующие действия:

  1. Откройте программный интерфейс CSV-uploader.

  2. Выберите вкладку Настройки.

  3. В открывшемся окне Настройки в поле Размер страницы, укажите количество записей на страницу, например, 20 (см. img_csv_uploader_operation_log).

Настройка *Журнала операций*

Настройка Журнала операций

  1. Нажмите кнопку Применить настройки.

В случае успешного применения настроек отобразится информационное сообщение: Конфигурация успешно получена.

8.2.11. Просмотр Журнала операций

В Журнале операций можно просмотреть действия выполненные в CSV-uploader:

  • Время - время, когда операция была выполнена.

  • Уровень - статус операции.

    • ERROR - ошибка загрузки;

    • INFO - описание операции.

  • Сообщение - краткое информационное сообщение об операции.

Для просмотра Журнала операций, выполните следующие действия:

  1. Откройте программный интерфейс CSV-uploader.

  2. Выберите вкладку Журнал операций.

  3. В открывшемся окне просмотрите операции, которые были выполнены в CSV-uploader (см. img_csv_uploader_log).

Просмотр *Журнала операций*

Просмотр Журнала операций

  1. Нажмите кнопку Применить настройки.

8.2.12. Интерфейс Форматно-логического контроля

На вкладке Форматно-логический контроль (см. flk) отображается:

  • список последних отправленных файлов, определяемых настройками модуля CSV-Uploader - значение по умолчанию 20:

    • список requestId;

    • время записи в кафку;

    • статус загрузки файла;

  • управляющий элемент для запроса отчета об ошибках для файла (кнопка отображается активной только в случае финальных статусов):

    • статус 3;

    • статус 4;

    • статус 7;

  • элементы пагинации списка requestId.

Форматно-логический контроль

Форматно-логический контроль

При нажатии на кнопку запроса отчета об ошибках для файла, модуль CSV-Uploader:

  • вызывает метод /v2/requests/{request_id}/report/;

  • получает CSV файл с именем report_requestId.csv;

  • в зависимости от ответа:

    • если response 200 ok: скачивает файл на ПК пользователя автоматически или при нажатии на название отчета с выводом сообщения о загрузке файла;

    • если response 400 - выводит сообщение Нет данных.