Closed pirog closed 2 years ago
Here are the processes running but there is no response on port 9200, even from within the container.
root@c7e8c6d4798c:/app# ps aux|grep elastic
root 249 0.0 0.0 4052 1032 ? Ss 15:29 0:00 runsv elasticsearch
elastic+ 7738 0.0 0.0 17972 2912 ? S 15:38 0:00 /bin/bash /usr/share/elasticsearch/bin/elasticsearch -Epath.lo
elastic+ 7751 0.0 0.4 4750128 34816 ? Sl 15:38 0:00 /usr/share/elasticsearch/jdk/bin/java -cp /usr/share/elasticse
root 7769 0.0 0.0 14504 968 pts/0 S+ 15:38 0:00 grep --color=auto elastic
The errors seen here after Lando handing off
repeat hundreds of times in the lando logs for this service:
searchelastic_1 | 2020-06-11 15:29:54,681 platformsh.agent DEBUG Finished: /etc/platform/boot
searchelastic_1 | lando 15:29:54.71 INFO ==> Lando handing off to: exec init
searchelastic_1 | runsv idmapd: fatal: unable to lock supervise/lock: temporary failure
searchelastic_1 | runsv elasticsearch: fatal: unable to lock supervise/lock: temporary failure
I found Java exceptions being thrown in the ES logs.
The first one was related to memory. Changing-Xms1536m
to -Xms1536m
in /etc/elasticsearch/jvm.options
resolves this issue.
Once that is gone however, there is a network error. Changing network.host: [ _local_ ]
to network.host: [ _eth0_ ]
, then commenting out the http
section immediately below it, resolves this issue. Replacing _local_
with _eth0_
in the http section may resolve this as well.
There are templates that create these files which I'm unsure can be modified by Lando with env vars or something. If they can be, the solution is relatively easy.
Otherwise, the plan of attack at this point is to refactor these values with a script that replaces these (perhaps using sed
) during the lando build process.
Fairly easy to replicate this:
lando init
thelando-d8
site, orlando destroy
the site if already have itservices.yaml
lando start
, this should error (you may need tolando restart
)docker logs landod8_searchelastic_1