Index not appearing in Kibana
But while checking with curl, there are clearly documents of that index in elasticsearch.
However Kibana keeps complainging that "Unable to fetch mapping. Do you have indices matching the pattern?"
Please ask for support at https://discuss.elastic.co/ as this looks like a generic situation that ELK users encounter (i.e. not an issue with this image).
Ok, I had no problem when using your regular ELK, only with ELKX, same configuration (except for the elastic password in logstash)
Just to be sure, could you share detailed steps to reproduce your situation?
I use below dirty script to reproduce:
#!/bin/bash
sysctl -w vm.max_map_count=262144
CREATE PASSWORDS
BOOTSTRAP_PASSWORD=$(tr -cd '[:alnum:]' < /dev/urandom | fold -w30 | head -n1) ELASTIC_PASSWORD=$(tr -cd '[:alnum:]' < /dev/urandom | fold -w30 | head -n1) KIBANA_PASSWORD=$(tr -cd '[:alnum:]' < /dev/urandom | fold -w30 | head -n1) LOGSTASH_PASSWORD=$(tr -cd '[:alnum:]' < /dev/urandom | fold -w30 | head -n1)
WRITE TO CREDENTIALS FILE FOR LATER REFERENCE
echo BOOTSTRAP_PASSWORD $BOOTSTRAP_PASSWORD > credentials.txt echo ELASTIC_PASSWORD $ELASTIC_PASSWORD >> credentials.txt echo KIBANA_PASSWORD $KIBANA_PASSWORD >> credentials.txt echo LOGSTASH_PASSWORD $LOGSTASH_PASSWORD >> credentials.txt
GENERATE BOOTSTRAP COMPOSE FILE
sed -e "s/changeme/$BOOTSTRAP_PASSWORD/" docker/bootstrap-docker-compose.yml > docker-compose.yml docker-compose up -d sleep 30
DISPLAY THE PASSWORDS
echo ELASTIC_PASSWORD $ELASTIC_PASSWORD echo KIBANA_PASSWORD $KIBANA_PASSWORD echo LOGSTASH_SYSTEM_PASSWORD $LOGSTASH_PASSWORD
RUN THE PASSWORD SETUP TOOL
docker exec -it elkx bash -c '$ES_HOME/bin/x-pack/setup-passwords interactive' rm docker-compose.yml
CHANGE THE PRODUCTION DOCKER COMPOSE ACCORDINGLY
sed -e "s/changeme_elastic/$ELASTIC_PASSWORD/" docker/production-docker-compose.yml > docker-compose.yml sed -ie "s/changeme_kibana/$KIBANA_PASSWORD/" docker-compose.yml
START UP THE PRODUCTION DOCKER COMPOSE
docker-compose up -d
[root@bl20]$ cat bootstrap-docker-compose.yml elkx: image: sebp/elkx ports: - "127.0.0.1:5601:5601" container_name: elkx environment: - ELASTIC_BOOTSTRAP_PASSWORD="changeme"
[root@bl20]$ cat production-docker-compose.yml elkx: image: sebp/elkx ports: - "127.0.0.1:5601:5601" container_name: elkx environment: - ELASTICSEARCH_USER=elastic - ELASTICSEARCH_PASSWORD=changeme_elastic - LOGSTASH_USER=elastic - LOGSTASH_PASSWORD=changeme_elastic - KIBANA_USER=kibana - KIBANA_PASSWORD=changeme_kibana volumes: - ./etc/logstash-conf.d:/etc/logstash/conf.d/:Z - ./data:/opt/data:Z
Lovely, thanks. Will try it out when I get the chance.
One note: the logstash_system user + password I edited manually in the yml config file. Still have to add that step to the script
Make sure you're logging into Kibana with a user that has access to those indexes. The default kibana user had no permissions in my case, elastic user did.