Базовая установка на виртуальную машину

Ваша цель — получить работающий экземпляр DataLens. Рекомендуем повторять шаги.

Как скачать архив с дистрибутивом

Дистрибутив выдается на организацию, найти org_id можно в Cloud Center.

Совет

О том, что такое организация и как ее создать, читайте в документации Yandex Identity Hub.

После получения доступа на организацию можно приступать к скачиванию.

  1. Перейдите по ссылке для скачивания.

  2. Скачайте актуальную версию дистрибутива.

  3. Ознакомьтесь с лицензионным соглашением и нажмите Продолжить.

    image

  4. Скопируйте предоставленную ссылку.

  5. На целевой ВМ выполните команду, подставив ссылку:

    curl -L https://clck.ru/<...> -o datalens-enterprise.tar
            
  6. Создайте директорию и распакуйте в нее архив:

    mkdir -p ./datalens-enterprise
            tar -xvf datalens-enterprise.tar --directory ./datalens-enterprise
            
  7. Перейдите в созданную директорию. Дальнейшая работа будет вестись из нее.

    cd ./datalens-enterprise
            

Запуск дистрибутива

  1. Убедитесь, что вы находитесь в папке с дистрибутивом — ./datalens-enterprise.

  2. Выполните команду установки с помощью домена datalens-course.local.

    Основной инструмент для управления установкой — скрипт ./init.sh. Для базовой установки на «чистую» ВМ нужно передать ему ключи:

    • --k3s-install — указывает скрипту установить локальный легковесный Kubernetes-дистрибутив K3s.

    • --ingress-domain <domain> — задает доменное имя, по которому будет доступен DataLens. Например, datalens-course.local. Также можно использовать автоматическую настройку DNS с помощью nip: для этого укажите IP-адрес вашей машины и добавьте .nip.io, например 192.168.10.2.nip.io.

    • --ingress-tls и --ingress-tls-gen — включают HTTPS и автоматически генерируют самоподписанный SSL-сертификат для указанного домена.

    # Замените <domain> на ваш домен, для теста подойдет datalens-course.local или IP-адрес виртуальной машины + .nip.io
            # Команду нужно выполнять из папки с дистрибутивом ./datalens-enterprise
            
            ./init.sh \
            --k3s-install \
            --ingress-domain datalens-course.local \
            --ingress-tls \
            --ingress-tls-gen
            

    Этот процесс займет несколько минут. Скрипт установит K3s, загрузит в него Docker-образы и развернет все компоненты DataLens.

  3. Дождитесь завершения установки. В конце вы увидите сообщение об успешном развертывании релиза.

  4. При использовании домена .local добавьте строку <IP-адрес-ВМ> datalens-course.local в файл /etc/hosts на локальном компьютере — это нужно, чтобы браузер мог найти сервер.

  5. Затем зайдите в интерфейс по адресу https://datalens-course.local. Примите риск, так как сертификат самоподписанный, и войдите в систему с логином admin и полученным паролем.

Чтобы изменить параметры установки (например, добавить возможность скачивания файлов --files), не нужно заново скачивать дистрибутив — просто повторно выполните команду установки. Параметр --k3s-installповторно указывать необязательно, так как кластер K3s уже создан.

Обновление дистрибутива

Для обновления достаточно распаковать новую версию поверх старой и снова выполнить инициализацию. Строку инициализации можно оставить без изменений, но добавить параметр --k3s-image-load. Параметр --k3s-install при повторной инициализации указывать необязательно, так как кластер K3s уже установлен.

Управление доступом администратора

При первой установке система автоматически генерирует сложный пароль для пользователя admin. Его можно получить с помощью команды:

./init.sh --get-admin-password
        

Сохраните пароль. Если он будет утерян, его можно сбросить и сгенерировать новый.

Управление ключами и секретами

DataLens использует эти типы ключей:

RSA-ключи для сервиса аутентификации
Приватный ключ используется для подписи пользовательских токенов, публичный — для их проверки. Ключи создаются автоматически при первой установке. При необходимости их можно перегенерировать с помощью флага --auth-rsa-gen.
CONTROL_API_CRYPTO_KEY
Ключ служит для шифрования чувствительных данных (паролей или токенов) в полях подключений. Генерируется и сохраняется автоматически. Если этот ключ будет утерян, DataLens не сможет расшифровать реквизиты существующих подключений. В этом случае нужно сбросить ключ шифрования и заново ввести все пароли.

Управлять этими ключами вручную при базовой установке не нужно, но важно знать их назначение.

Дополнительные функции

Некоторые функции в DataLens включаются отдельно, чтобы базовая установка потребляла минимум ресурсов.

Чтобы включить дополнительные функции (ChartEditor или файловые подключения), следуйте указаниям в файле README.md и добавьте в строку инициализации флаги --editor и --files. Результат:

./init.sh --k3s-install --ingress-domain <domain> --ingress-tls --ingress-tls-gen --editor --files
        

Зеркалирование Docker-образов

Если ВМ без доступа к интернету, но у вас есть внутренний Docker Registry (например, Harbor, Nexus, Yandex Container Registry), предварительно загрузите туда образы из дистрибутива с помощью команды:

# docker-config.json - файл с реквизитами доступа к registry
        # registry.my-company.tech - адрес registry
        ./init.sh \
        --docker-image-load \
        --docker-image-push \
        --docker-registry registry.my-company.tech \
        --docker-config ./help/docker-config.example.json
        

При установке на целевой системе укажите этот registry, чтобы Kubernetes скачивал образы из него, а не из локального хранилища.

Итоги

Вы развернули экземпляр DataLens On-premises и вошли в него. Научились использовать скрипт init.sh для быстрой установки и управления паролем администратора.