Як згадував @arsent, додайте цю ip-адресу до конфігураційного файлу:
sudo nano /etc/elasticsearch/elasticsearch.yml
Джей також додав важливий момент - якщо ви використовуєте брандмауер, не забудьте додати правило, що дозволяє трафік до цього порту.
Якщо ви хочете дозволити головному серверу отримувати доступ до ES через http, додайте правило, що дозволяє доступ лише до цієї конкретної адреси. Наприклад, скажімо, що ви використовуєте ufw, а потім виконайте цю команду, щоб додати свій порт:
sudo ufw allow from xxx.xxx.xxx.xxx to any port zzzz
Замініть xxx.xxx.xxx.xxx на IP-адресу головного сервера, а zzzz на порт, який ви налаштували в config/elasticsearch.yml
Рекомендується використовувати спеціальний порт і не зберігати стандартний 9200
Щоб протестувати його, вставте SSH на ваш головний сервер і відправте пінг ES ip з правильним портом, щоб побачити, чи отримаєте ви відповідь:
curl -X GET 'http://xxx.xxx.xxx.xxx:zzzz'
Ви також можете переконатися, що ES недоступний з інших IP-адрес, спробувавши його за допомогою браузера.
Є чудова стаття, яка показує, як налаштувати ES на Ubuntu на DigitalOcean