Hello everyone,
I am trying to get Apache Storm running in a Docker container on my local -
using the image and instructions on Docker Hub
(https://hub.docker.com/_/storm?tab=description&page=1&ordering=last_updated).
I am using "docker-compose up" to bring up the services in the Docker container
- with the docker-compose YAML file containing the entries for nimbus and
supervisor as specified in the instructions on Docker Hub (details below).
The install of the nimbus and supervisor services seems to complete without
issues - and both services appear to be running in Docker Desktop. However,
when I try to connect to the Storm UI URL (both from the Docker Desktop as well
as by typing in the URL in the browser), I see the following instead of the
Storm UI web page:
This page isn't working
localhost didn't send any data.
ERR_EMPTY_RESPONSE
The nimbus log file (/logs/nimbus.log) shows multiple instances of the
following error message for every attempt to bring up the UI:
2021-04-27 16:02:36.117 o.a.s.t.s.AbstractNonblockingServer$FrameBuffer
Thread-11 [ERROR] Read a frame size of 1195725856, which is bigger than the
maximum allowable buffer size for ALL connections.
The nimbus log file also shows numerous instances of the following message -
but these occur regardless of whether I attempt to bring up the Storm UI or not:
2021-04-27 16:02:36.642 o.a.s.s.b.BlacklistScheduler timer [INFO] Supervisors
[] are blacklisted.
Here are the entries for zookeeper, nimbus and supervisor in my docker-compose
file (note, the file also has entries for other services including Kafka Neo4j
and KSQL).
version: '3.1'
services:
zookeeper:
image: confluentinc/cp-zookeeper:6.0.1
hostname: zookeeper
container_name: zookeeper
ports:
- "2181:2181"
environment:
ZOOKEEPER_CLIENT_PORT: 2181
ZOOKEEPER_TICK_TIME: 2000
nimbus:
image: storm
container_name: nimbus
command: storm nimbus
depends_on:
- zookeeper
links:
- zookeeper
restart: always
ports:
- 6627:6627
volumes:
- ./storm/nimbus/conf/storm.yaml:/apache-storm-2.2.0/conf/storm.yaml
- ./storm/nimbus/logs:/logs
user: root
supervisor:
image: storm
container_name: supervisor
command: storm supervisor
depends_on:
- nimbus
- zookeeper
links:
- nimbus
- zookeeper
restart: always
Here are the entries in the storm.yaml file for nimbus:
storm.zookeeper.servers:
- "localhost"
nimbus.seeds: "localhost"
### ui.* configs are for the master
ui.host: localhost
ui.port: 6627
ui.header.buffer.bytes: 1342177280
I have tried all the following to resolve the issue - but all were unsuccessful:
* Changed the port number in the Storm UI URL to 8080.
* Executed "/bin/storm nimbus" and "/bin/storm ui" from the Docker
container (after all services were running in Docker Desktop).
* Changed value of ui.header.buffer.bytes to a value greater than the frame
size in the error message (see value in the storm yaml contents above).
* This was based on the recommendation for the one post I found on the
Internet when I searched for the frame size error message above.
* Issue also occurs with smaller values for header size (I tested with
the default - 4096 and 8192).
* Tried specifying the zookeeper server and nimbus.seeds as "zookeeper" as
well as the actual localhost IP for my computer.
Questions:
1. Is there anything wrong/missing with the settings in the docker-compose
YAML file or the Nimbus storm YAML below which would cause the problem?
2. Is there any other configuration file that I need to modify - if so,
could you share which file(s) and what needs to be added/modified?
3. If configuration is ok, what are other possible root causes and/or what
else can I do to troubleshoot this issue?
I am a newbie with Apache Storm - so please forgive my ignorance regarding this
issue.
This is also the first time I am posting to this site - so please let me know
if this is not the right place for reporting this issue and (if so) what I need
to do instead. Also, please let me know if you need any other information.
Your help is greatly appreciated.
Thanks,
Shashi
*