Sharing Cluster Metadata on S3

Guys, I gonna add one more node on my single node deployment, but I have some questions.

In previous versions, I’ve done this type of deployment (1 coordinator + 2 executors) but I don’t remember to have done any type of network shared folder.

There is another way to share metadata among nodes, like using S3?

Hello @allan.sene, the shared network folder is used for the HA configuration with 2 master coordinators. If you are just deploying 1 coordinator + n executors, you don’t need it. You need a reliable volume connected to the coordinator host, where Dremio can persist its metadata (the db directory and it’s contents).

Thanks, @ben! Anyway… I’m getting this error when trying to start this new executor node:

Dremio is exiting. Failure while starting services.
java.lang.RuntimeException: Failure while attempting to create com.dremio.service.users.SimpleUserService.
	at com.dremio.service.BinderImpl$InjectableReference.get(
	at com.dremio.service.BinderImpl.lookup(
	at com.dremio.service.BinderImpl$DeferredProvider.get(
	at com.dremio.exec.server.ContextService.newSabotContext(
	at com.dremio.exec.server.ContextService.start(
	at com.dremio.service.SingletonRegistry$AbstractServiceReference.start(
	at com.dremio.dac.daemon.NonMasterSingletonRegistry.start(
	at com.dremio.dac.daemon.DACDaemon.startServices(
	at com.dremio.dac.daemon.DACDaemon.init(
	at com.dremio.dac.daemon.DremioDaemon.main(
Caused by: java.lang.reflect.InvocationTargetException
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(
	at java.lang.reflect.Constructor.newInstance(
	at com.dremio.service.BinderImpl$InjectableReference.get(
	... 9 more
Caused by: java.lang.NullPointerException: Unknown store creator com.dremio.service.users.SimpleUserService$UserGroupStoreBuilder
	at com.dremio.datastore.RemoteKVStoreProvider.getStore(
	at com.dremio.service.users.SimpleUserService.<init>(
	... 14 more

@allan.sene, just making sure, but you have configured the executor appropriately:

services: {
  coordinator.enabled: false,
  coordinator.master.enabled: false,
  executor.enabled: true

Also, what user is the dremio service running as on that host and do they have the appropriate permissions to write to local directory configured in dremio.conf?

@ben I’m running as root cause, for security reasons, Dremio UI needs to expose on port 80.

The conf files are as the documentation recommends.

@allan.sene, unfortunately, Dremio’s startup errors are not very informative here. Are the required ports open to bi-directional traffic? In particular, 45678 will be needed for internode communications