...
- Установить puppet сервер.
- Настроить подключение КС с puppet сервером.
Подключение к Puppet серверу задается в настройках Artix Control Center пункт "Паппет": Установить пакет
artixcs-puppet-objects
на машину, где установлен КС.Code Block language text sudo apt-get install artixcs-puppet-objects
- Перезапустить КС.
- Можно приступать к конфигурированию касс.
В пакете artixcs-puppet-objects
поставляются:
- классы - – это инструкции с параметрами, которые будут выполняться на puppet узлах (кассах) для доведения узла до нужного состояния. Для удобства классы разбиты на группы. Например, в группе “Лояльность” есть несколько классов, которые отвечают за настройку разных систем лояльностей - – “Купоны”, “Подарочные сертификаты”, “Внутренняя лояльность” и т.д.
- глобальные параметры- – это параметры, которые имеют одинаковое значение для всех классов, использующих их, если они не переопределены в конфигурационных метках. Поэтому при необходимости можно настроить их значения по умолчанию либо каждый раз в конфигурационных метках указывать значения для соответствующих параметров.
- факты - – это инструкции, которые выполняются на puppet узлах (кассах), чтобы вернуть на puppet сервер значение чего-либо, отражающее состояние узла. Факты возвращаются в формате “ключ - – значение” и могут использоваться в классах как глобальные переменные для того, чтобы настроить puppet узел (кассу) в соответствии с полученным значением.
Существуют системные и пользовательские факты:- системные факты - – это стандартные факты, которые всегда возвращаются puppet узлом (например, какая операционная система, сколько оперативной памяти у узла и т.д.);
- пользовательские факты - – это дополнительные факты, которые запрашиваются с puppet узлов вместе с системными. Например, через пользовательские факты запрашивается список установленных пакетов Artix, в результате чего в ключе возвращается название установленного artix пакета, в значении - версия– версия.
конфигурационные метки – это набор настроек определенного класса. По умолчанию с пакетом поставляются самые часто применяемые конфигурационные метки:
Наименование Описание Примечания Настройка чека Настройки чека в ncash.ini Параметр по умолчанию: checkIdentifierMask = %(document.shopCode[04d])%(document.cashCode[02d])%(document.shift[04d])%(document.num[07d])%(document.dateTimeBeg[hhmmss])111
Установка и обновление Установка и обновление кассового ПО Параметр по умолчанию:
splay = falsedl_limit = 999999
runinterval = 10
repo =http://update.artix.su/
Добавление лицензии Добавление лицензии на кассу Маркированные товары Настройки модуля маркированных товаров Параметр по умолчанию: maskMilk = \s
01(?<barcode>[0-9]{14})(21.{13}\s(17\d{6}|7003\d{10})|21.{6}|21.{8})\s93.{4}(\s3103(?<weight>\d{6}))?123
enable = trueЕсли на кассовом сервере уже есть действующие метки, данные из пакета будут проигнорированы.
- конфигурации – набор настроек со списком конфигурационных меток. По умолчанию с пакетом поставляется тестовая конфигурация, содержащая в себе конфигурационные метки из предыдущего пункта. После установки пакета конфигурация распространяется в тестовое окружение для того, чтобы ее можно было задействовать сразу после настройки puppet.
Info |
---|
Факты, группы классов, классы и глобальные параметры поставляются через пакеты. Не рекомендуется изменять или удалять их, т.к. это может повлиять на корректную работу конфигурирования puppet узлов (касс). При необходимости добавления функционала для конфигурирования следует обратиться в службу технической поддержки Artix. |
...
- Создать конфигурационные метки на основе имеющихся классов. Чтобы настроить один из классов, требуется создать конфигурационную метку - – это совокупность значений параметров одного класса. У классов есть обязательные и необязательные для заполнения параметры, а также у многих параметров есть значение по умолчанию. В конфигурационной метке каждый параметр может быть переопределен либо оставлен без изменений, если есть значение по умолчанию или значение параметра необязательно для заполнения. Одна конфигурационная метка может настраивать только один класс, но для одного класса может быть создано несколько конфигурационных меток. Например, если на разных кассах используются разные ФР, то для них можно создать разные конфигурационные метки, настраивающие один и тот же класс “Конфигурирование ФР”.
Создать конфигурации на основе конфигурационных меток. Конфигурация
-– это совокупность конфигурационных меток. Она определяет итоговое состояние puppet узла (кассы), до которого он должен быть доведен. При создании конфигурации указывается версия кассы, которая будет установлена при применении данной конфигурации. После заполнения версии будет предоставлен список конфигурационных меток, которые можно назначить для соответствующей версии кассы.
Info При создании/редактировании конфигурации также допускается переопределение глобальных параметров.
Для переопределения глобальных параметров необходимо:
1. Перейти во вкладку "Глобальные параметры".
2. Выбрать в таблице необходимый объект.
3. Установить флаг напротив поля "Изменить".
4. Указать новое значение для глобального параметра.
5. Сохранить изменения.
Info Для глобальных параметров с типами
array
иmap
существует возможность импортировать дополнительные настройки из.csv
-файла. Для этого необходимо нажать кнопку "Импортировать параметры из файла .csv" :По умолчанию существует 7 глобальных параметров:
Наименование Описание Примечания artixCslp Хост кассового сервера В значении требуется указать
<Адрес кассового сервера>
. В случае отсутствия адреса в определенной конфигурации, адрес будет взят из глобального параметраartixCsIp
.Artix-классы, которые могут использовать глобальный параметр
artixCsIp
:Название Artix-класса Название параметра Софт-чек serverHost Отложенный чек serverHost Артикс Бонус serverHost Подарочные сертификаты serverHost Счетчики host Купоны onlineCouponHost Обувь markVerifyHost Табачная продукция markVerifyHost Уведомления networkTesterHost Безопасность additionalRegistrationCardHost, cardVerificationHost Настройка времени ntpServers egaisURLs URL транспортного модуля ЕГАИС Используется для продажи и возврата акцизной алкогольной продукции.
В ключе требуется указать
<код магазина>
, в значении –<URL транспортного модуля ЕГАИС>
. Если поле "значение" для магазина не будет заполнено, то оно будет заполняться значением из соответствующего поля "address
" в классе "ЕГАИС продажа"processingClickPass Индивидуальные настройки процессинга ClickPass для кассы В ключе требуется указать
<код магазина>_<код кассы>
, в значении<секретный ключ>_<идентификатор пользователя>
.Например, ключ –
shopCode1_cashCode2
, значение –111_222
. Если поле "значение" для магазина и кассы не будет заполнено, то оно будет заполняться значениями из соответствующих полейsecretKey
,merchantUserId
в классе "ClickPass"processingRaiffeisenSBP Индивидуальные настройки процессинга СБП Райффайзен для кассы В ключе требуется указать
<код магазина>_<код кассы>
, в значении<идентификатор партнёра в СБП>_<секретный ключ>_<идентификатор статического QR-кода>_<данные статического QR-кода>
. Например, ключ –shopCode1_cashCode2
, значениеsbpMerchantId_secretKey_staticQrId_staticQrPayload
. Если значение для магазина и кассы не будет заполнено, то оно будет заполняться значениями из соответствующих полейsbpMerchantId
,secretKey
,staticQrId
,staticQrPayload
в классе "СБП Райффайзен"processingOplati Индивидуальные настройки процессинга Оплати для кассы В ключе требуется указать
<код магазина>_<код кассы>
, в значении –<Адрес сервера>_<Регистрационный номер кассы>
.Например, ключ –
shopCode1_cashCode2
, значение –192.168.0.1_567
. Если поле "значение" для магазина и кассы не будет заполнено, то оно будет заполняться значениями из соответствующих полейurl
,regNum
в классе "Оплати процессинг"processingYarus Индивидуальные настройки процессинга Yarus для кассы В ключе требуется указать
<код магазина>_<код кассы>
, в значении –<Хост терминала>_<Порт терминала>_<Порт сетевого принтера>
.Например, ключ –
shopCode1_cashCode2
, значение –192.168.0.1_5757_5858
. Если поле "значение" для магазина и кассы не будет заполнено, то оно будет заполняться значениями из соответствующих полейhost
,port
,printerPort
в классе "Yarus процессинг"scoBagBarcodes Штрих-код товара, который будет добавляться в чек как пакет В ключе требуется указать код магазина, в значении – штрих-код пакета. Если поле "значение" для магазина не будет заполнено, то оно будет заполняться значением из соответствующего поля "
bagBarcode
" в классе "КСО:Чек"- Распространить изменения до нужного окружения. Окружение представляет собой изолированное состояние конфигураций (вместе с классами, глобальными параметрами, фактами, конфигурационными метками) на определенный момент времени. Использование окружений помогает обезопасить некорректное конфигурирование “боевых” puppet узлов (касс). По умолчанию предоставляется 4 окружения:
- "Разработка" - – вся работа по настройке и созданию конфигураций выполняется в этом окружении. Конфигурации из этого окружения не могут быть назначены на узлы (кассы).
- "Тестовое" - – после того, как конфигурации окончательно настроены в окружении “Разработка”, все изменения требуется распространить в это окружение и назначить соответствующие конфигурации на тестовые узлы (кассы).
- "Пилотное" - – если конфигурации из окружения “Тестовое” корректно применились на тестовых узлах (кассах) и работа узлов (касс) соответствует ожидаемому поведению, то все изменения из окружения “Тестовое” можно распространить в данное окружение и назначить соответствующие конфигурации на узлы (кассы), которые выделены в качестве тестовых, но реально используемых.
"Боевое" - – если реально используемые тестовые узлы (кассы) с примененными конфигурациями из окружения “Пилотное” поработали отведенное время без ошибок, то все изменения из окружения “Пилотное” можно распространить в данное окружение и назначить соответствующие конфигурации на оставшиеся реально используемые узлы (кассы).
Info Любое изменение в окружении “Разработка” требуется распространять через всю цепочку окружений. Это сделано для избежания некорректной настройки узлов (касс), т.к. торговые сети могут понести большие убытки.
Назначить конфигурации на кассы и произвести стыковку кассы и КС. На кассы могут быть назначены конфигурации из всех окружений, кроме “Разработка”.
Также допускается переопределение глобальных параметров.Info После стыковки кассы с КС все конфигурации будут помещены в директорию кассы /linuxcash/cash/conf/ncash.ini.d/puppet
.Посмотреть статус применения конфигурации можно с помощью кнопки-индикатора на информационной панели:
При нажатии на кнопку-индикатор осуществляется обновление статуса объекта. При наведении на кнопку-индикатор всплывает дополнительная информация:
Anchor | ||||
---|---|---|---|---|
|
...
- Добавьте кассу на КС. Подробнее об этом можно прочитать в разделе "Архитектура торговой сети".
На кассе в конце файла
/etc/hosts
добавить строчку:No Format language bash 192.169.10.71<ip-адрес_puppet_сервера> puppet
Проверьте связь с puppet сервером с помощью команды:
Code Block language bashtext ping puppet
В конфигурационный файл
/etc/puppet/puppet.conf
добавьте секцию[agent]
. В параметреcertname
укажите ID кассы с кассового сервера:Info В настройку certname
из секции[main]
изменения не вносим.No Format [main] logdir = /var/log/puppet vardir = /var/lib/puppet ssldir = /var/lib/puppet/ssl rundir = /var/run/puppet factpath = $vardir/lib/facter templatedir = $confdir/templates certname = cash-1-1 [master] ssl_client_header = SSL_CLIENT_S_DN ssl_client_verify_header = SSL_CLIENT_VERIFY [agent] certname = _cash_100500_67c3c935 server = puppet masterport = 8140
Запустите puppet с помощью получение конфигураций с puppet при помощи команды:
Code Block language bashtext puppet agent --test
Удаление puppet-сертификата
В случае выхода из строя кассы и замены ее на новую необходимо удалить puppet-сертификат старой кассы, чтобы новая касса могла работать с puppet сервером. Новый puppet-сертификат будет сгенерирован при первом обращении кассы к puppet серверу.
Panel |
---|
Функционал реализован для объектов архитектуры торговой сети "касса" и "МКС". |
Для удаления puppet-сертификата необходимо в дереве объектов выбрать нужный объект, перейти во вкладку "Общее" и нажать кнопку "Удалить puppet-сертификат":
После удаления puppet-сертификата будет выведено сообщение:
Обновление конфигурации
Для обновления конфигурации нажмите кнопку "Обновить конфигурацию":
Будет выведено сообщение:
Об успешном обновлении конфигурации и подписании puppet-сертификата свидетельствует зеленый цвет следующих кнопок-индикаторов: