Chef cookbook for Neo4J Server (Community Edition)
HTML Ruby Shell
Latest commit 6c95182 Jul 11, 2016 @michaelklishin committed on GitHub Merge pull request #33 from florent-babylon/master
Add defaults for all new options

Neo4J Server Chef Cookbook

This is an OpsCode Chef cookbook for Neo4J Server (Community or Enterprise edition).

It uses officially released tarballs to install Neo4J under /usr/local/neo4j-server, provides Upstart service script and allows you to tweak many parameters using Chef node attributes.

Neo4J Server Version

This cookbook currently provides Neo4J Server 2.2 (Community Edition by default, Enterprise if you opt in) but can be used to install other versions by overriding data bag attributes.


Main recipe is neo4j-server::tarball.


All the attributes below are namespaced under node[:neo4j][:server], so :version is accessible via node[:neo4j][:server][:version] or node.neo4j.server.version and so on.

  • :version: Neo4J Server version to install (default: a recent 2.1.x release)
  • :installation_dir: installation location (default: /usr/local/neo4j-server)
  • :user: OS user Neo4J Server will be using (default: neo4j)
  • :lib_dir: Neo4J libraries location (default: /var/lib/neo4j-server/)
  • :data_dir: graph database location (default: /var/lib/neo4j-server/data/graph.db)
  • :conf_dir: configuration directory location (default: /usr/local/neo4j-server/conf)
  • :lock_path: .lock file location (default: /var/run/neo4j-server.lock)
  • :pid_path: .pid file location (default: /var/run/
  • [:jvm][:xmx]: maximum allowed JVM heap size, in MB (-Xmx JVM flag value) (default: 512)
  • [:host]: what interface (or host) should HTTP transport listen on (default:
  • [:http][:port]: what port should HTTP transport listen on (default: 7474)
  • [:https][:enabled]: whether HTTPS transport is enabled (default: true)
  • [:remote_shell][:port]: remote_shell_port (default: 1337)

Enterprise Attributes

  • :edition: Set to :enterprise in order to use enterprise distribution and options (default: :community)
  • [:ha][:enabled]: Set to true to enable high availability (default: false)
  • [:ha][:server_id]: The server_id used for HA setup (default: 1)
  • [:ha][:initial_hosts]: A comma separated list of other host:port pairs in the cluster (default: nil)


Spatial Plugin

  • :[plugins][:spatial][:enabled]: is the Spatial plugin enabled? (default: true)
  • :[plugins][:spatial][:url]: Spatial plugin archive URL
  • :[plugins][:spatial][:version]: Spatial plugin version (default: 0.9-SNAPSHOT)
  • :[plugins][:spatial][:md5]: Spatial plugin archive MD5 checksum


Either JDK 7 (OpenJDK 7 or Oracle JDK 7). Neo4J Server 1.9+ requires JDK 7.

Copyright & License

Michael S. Klishin, Alex Petrov, 2012-2015.

Released under the MIT license.