Goals This guide explains how to deploy a single instance of Neo4j Enterprise on Microsoft Azure. Prerequisites You should know how to run and operate Neo4j locally. Knowledge of remote drivers to access Neo4j from your application helps you connect… Read more →

Goals
This guide explains how to deploy a single instance of Neo4j Enterprise on Microsoft Azure.
Prerequisites
You should know how to run and operate Neo4j locally. Knowledge of remote drivers to access Neo4j from your application helps you connect to your cloud-hosted database.

Before continuing with the guide make sure you’ve installed the Azure Command Line Interface.

Let’s get started!

Neo4j in the Azure Marketplace

In the Azure Marketplace, Neo4j has multiple offerings. For single-node instances, the correct one is called Neo4j Enterprise VM.

Navigate to this Marketplace entry in the link above, and click “Get it Now”. The Marketplace will prompt you to click “Continue” after providing some basic version and publisher information. Click “Continue”.

azure launch page

On the next screen, Azure will inform you that this offering is a “Bring Your Own License” offering. If you are an existing Neo4j customer, you already have a license. If you need an evaluation license, you can obtain one here.

Click the “Create” button.

Configuring Your Instance

On the next page, fill out all of the details for the VM you want to create. The most important settings to consider are Size, which controls the available CPU and memory, and optionally “Disks” where you can configure high speed SSDs and larger disk capacity sizes.

In general, we recommend deploying an instance into a new Azure resource group. The wizard will allow you to choose a new name, and the resource group will be created as part of the deploy process.

You will be required to configure administrator access, which you can do either with a password or an SSH public key.

configure vm details

When your settings are just as you want them, click the “Review + Create” tab, and then finally the “Create” button at the bottom of the screen.

review and create

After you click “Create”, Azure will create a deployment for your new instance. You can watch the progress of that deployment as it goes. All firewall rules necessary will be created for you, so unless you have custom requirements, you won’t need to change anything.

After your deployment succeeds, it may take a minute or two for the Neo4j service to come up.

Access Your New Instance

Navigate to the resource group that you used, and locate the VM you created. It will be named after the name you chose in the initial configuration step. Locate the VM’s IP address and then use your browser to connect to Neo4j via:

https://[MY_AZURE_IP]:7473/

The default username/password for your instance is neo4j/neo4j, and Neo4j will force you to change it on your first login. Make sure to change this password right after deployment.

Because you don’t have a hostname configured or a valid SSL certificate by default, your browser will warn you that the certificate isn’t trusted. This is expected, you can configure a certificate later if you choose.

Bolt clients may connect to this same IP address on port 7687 as normal.

How do I SSH into the instance?

You can use any SSH client as normal to connect to the public IP of your instance. Use the administrative user credentials (password or SSH key) configured during the launch. This user will have sudo access on the machine.

Inside of the VM, you can check the status of the neo4j service like this:

$ sudo systemctl status neo4j
● neo4j.service - Neo4j Graph Database
   Loaded: loaded (/etc/systemd/system/neo4j.service; enabled; vendor preset: enabled)
   Active: active (running) since Wed 2018-03-14 11:19:56 UTC; 15min ago
 Main PID: 1290 (pre-neo4j.sh)
    Tasks: 46
   Memory: 325.7M
      CPU: 20.690s
   CGroup: /system.slice/neo4j.service
           ├─1290 /bin/bash /etc/neo4j/pre-neo4j.sh
           └─1430 /usr/bin/java -cp /var/lib/neo4j/plugins:/etc/neo4j:/usr/share/neo4j/lib/*:/var/lib/neo4j/plugins/* -server -XX:+UseG1GC

How your new virtual machine works

Please consult Neo4j Cloud VMs for details on internals of Azure VMs, including how to stop and start system services, configure Neo4j inside of the VM, and more.

Deleting the instance

When you’re finished with the instance, if you chose to deploy into a new resource group, simply delete the entire resource group and everything will be removed for you. If you deployed into an existing resource group, you will need to delete the resources that are part of the deployment individually.

Questions?

You can ask questions and connect with other people launching Neo4j in the cloud at the cloud topic on the Community Site.