Часто задаваемые вопросы¶
Список основных вопросов, возникающих в процессе установки и эксплуатации приложения.
Как настроить восстановление работоспособности приложения при сбое?¶
В основе приложения лежит оркестратор Docker Swarm, который автоматически восстановит работоспособность приложения, если оно было аварийно завершено. Docker Swarm также восстановит работу приложения при перезагрузке сервера.
Добавьте сервис Docker в список автоматически загружаемых сервисов, чтобы приложение восстанавливало работоспособность без необходимости прибегать к ручным действиям.
Как сбросить данные неудачной установки или удалить приложение?¶
Для удаления данных и остановки всех сервисов приложения перейдите в директорию с установщиком и воспользуйтесь командой:
Внимание
Удаление приложения приведет к потере всех пользовательских данных.
Как внести изменения в конфигурацию приложения после успешного развертывания?¶
Если приложение уже успешно развернуто, но требуется изменить конфигурацию,
внесите правки в нужный конфигурационный файл в директории /configs и выполните команду, чтобы применить изменения:
Примечание
Параметры root_user.full_name, root_user.phone_number, root_user.mail, root_user.password,
root_user.sso_login, team.init_name в конфигурационном файле /configs/team.yaml
используются только при первой установке — их изменение не повлияет на работу приложения.
Как обновить сертификат?¶
Для обновления текущего сертификата достаточно заменить его файлы. Файлы должны иметь те же имена и располагаться в той же директории, что и файлы, указанные в разделе конфигурирования при установке приложения. Далее необходимо обновить конфигурацию веб-сервера:
Обновить сертификаты на хостовом веб-сервере:
Обновить сертификаты в контейнерах:
Как изменить IP-адрес в настройках приложения и базе данных?¶
В директории установщика onpremise-installer найдите файл configs/global.yaml.
Откройте его любым текстовым редактором и укажите новый IP-адрес для параметра host_ip:
host_ip: "<Новый IP адрес вашего сервера>"
Выполните команду обновления в директории установщика:
Выполните команду для обновления IP-адреса в базе данных контейнера php-monolith, подставив новый IP-адрес:
Примечание
В двух примерах ниже указан путь /home/compass, который является значением по умолчанию.
Если ваш путь отличается, уточните его в параметре root_mount_path в файле configs/global.yaml и замените в командах соответствующие значения.
Выполните замену старого IP на новый в файлах конфигурации приложения. Для этого используйте следующую команду, подставив соответствующие значения для старого и нового IP:
Обновите timestamp в конфигурационных файлах командой:
Перезапустите микросервисы, используя следующую команду:
Как изменить максимально разрешенный размер загружаемого файла?¶
Начиная с версии сервера 5.2.0, в Compass появилась возможность настраивать максимальный размер файла, разрешённого для загрузки. Для этого необходимо изменить соответствующий параметр в конфигурационном файле configs/team.yaml.
Внимание
Для использования функционала клиентские приложения должны быть обновлены до минимальных версий с его поддержкой:
Desktop: 5.14.3
iOS: 5.19.0
Android: 5.17.0
# Ограничение размера загружаемых файлов в мегабайтах (диапазон значений от 20 до 2048)
max_file_size_mb: 2048
Для того чтобы изменить максимальный размер загружаемого файла, укажите его в мегабайтах и выполните обновление серверной части для применения изменений.
Как отобразить руководителя в карточке сотрудника (LDAP)?¶
Чтобы при авторизации пользователя через LDAP автоматически отображалась информация о его руководителе (например, ФИО), необходимо настроить соответствующее сопоставление LDAP-атрибутов в конфигурационном файле auth.yaml.
Откройте конфигурационный файл auth.yaml и заполните параметр sso.compass_mapping.bio следующим значением:
[[manager:distinguishedName='{manager}']]— устанавливает связь между текущим пользователем и другим объектом в LDAP по заданному атрибуту;manager— имя ключа, используемого для обращения к атрибутам найденного в LDAP объекта (например, руководителя);distinguishedName— атрибут, по значению которого выполняется поиск соответствующего объекта;'{manager}'— значение атрибута у текущего пользователя, используемое в качестве параметра для поиска в LDAP;
{manager=>displayName}— подставляет значение атрибута displayName у найденного объекта (руководителя) и отображает его в карточке пользователя. Дополнительно можно использовать другие атрибуты, например: {manager=>mail}.
Выполните обновление серверной части для применения изменений.
Как настроить автоматическую синхронизацию данных из LDAP в карточку пользователя Compass?¶
Начиная с версии сервера 6.0.1, в Compass появилась возможность автоматически синхронизировать данные пользователей из LDAP.
Для активации данной функции откройте конфигурационный файл configs/auth.yaml и установите параметр:
По умолчанию синхронизация производится каждые 5 минут. При необходимости интервал можно изменить, указав значение в параметре:
Начиная с версии 6.4.0, доступна настройка обновления пустых атрибутов из LDAP. Для контроля обновления установите параметр:
При включении данной опции (значение true) в момент синхронизации данных текущие значения атрибутов пользователя в Compass будут заменяться связанными значениями из LDAP, даже если эти значения пустые в LDAP.
Внимание
Активация этой настройки может привести к очистке данных, которые были вручную заполнены пользователем в приложении, если соответствующие атрибуты в LDAP не заполнены. Например, если пользователь указал должность в Compass, но этот атрибут отсутствует в LDAP, при синхронизации должность будет удалена из карточки пользователя.
Для применения изменений, внесённых в конфигурационный файл, выполните обновление серверной части:
Если LDAP-данные сотрудников были изменены до активации синхронизации, выполните команду из директории установщика, чтобы принудительно синхронизировать их с приложением.
Как настроить отдельный метод авторизации для гостей?¶
Начиная с версии 6.0.4 появилась возможность задать отдельный способ авторизации для пользователей с гостевым доступом. Настройка производится в конфигурационном файле configs/auth.yaml:
Выберите и настройте подходящий тип авторизации для гостей в соответствии с инструкциями из раздела: «Настройка сервисов авторизации».
После внесения изменений необходимо выполнить обновление серверной части:
Удаление пространства¶
Для удаления пространства (команды) по его идентификатору выполните следующую команду:
Внимание
Удаление пространства приведет к безвозвратному удалению всех данных команды, включая документы и настройки. Восстановление будет невозможно.
Смена root-пользователя¶
Для передачи прав root-пользователя другому пользователю выполните команду:
Скрипт выполняет следующие действия:
Назначает пользователю права root-пользователя;
Проверяет пространства, в которых состоит новый root-пользователь;
Добавляет пользователю права администратора во всех пространствах, в которых он уже состоит;
Если пользователя нет в каком-либо пространстве, он автоматически вступает в него с правами администратора.
Примечание
Предыдущий root-пользователь сохраняет права администратора во всех пространствах, в которых он состоит. В системе может быть только один активный root-пользователь одновременно.
Смена уникального атрибута LDAP с сохранением существующих учетных записей¶
Для смены параметра ldap.user_unique_attribute с сохранением существующих учетных записей пользователей используйте инструкцию ниже.
Ниже показана работа скрипта на примере Active Directory. Скрипт также работает и с FreeIPA.
В файле конфигурации auth.yaml поменяйте значение параметра ldap.user_unique_attribute:
ldap.user_unique_attribute: "objectGUID"
Запустите обновление серверной части, чтобы применить изменения конфигурации.
Внимание
На время выполнения всех шагов не авторизовывайте пользователей через LDAP. Иначе будет создана новая учетная запись вместо существующей.
Примечание
Если у вас настроена отказоустойчивость, скрипт миграции необходимо запускать только на активном сервере.
Перед выполнением миграции рекомендуется запустить скрипт в тестовом режиме --dry=1, чтобы посмотреть, какие изменения будут применены.
Замените <старый-атрибут> на уникальный атрибут LDAP, который был указан до смены.
А <новый-атрибут> — на новый уникальный атрибут, который вы указали в auth.yaml.
Пример:
sudo docker exec -it $(sudo docker ps -q --filter name=php-monolith) bash -c \
"php /app/src/Compass/Federation/sh/php/migrate_user_to_new_user_unique_attribute.php \
--dry=1 --old_unique_attribute==sAMAccountName \
--new_unique_attribute=objectGUID"
В тестовом режиме --dry=1 скрипт только покажет, какие учетные записи будут обновлены, но не внесет фактических изменений.
Чтобы выполнить миграцию, запустите скрипт с отключенным тестовым режимом --dry=0:
Напишите нам в пространстве поддержки On-premise, Telegram или на почту support@getcompass.ru, чтобы получить индивидуальную демонстрацию функционала и помощь по вопросам интеграции мессенджера в вашей компании.