Search code examples
orientdb

Start OrientDB without user input


I'm attempting to start OrientDB in distributed mode on AWS.

I have an auto scaling group that creates new nodes as needed. When the nodes are created, they start with a default config without a node name. The idea is that the node name is generated randomly.

My problem is that the server starts up and ask for user input.

+---------------------------------------------------------------+
|         WARNING: FIRST DISTRIBUTED RUN CONFIGURATION          |
+---------------------------------------------------------------+
| This is the first time that the server is running as          |
| distributed. Please type the name you want to assign to the   |
| current server node.                                          |
|                                                               |
| To avoid this message set the environment variable or JVM     |
| setting ORIENTDB_NODE_NAME to the server node name to use.    |
+---------------------------------------------------------------+

Node name [BLANK=auto generate it]:

I don't want to set the node name because I need a random name and the server never starts because it's waiting for user input.

Is there a parameter I can pass to dserver.sh that will pass this check and generate a random node name?


Solution

  • You could create a random string to pass to OrientDB as node name with the ORIENTDB_NODE_NAME variable. Example:

    ORIENTDB_NODE_NAME=$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)
    

    For more information about this, look at: https://gist.github.com/earthgecko/3089509