Поиск по сайту:

Как установить Apache Solr на Rocky Linux


На этой странице

  1. Предпосылки
  2. Установка Java OpenJDK
  3. Установка Solr на Rocky Linux
  4. Настройка ограничения количества открытых файлов и максимального количества процессов для пользователя Solr
  5. Проверьте установку Solr
  6. Защита Solr с помощью базовой аутентификации
  7. Сначала создайте Solr Core
  8. Заключение

Apache Solr или Solr — это бесплатная поисковая платформа с открытым исходным кодом, основанная на библиотеке Apache Lucene. Solr расшифровывается как Searching On Lucene with Replication. Это поисковая платформа корпоративного уровня, написанная на Java.

Solr — это хорошо масштабируемая и надежная поисковая платформа с отказоустойчивой и распределенной индексацией. Кроме того, он поставляется с репликацией и автоматическим аварийным переключением и восстановлением.

В большинстве случаев Solr используется для создания приложений корпоративного уровня, обеспечивающих высокую производительность. Solr используется некоторыми крупными интернет-сайтами, такими как Adobe, Bloomberg, AT&T, Magento, Netflix, Instagram и т. д.

В этом руководстве вы узнаете, как установить Apache Solr в системе Rocky Linux, включить базовую аутентификацию Solr, настроить максимальный лимит открытых файлов и максимальный лимит процессов для развертывания Solr, а также как создать первое ядро Solr из командной строки.

Предпосылки

Прежде чем начать, убедитесь, что у вас есть следующие требования:

  • Операционная система: Rocky Linux 8.5 (Green Obsidian)
  • Память: 2 ГБ для тестирования.
  • ЦП: 2
  • Привилегии root

Теперь давайте начнем.

Установка Java OpenJDK

Чтобы установить Solr в системе Linux, вам потребуется как минимум Java OpenJDK 1.8 или выше. Rocky Linux предоставляет несколько версий Java OpenJDK, и в этом примере вы будете устанавливать Java OpenJDK 1.11 для установки Solr.

1. Выполните приведенную ниже команду DNF, чтобы установить Java OpenJDK 1.11 в системе Rocky Linux.

sudo dnf install java-11-openjdk java-11-openjdk-devel

Введите y, чтобы подтвердить установку, и нажмите Enter, чтобы продолжить.

2. Если установка Java завершена, проверьте правильность установки с помощью следующей команды.

java --version

Ниже приведен аналогичный результат, который вы получите.

openjdk 11.0.13 2021-10-19 LTS
OpenJDK Runtime Environment 18.9 (build 11.0.13+8-LTS)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.13+8-LTS, mixed mode, sharing)

Вы завершили установку Java OpenJDK 1.11 в системе Rocky Linux и готовы загрузить и установить Solr в свою систему.

Установка Solr на Rocky Linux

На этом этапе вы будете устанавливать последнюю версию Solr (текущая версия 8.11) в систему Rocky Linux. Вы будете устанавливать Solr с помощью сценария установки, который входит в пакет Solr.

1. Измените текущий рабочий каталог на /opt и загрузите двоичный код Solr, используя следующую команду.

cd /opt/
wget https://downloads.apache.org/lucene/solr/8.11.0/solr-8.11.0.tgz

2. После завершения процесса загрузки извлеките сценарий установки из пакета Solr.

tar xzf solr-8.11.0.tgz solr-8.11.0/bin/install_solr_service.sh --strip-components=2

Теперь вы увидите сценарий установки Solr install_solr_service.sh.

3. Запустите сценарий установки, как показано ниже, чтобы установить Solr.

sudo bash ./install_solr_service.sh solr-8.11.0.tgz -i /opt -d /var/solr -u solr -s solr -p 8983

Теперь скрипт установщика установит Solr в следующих деталях:

  • Каталог установки: /opt/solr.
  • Каталог данных Solr будет доступен в каталоге /var/solr.
  • Solr будет работать как системный пользователь solr.
  • Определите сценарий systemd для Solr с помощью сценария solr.
  • Теперь Solr работает на порту по умолчанию 8083.

И вы увидите вывод, аналогичный приведенному ниже, когда установка Solr завершится.

Вы увидите предупреждающее сообщение об ограничении файлов и процессов для Solr, вы исправите это на следующем шаге. И Solr теперь запущен и работает на порту 8983.

4. Проверьте порт LISTEN в вашей системе, используя следующую команду.

ss -aplnt | grep java

Если установка Solr выполнена правильно, вы увидите, что порт 8983 теперь используется приложением Java.

LISTEN 0      50     [::ffff:127.0.0.1]:7983            *:*    users:(("java",pid=4512,fd=48))
LISTEN 0      50                      *:8983            *:*    users:(("java",pid=4512,fd=157))

Теперь завершите процесс Solr, используя следующую команду.

pkill java
kill -9 PID

PID — это идентификатор процесса приложения Solr. Вы можете увидеть PID приложения Solr из команды ss сверху.

5. Затем перезагрузите диспетчер системы, чтобы применить новый служебный файл systemd.

sudo systemctl daemon-reload

6. После этого запустите и включите службу solr с помощью следующей команды.

sudo systemctl enable --now solr

Проверьте службу solr с помощью приведенной ниже команды.

sudo systemctl status solr

Теперь вы увидите, что служба solr активна (закрыта). Служба solr запущена, но systemd не может найти ни одного демона для мониторинга.

И вы завершили базовую установку Solr в системе Rocky Linux.

Настройка ограничений на количество открытых файлов и максимальный процесс для пользователя Solr

Как вы можете видеть сверху, во время установки Solr вы получили предупреждающее сообщение об ограничении количества открытых файлов и ограничении процессов. Для Solr требовался минимальный лимит открытых файлов и максимальный лимит процессов 65000.

Чтобы устранить эти предупреждающие сообщения, вы должны отредактировать конфигурацию /etc/security/limits.conf и определить максимальное количество открытых файлов и максимальное количество процессов для пользователя solr.

1. Отредактируйте конфигурацию /etc/security/limits.conf с помощью редактора nano.

sudo nano /etc/security/limits.conf

Скопируйте и вставьте следующую конфигурацию в конец строки.

solr   soft   nofile   65000
solr   hard   nofile   65000
solr   soft   nproc    65000
solr   hard   nproc    65000

Сохраните конфигурацию и выйдите.

2. Затем проверьте ограничения на открытый файл и максимальное количество пользователей, обработанных с помощью следующего.

sudo -u solr ulimit -a

И вы увидите ограничение на количество открытых файлов и максимальное количество пользовательских процессов 65000, как показано ниже.

3. Теперь перезапустите службу solr с помощью следующей команды.

sudo systemctl restart solr

Теперь вы завершили настройку максимального количества открытых файлов и максимального количества процессов для приложения Solr.

Проверка установки Solr

Чтобы проверить установку Solr, вам нужно добавить порт 8983 в брандмауэр, после чего вы сможете получить доступ к панели управления веб-приложения Solr.

1. Выполните приведенную ниже команду firewall-cmd, чтобы добавить порт 8983 в firewalld и перезагрузить его.

sudo firewall-cmd --add-port=8983/tcp --permanent
sudo firewall-cmd --reload

2. Теперь откройте веб-браузер и введите IP-адрес сервера с портом 8983, как показано ниже.

И вы увидите панель инструментов Solr, как показано ниже.

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

Защита Solr с помощью базовой аутентификации

На этом шаге вы узнаете, как включить обычную аутентификацию для Solr.

Чтобы включить базовую аутентификацию Solr, необходимо создать новый файл конфигурации security.json и определить модуль аутентификации и авторизации. Конфигурация security.json должна находиться в каталоге данных Solr /var/solr/data.

Кроме того, вы можете проверить каталог данных Solr на панели инструментов Solr, как показано ниже.

1. Измените рабочий каталог на /var/solr/data и создайте новый файл конфигурации security.json с помощью редактора nano.

cd /var/solr/data/
sudo -u solr nano security.json

Скопируйте и вставьте следующую конфигурацию.

{
  "authentication":{
    "blockUnknown": true,
    "class":"solr.BasicAuthPlugin",
    "credentials":{"solr":"IV0EHq1OnNrj6gvRCwvFwTrZ1+z1oBbnQdiVC3otuq0= Ndd7LKvVBAaZIF0QAVi1ekCfAJXr1GGfLtRUXhgrF8c="},
    "realm":"My Solr users",
    "forwardCredentials": false
  },
  "authorization":{
    "class":"solr.RuleBasedAuthorizationPlugin",
    "permissions":[{"name":"all", "role":"admin"}],
    "user-role":{"solr":"admin"}
  }
}

Сохраните конфигурацию и выйдите.

Это создаст нового пользователя-администратора solr с паролем SolrRocks.

2. Затем перезапустите службу solr, чтобы применить новую конфигурацию, используя приведенную ниже команду systemctl.

sudo systemctl restart solr

3. Чтобы проверить аутентификацию Solr, вернитесь в веб-браузер и введите IP-адрес сервера с портом Solr 8983.

Теперь вы будете перенаправлены на страницу входа в Solr, как показано ниже.

Введите имя пользователя solr и пароль SolrRocks, затем нажмите кнопку «Войти».

И вы увидите панель инструментов Solr.

В разделе «Безопасность» вы увидите подробный плагин аутентификации и авторизации с именем пользователя и ролями, которые вы используете в данный момент.

Теперь вы защитили установку Solr с помощью плагина Basic Authentication.

Сначала создайте Solr Core

В Solr термин «ядро» относится к одному индексу Lucene, и вы можете создать несколько ядер в одном развертывании Solr.

Каждое ядро содержит журналы транзакций и файлы конфигурации, такие как solrconfig.xml, файлы схемы и т. д. Кроме того, вы можете индексировать данные с различной структурой на каждом ядре и представлять их различным приложениям/аудиториям.

Вы можете создать ядро с помощью командной строки solr или панели администрирования Solr.

На этом шаге вы узнаете, как создать ядро с помощью командной строки solr.

1. Перед созданием ядра необходимо настроить учетные данные Solr.

Измените рабочий каталог на /opt/solr/bin и скопируйте конфигурацию по умолчанию solr.in.sh.orig в solr.in.sh. .

cd /opt/solr/bin/
cp solr.in.sh.orig solr.in.sh

Отредактируйте конфигурацию solr.in.sh с помощью редактора nano.

sudo nano solr.in.sh

Раскомментируйте параметр SOLR_AUTH_TYPE и измените значение на базовый. Это укажет команде solr использовать плагин Basic Authentication.

SOLR_AUTH_TYPE="basic"

Раскомментируйте параметр SOLR_AUTHENTICATION_OPTS и измените значение с помощью пользователя и пароля Solr, как показано ниже.

SOLR_AUTHENTICATION_OPTS="-Dbasicauth=solr:SolrRocks"

Сохраните конфигурацию и выйдите.

2. Затем создайте новое ядро с помощью приведенной ниже команды solr. В этом примере вы будете создавать новое ядро с именем new_core и именем конфигурации ConfigName.

su - solr -c "/opt/solr/bin/solr create -c new_core -n ConfigName"

3. Теперь вернитесь к панели администрирования Solr, чтобы проверить ядро Solr.

Вы увидите детали ядра, как показано ниже.

И вы создали ядро Solr, используя командную строку solr.

Заключение

Поздравляем! Вы узнали об установке Solr в системе Rocky Linux. Кроме того, вы узнали, как защитить развертывание Solr с помощью подключаемого модуля Basic Authentication, и узнали, как создать ядро из командной строки solr.