Установка Логин Центра с помощью helm¶
Общая информация¶
Warning
Установка с помощью helm поддерживается с версии s-1.200.27.28 и
d-1.300.0.104 для версий 1.200 и 1.300 соответственно.
Info
- путь до директории с установщиком LC - путь до директории с манифестом
LC на платформе helm разворачивается на предварительно установленном
k3s. При запуске инсталлятора он получает передаваемые
параметры из манифеста передает их в values.yaml и пытается установить chart в
текущий контекст по пути /etc/rancher/k3s/k3s.yaml
Предварительная подготовка¶
Подключаемся к серверу через ssh протокол.
Переходим в аккаунт root с помощью команды
Затем скачиваем дистрибутив Логин Центра через терминал, если предоставлена прямая ссылка на nextcloud optimacros то с помощью команды:
mkdir -p <path_to_lc_installer>
cd <path_to_lc_installer>
wget <direct_link>/download -O ИМЯ_ФАЙЛА.С_РАСШИРЕНИЕМ`
Сертификаты¶
Файлы должны называться bundle.crt и crt.key соответственно.
Подготовленные сертификаты¶
Если у вас уже есть заранее подготовленные сертификаты, переименуйте их и переместите в нужную директорию, например:
mv /home/username/company-certificate.crt <path_to_lc>/data/nginx/cert/bundle.crt
mv /home/username/company-certificate-key.key <path_to_lc>/data/nginx/cert/crt.key
Генерация самоподписанных сертификатов¶
Либо можно сгенерировать самоподписанные сертификаты:
cd <path_to_lc>/data/nginx/cert/
openssl req -newkey rsa:2048 -nodes -keyout crt.key -x509 -days 1095 -out bundle.crt
Ответьте на вопросы, которые задаст программа генерации
Установка вспомогательного ПО helm и k3s¶
Установка проводилась на ubuntu 24.04
k3s.
Подготовка манифеста¶
Согласно документации Описание полей manifest.yml файлаПример манифеста
main:
app: "login-center"
version: ""
publicHostname: "lc.my-company.com"
initialization:
adminUsername: "admin@mycompany.com"
adminPassword: "pass"
firstWorkspaceName: "workspace1"
firstWorkspaceHostname: "ws.my-company.com"
auditMinKeepDuration: "0"
allowUIAddUsers: true
mongo:
version: "4.4.29"
dbUsername: "logincenter"
dbPassword: "pass"
redis:
version: "7.2.4-alpine"
username: ""
password: "pass"
host: "redis"
port: "6379"
nginx:
version: "1.28-alpine3.21"
workspaceProxyUrl: "https://ws.mycompany.com"
postgres:
version: "17.2-alpine"
dbUsername: "logincenter"
dbPassword: "pass"
exportService:
allowExport: ""
constraints:
concurrentSessionsLimit: "0" # if 0 or not set => no limit
syslog:
enabled: "true"
messageFormat: "RFC5424"
eventsStoreInMinutes: "3"
sendEverySeconds: "15"
hostIp: "1.2.3.4" # ip syslog сервера
port: "6514"
rootCaPath: "/certs/ca.pem"
clientCertPath: "/certs/client.crt"
clientKeyPath: "/certs/server.key"
hostId: "syslog.my-company.com"
nats:
password: "pass" # пароль > 22 символов
systemPassword: "pass" # пароль > 22 символов
node:
extraCaCerts: ""
namespace: <ns-name>
nodeName: k3s_instance_hostname
Для поля пароля базы данных (mongo.dbPassword), с помощью любого генератора паролей, сгенерируйте надёжный пароль длиной не более 20 символов.
Warning
Важно: пароль не должен содержать символов @:;/% - это приведет к багу установки.
Также необходимо сгенерировать пароли для полей секции nats - password и
systemPassword. Их длина должна быть не менее 22 символов.
Поле publicHostname в секции main должно быть заполнено значением доменного имени сервера, где будет работать LC вместо "defaulthost.com".
Установка¶
Создайте namespace
Warning
Обязательное условие иначе установка закончится с ошибкой
Теперь когда есть подготовленные манифест, сертификаты и дистрибутив, перейдите к установке LC. Для этого перейдите в директорию со скачанным ранее дистрибутивом, например, с помощью команды:
Выдайте файлу права на исполнение с помощью команды
Запустите инсталлятор с помощью команды
После установки проверьте запущенные поды командой
Пример вывода команды (список подов и кол-во может отличаться в зависимости от версии):
lc1 login-center-access-586758889d-rlpzs 1/1 Running 0 4d23h
lc1 login-center-audit-756dbb5c7d-cmtfn 1/1 Running 0 4d23h
lc1 login-center-authentication-598988cbf8-k4dnf 1/1 Running 0 4d23h
lc1 login-center-core-68845f679c-7c5zv 1/1 Running 0 4d23h
lc1 login-center-db-78488d7bb-4vv7p 1/1 Running 0 4d23h
lc1 login-center-export-service-5978cd9545-zdjfk 1/1 Running 0 4d23h
lc1 login-center-frontend-c8b6bc87-bbxvs 1/1 Running 1 (4d23h ago) 4d23h
lc1 login-center-frontend-gateway-8496cfc89-z5xs6 1/1 Running 0 4d23h
lc1 login-center-nats-f8947fd9c-47lrr 1/1 Running 0 4d23h
lc1 login-center-nginx-649fd5c77-jgd5r 1/1 Running 0 4d23h
lc1 login-center-openid-cc887677-tldcm 1/1 Running 1 (4d23h ago) 4d23h
lc1 login-center-postgres-5f44cd58d6-42b7j 1/1 Running 0 4d23h
lc1 login-center-public-gateway-7858bc548b-flj7p 1/1 Running 1 (4d23h ago) 4d23h
lc1 login-center-redis-74c5cdd788-twhgz 1/1 Running 0 4d23h
lc1 login-center-resource-7bbb5448c4-mnlcv 1/1 Running 0 4d23h
lc1 login-center-rolemapper-6c74458c98-qp5t7 1/1 Running 0 4d23h
lc1 login-center-service-gateway-ff76bbb44-xj4nj 1/1 Running 0 4d23h
lc1 login-center-service-monitor-5b64986b94-mdb8f 1/1 Running 0 4d23h
lc1 login-center-syslog-858f9469b7-zd7hq 1/1 Running 0 4d23h
lc1 login-center-workspaceapi-cb95f8ccd-6bv6b 1/1 Running 0 4d23h
Можно проверить результат установки в браузере введя имя логин центра
