Вопрос или проблема
Я только что установил Ubuntu 24.04.1 LTS на рабочую станцию Dell 5820 с IP-адресом 192.168.1.250. Операционная система, похоже, работает нормально. Теперь я пытаюсь установить и запустить Apache Solr. Вот версия Java, которую я использую:
$ java --version
openjdk 21.0.4 2024-07-16
OpenJDK Runtime Environment (build 21.0.4+7-Ubuntu-1ubuntu224.04)
OpenJDK 64-Bit Server VM (build 21.0.4+7-Ubuntu-1ubuntu224.04, mixed mode, sharing)
Я установил solr версии 9.7.0. Установка прошла успешно. Я могу запустить службу Solr. Вот статус после запуска:
$ sudo systemctl status solr
● solr.service - LSB: Управляет Apache Solr как службой
Loaded: загружено (/etc/init.d/solr; сгенерировано)
Active: активен (завершён) с Сб 2024-10-26 18:27:30 EDT; 14мин назад
Документы: man:systemd-sysv-generator(8)
Процесс: 16940 ExecStart=/etc/init.d/solr start (код=завершён, статус=0/УСПЕХ)
CPU: 24ms
Oct 26 18:27:28 myhost systemd[1]: Запуск solr.service - LSB: Управляет Apache Solr как службой...
Oct 26 18:27:28 myhost su[16944]: (к solr) root on none
Oct 26 18:27:28 myhost su[16944]: pam_unix(su-l:session): сессия открыта для пользователя solr(uid=106) by (uid=0)
Oct 26 18:27:30 myhost solr[17008]: Запущен сервер Solr на порту 8983 (pid=17001). Удачного поиска!
Oct 26 18:27:30 myhost systemd[1]: solr.service успешно запущен - LSB: Управляет Apache Solr как службой.
Обратите внимание на “Active: активен (завершён)”. Я добавил правило брандмауэра для открытия порта tcp/8983; вот вывод iptables:
ACCEPT 6 -- 127.0.0.1 0.0.0.0/0 tcp dpt:8983
ACCEPT 6 -- 192.168.1.46 0.0.0.0/0 tcp dpt:8983
Попытки подключиться к серверу через браузер по URL http://192.168.1.250:8983/ завершаются тайм-аутом. Попытка подключения отклоняется согласно iptables.
2024-10-26T18:53:51.741381-04:00 localhost kernel: iptables denied: IN=eno1 OUT= MAC=54:bf:64:94:de:a8:d8:bb:c1:94:72:25:08:00 SRC=192.168.1.46 DST=192.168.1.250 LEN=52 TOS=0x00 PREC=0x00 TTL=128 ID=20939 DF PROTO=TCP SPT=61547 DPT=8983 WINDOW=64240 RES=0x00 SYN URGP=0
Может кто-нибудь помочь мне понять, что здесь происходит? Почему служба не находится в активном (работающем) состоянии? Почему iptables блокирует запрос на подключение, когда порт открыт?
Ответ или решение
Проблемы с доступом к Apache Solr на Ubuntu 24.04.1 LTS
Вы столкнулись с проблемами доступа к Apache Solr после его установки на вашей рабочей станции Dell 5820 с Ubuntu 24.04.1 LTS и IP-адресом 192.168.1.250. Давайте шаг за шагом разберемся с вашей ситуацией, чтобы устранить возникшие проблемы.
1. Общее состояние службы Solr
Согласно вашему описанию, служба Solr настроена и запускается. Однако вы заметили, что статус службы указан как Active: active (exited)
, что указывает на то, что основная часть процесса Solr может не работать, хотя стартовый скрипт был выполнен успешно. Чтобы убедиться, что сервер Solr действительно запущен, можете проверить, запущен ли процесс Solr:
ps aux | grep solr
Если вы не видите активного процесса Solr, это указывает на то, что служба не запустилась корректно, и вы можете проверить логи для получения более подробной информации:
sudo journalctl -u solr -f
Также страницы логов Solr, которые обычно находятся в /var/solr/logs
, могут содержать полезную информацию для диагностики.
2. Проверка конфигурации сети и межсетевого экрана
Вы упомянули, что добавили правило в iptables для открытия порта 8983. Однако в предоставленных данных видно, что запросы от IP-адреса 192.168.1.46 (клиента) к 192.168.1.250 (серверу) блокируются iptables. Настройки iptables иногда требуют более гибкой настройки для разрешения входящего трафика.
Для начала, убедитесь, что правила в iptables включают разрешение входящих соединений на порт 8983 по отношению к вашему диапазону IP:
sudo iptables -A INPUT -p tcp --dport 8983 -j ACCEPT
Также рассмотрите возможность временного отключения iptables для диагностики:
sudo iptables -F
Если с отключенным iptables доступ к Solr возможен, вам нужно будет пересмотреть текущие правила и удостовериться, что они корректны.
3. Настройки Solr
Убедитесь, что Solr настроен на прослушивание не только на локальном интерфейсе (127.0.0.1), но и на IP-адресе вашего сервера (192.168.1.250). Проверьте файл конфигурации solr.in.sh
:
sudo nano /etc/default/solr
Проверьте переменную SOLR_HOST
. Она должна быть установлена на 0.0.0.0
, чтобы принимать соединения на всех интерфейсах:
SOLR_HOST=0.0.0.0
После изменений перезапустите службу Solr:
sudo systemctl restart solr
4. Проверка
После ремонта всех настроек попробуйте снова открыть браузер и перейти по адресу http://192.168.1.250:8983/. Если все настроено правильно, вы должны увидеть интерфейс управления Solr.
Заключение
Если указанные действия не решают проблему, проверьте системные логи и логи Solr, чтобы выяснить дополнительные причины. Обратите внимание, что успешный доступ к Apache Solr зависит от корректной настройки сети, межсетевых экранов и самого сервера Solr. Бдительно следите за всеми изменениями и тестируйте систему после каждого шага, чтобы обеспечить эффективное устранение неполадок.