Я работаю с приложением весенней загрузки. Недавно мы обновили наше приложение до версии spring boot 2.0.3
. Работает с версией Elastic Search 6.2.3
.
Мы создали сборку с нашим приложением и успешно протестировали в локальной системе с application-prod.yml
с сервисом эластичного поиска версии 6.2.3.
Но когда мы перешли к экземпляру AWS EC2. Запустил Elastic search 6.2.3, получил ошибки проверки начальной загрузки, но ошибки были устранены с помощью Elasticsearch 5.x - проверка начальной загрузки завершилась неудачно
Тогда мы можем получить доступ к эластичному поиску за пределами экземпляра.
При помещении одинаковой конфигурации упругого поиска в application-prod.yml и запуске приложения весенней загрузки не удалось запустить с ошибкой:
Невозможно разрешить ссылку на bean-объект «asticsearchTemplate »при настройке
свойство bean-компонента «asticsearchOperations »; вложенное исключение
org.springframework.beans.factory.NoSuchBeanDefinitionException: нет
доступен объект bean с именем «asticsearchTemplate »
Мы можем получить доступ к любой версии эластичного поиска из экземпляра EC2.
Попробовал:
- Запустил эластичный поиск версии 5.4.0, но он также не работает.
- Без настройкиasticsearch.yml с IP и портом (запускается с настройками по умолчанию) тогда тоже не работало.
- Настройка вasticsearch.yml:
network.host: мой IP-адрес
http.port: 9400
transport.tcp.port: 9100
transport.host: 127.0.0.1
Журнал Elastic Search 6.2.3 при запуске (запущен):
[ec2-user@ip-172-31-66-241 bin]$ sh elasticsearch
[2018-09-07T06:33:36,234][INFO ][o.e.n.Node ] [node-esonaws] initializing ...
[2018-09-07T06:33:36,299][INFO ][o.e.e.NodeEnvironment ] [node-esonaws] using [1] data paths, mounts [[/ (/dev/xvda1)]], net usable_space [5.8gb], net total_space [7.7gb], types [ext4]
[2018-09-07T06:33:36,299][INFO ][o.e.e.NodeEnvironment ] [node-esonaws] heap size [1007.3mb], compressed ordinary object pointers [true]
[2018-09-07T06:33:36,300][INFO ][o.e.n.Node ] [node-esonaws] node name [node-esonaws], node ID [s_p8BehORnOHD-zKCtf9vg]
[2018-09-07T06:33:36,300][INFO ][o.e.n.Node ] [node-esonaws] version[6.2.3], pid[10407], build[c59ff00/2018-03-13T10:06:29.741383Z], OS[Linux/4.9.81-35.56.amzn1.x86_64/amd64], JVM[Oracle Corporation/OpenJDK 64-Bit Server VM/1.8.0_161/25.161-b14]
[2018-09-07T06:33:36,300][INFO ][o.e.n.Node ] [node-esonaws] JVM arguments [-Xms1g, -Xmx1g, -XX:+UseConcMarkSweepGC, -XX:CMSInitiatingOccupancyFraction=75, -XX:+UseCMSInitiatingOccupancyOnly, -XX:+AlwaysPreTouch, -Xss1m, -Djava.awt.headless=true, -Dfile.encoding=UTF-8, -Djna.nosys=true, -XX:-OmitStackTraceInFastThrow, -Dio.netty.noUnsafe=true, -Dio.netty.noKeySetOptimization=true, -Dio.netty.recycler.maxCapacityPerThread=0, -Dlog4j.shutdownHookEnabled=false, -Dlog4j2.disable.jmx=true, -Djava.io.tmpdir=/tmp/elasticsearch.4vPhJaqc, -XX:+HeapDumpOnOutOfMemoryError, -XX:+PrintGCDetails, -XX:+PrintGCDateStamps, -XX:+PrintTenuringDistribution, -XX:+PrintGCApplicationStoppedTime, -Xloggc:logs/gc.log, -XX:+UseGCLogFileRotation, -XX:NumberOfGCLogFiles=32, -XX:GCLogFileSize=64m, -Des.path.home=/home/ec2-user/elasticsearch-6.2.3, -Des.path.conf=/home/ec2-user/elasticsearch-6.2.3/config]
[2018-09-07T06:33:36,944][INFO ][o.e.p.PluginsService ] [node-esonaws] loaded module [aggs-matrix-stats]
[2018-09-07T06:33:36,944][INFO ][o.e.p.PluginsService ] [node-esonaws] loaded module [analysis-common]
[2018-09-07T06:33:36,944][INFO ][o.e.p.PluginsService ] [node-esonaws] loaded module [ingest-common]
[2018-09-07T06:33:36,945][INFO ][o.e.p.PluginsService ] [node-esonaws] loaded module [lang-expression]
[2018-09-07T06:33:36,945][INFO ][o.e.p.PluginsService ] [node-esonaws] loaded module [lang-mustache]
[2018-09-07T06:33:36,945][INFO ][o.e.p.PluginsService ] [node-esonaws] loaded module [lang-painless]
[2018-09-07T06:33:36,946][INFO ][o.e.p.PluginsService ] [node-esonaws] loaded module [mapper-extras]
[2018-09-07T06:33:36,946][INFO ][o.e.p.PluginsService ] [node-esonaws] loaded module [parent-join]
[2018-09-07T06:33:36,946][INFO ][o.e.p.PluginsService ] [node-esonaws] loaded module [percolator]
[2018-09-07T06:33:36,946][INFO ][o.e.p.PluginsService ] [node-esonaws] loaded module [rank-eval]
[2018-09-07T06:33:36,946][INFO ][o.e.p.PluginsService ] [node-esonaws] loaded module [reindex]
[2018-09-07T06:33:36,947][INFO ][o.e.p.PluginsService ] [node-esonaws] loaded module [repository-url]
[2018-09-07T06:33:36,947][INFO ][o.e.p.PluginsService ] [node-esonaws] loaded module [transport-netty4]
[2018-09-07T06:33:36,947][INFO ][o.e.p.PluginsService ] [node-esonaws] loaded module [tribe]
[2018-09-07T06:33:36,947][INFO ][o.e.p.PluginsService ] [node-esonaws] no plugins loaded
[2018-09-07T06:33:39,393][INFO ][o.e.d.DiscoveryModule ] [node-esonaws] using discovery type [zen]
[2018-09-07T06:33:39,919][INFO ][o.e.n.Node ] [node-esonaws] initialized
[2018-09-07T06:33:39,920][INFO ][o.e.n.Node ] [node-esonaws] starting ...
[2018-09-07T06:33:40,040][INFO ][o.e.t.TransportService ] [node-esonaws] publish_address {172.31.67.241:9300}, bound_addresses {172.31.67.241:9300}
[2018-09-07T06:33:40,056][INFO ][o.e.b.BootstrapChecks ] [node-esonaws] bound or publishing to a non-loopback address, enforcing bootstrap checks
[2018-09-07T06:33:43,110][INFO ][o.e.c.s.MasterService ] [node-esonaws] zen-disco-elected-as-master ([0] nodes joined), reason: new_master {node-esonaws}{s_p8BehORnOHD-zKCtf9vg}{k_9Tu_5OR4WZRJj86X0n8g}{172.31.67.241}{172.31.67.241:9300}
[2018-09-07T06:33:43,128][INFO ][o.e.c.s.ClusterApplierService] [node-esonaws] new_master {node-esonaws}{s_p8BehORnOHD-zKCtf9vg}{k_9Tu_5OR4WZRJj86X0n8g}{172.31.67.241}{172.31.67.241:9300}, reason: apply cluster state (from master [master {node-esonaws}{s_p8BehORnOHD-zKCtf9vg}{k_9Tu_5OR4WZRJj86X0n8g}{172.31.67.241}{172.31.67.241:9300} committed version [1] source [zen-disco-elected-as-master ([0] nodes joined)]])
[2018-09-07T06:33:43,151][INFO ][o.e.g.GatewayService ] [node-esonaws] recovered [0] indices into cluster_state
[2018-09-07T06:33:43,163][INFO ][o.e.h.n.Netty4HttpServerTransport] [node-esonaws] publish_address {172.31.67.241:9400}, bound_addresses {172.31.67.241:9400}
[2018-09-07T06:33:43,164][INFO ][o.e.n.Node ] [node-esonaws] started
Но ничего не получалось !!
Все эти конфигурации работают нормально на локальном компьютере и корректно работают в моем приложении весенней загрузки.
Примечание. Ранее я мог успешно запускать пружинную загрузку 1.4.0 с упругим поиском 2.3.5 на AWS EC2.
Одна интересная вещь заключается в том, что такой же упругий поиск конфигурации 6.2.3 с приложением пружинной загрузки работает нормально на локальной машине, но с ошибкой выброса экземпляра EC2, упомянутой выше.
Как запустить весеннюю загрузку 2.0.3 + упругий поиск 6.2.3 на AWS EC2?