Назад | Перейти на главную страницу

Лучший способ добиться устойчивости Solr для Drupal с двумя доступными узлами Solr?

Я пытаюсь найти лучший способ развернуть solr (6.6.6) на двух узлах в сочетании с Drupal 7, чтобы обеспечить некоторую устойчивость.

Первая проблема заключается в том, что Drupal поддерживает только концепцию единственного экземпляра solr. Таким образом, даже если реализовано несколько серверов solr, балансировка нагрузки вне drupal нужен где-то в окружающей среде. Это дополнительная сложность, которой я бы хотел избежать, по крайней мере, в краткосрочной перспективе.

Вторая проблема в том, что у меня доступно только 2 сервера. Итак, SolrCloud отсутствует, поскольку узел ZooKeeper означает, что я вернулся к единственному серверу solr без устойчивости, и, вероятно, в любом случае это излишек для моей небольшой среды.

Я мог бы настроить два сервера solr как главный / подчиненный, но это приводит к проблеме, заключающейся в том, что Drupal не поддерживает концепцию двух узлов solr без балансировки нагрузки. Но даже если бы была реализована балансировка нагрузки, если бы мастер был потерян, и я перенастроил подчиненный как мастер, мне нечего было бы отвечать на поисковые запросы, поскольку главные узлы просто поддерживают индекс.

Я даже смотрел на запуск Master и Slave на одном и том же узле, что технически возможно. Но на самом деле это ничего не решает.

Если я столкнусь с ручным вмешательством, я был бы счастлив иметь второй сервер solr в качестве резервного с реплицированными на него индексами solr. Но для этого, похоже, требуется конфигурация Master / Server, которую Drupal не поддерживает без балансировки нагрузки ...

Это подводит меня к моим вопросам:

  1. Я упустил здесь что-то очевидное, что позволило бы 2-му узлу solr обеспечить некоторую форму устойчивости (даже вручную) для drupal без внешней балансировки нагрузки?
  2. Что мне кажется лучшим на данный момент, так это развертывание двух отдельных автономных серверов solr с одним активным. Затем используя Резервное копирование Solr на активном сервере репликация резервных копий на резервный узел через rsync, а затем восстановление резервных копий на резервном узле. Это означает, что у меня есть довольно современный сервер 2nd solr, готовый к работе, и всего лишь незначительное изменение конфигурации в Drupal, чтобы вывести его в оперативный режим. Есть ли недостатки в этом подходе или лучшие идеи?