Articles tagged as cluster
A demonstration of causal cluster routing
The following will demonstrate how to use cypher-shell to get a better understanding of a Neo4j Causal Cluster instance and its implementation of routing. The initial scenario is described with…
A Demonstration of Cluster Size at Formation and Runtime
Causal Clustering Minimum Core Size At Formation causal_clustering.minimum_core_cluster_size_at_formation is defined as the minimum number of Core machines initially required to form a cluster. The cluster will form when at least…
A demonstration of IntraCluster SSL Encryption
This document provides a step-by-step demonstration of the process to deploy a Self-Signed SSL Certificate, to member instances of a Causal Cluster, aimed at achieving intra-cluster encryption. The steps can…
A method to replicate a Causal Cluster to new hardware with minimum downtime
If the opportunity arises such that you are in need of replicating your existing Causal Cluster to a new hardware setup, the following can be used to allow for minimal…
Add a Neo4j instance to a running embedded HA application
There are situations when we would like to use the Neo4j Browser to access an embedded HA cluster. The documented approach to accomplish that goal requires changing the embedded application…
An example of neo4j-import steps in a Causal Cluster environment
The following steps are provided to describe how to use neo4j-import in a Causal Cluster environment and was run from an environment of a single linux host with 3 copies…
Are my cluster transactions/messages encrypted.
For all versions prior to 3.3, there is no encryption done specifically on the contents being transferred. Furthermore, since it doesn’t use REST or Bolt, there is no SSL/https configuration…
Causal Cluster FAQ for heavy workloads
Lagging of follower instances and what causes it? The main reason for followers to fall behind is highly concurrent and continuous read/write workloads. This can cause the instances get overwhelmed…
Cluster: org.neo4j.kernel.impl.transaction.log.NoSuchTransactionException: Unable to find transaction 1 in any of my logical logs: Couldn’t find any log containing 1
When operating a causal cluster, if "the store" (data/databases/graph.db) is removed from a server that was previously a member of the cluster we will get the following exception when that…
Comparing HA and Causal Clusters
The legacy HA cluster mode has been deprecated as of Neo4j version 3.5, and will be totally removed from the product in version 4.0, with 4.0 expected to be released…
Configure HAProxy to Send Write Requests to Leader Node Only
There are a few options regarding implementation of a proxy server to direct writes to a Master node and reads to the Slave nodes in a Neo4j cluster. Commonly, it…
How do I resolve inconsistency problems on an instance of a cluster
(if using HA (High Availability, please read Leader and Follower instead of Master and Slave respectively) Sometimes, when running a clustered Neo4j environment, a slave’s store may become inconsistent. On…
Deploying Neo4j on AWS Using CloudFormation
This page describes how to use CloudFormation to deploy Neo4j clusters on AWS, using Virtual Machines. Basics The Neo4j CloudFormation templates allow deploying causal clusters of any size, with almost…
Explanation of error "Failed to obtain connection towards WRITE server. Known routing table is: Ttl…"
In Neo4j 4.0, if you are logged into the READ_REPLICA of a Causal Cluster, and execute the following command to login into cypher-shell: You will encounter this error: The reason…
HA Proxy Configuration for Online Backup
What are we trying to achieve? Online backup should be scheduled to run periodically on a production cluster. You only need to run it on one instance, since each has…
How do I display a hostname rather than IP address in the Causal Clustering Members section of sysinfo
Via the browser one can enter :sysinfo to display data about the Neo4j system. When Neo4j is configured as a causal cluster, the bottom-right corner of the `:sysinfo' output will…
How to monitor if a follower is in sync with Leader (Causal Cluster)
To monitor if a Follower is in sync with its Leader, or know how much it is lagging behind, it is possible to check the Last Commited Transaction Id from…
Mitigating Causal Cluster re-elections caused by high GCs
This article describes the effects of JVM stop-the-world GC pauses, on a causal cluster. A brief introduction to garbage collection, heap sizing and memory leak troubleshooting, is followed by a…
Planning Data Center Migration
The following KB describes the process that you can use utilizing backup (or Read-Replicas) in order to migrate (and/or upgrade) from one datacenter(DC1) to another(DC2) in a rolling fashion with…
Setup Routing Policies for Different User Types To Direct them to Different Servers
Problem statement There is a Causal Cluster Setup with 3 Cores and 1 Read Replica. There are 2 user groups - OLTP users and OLAP users. OLTP user queries should…
Understanding causal cluster quorum and cluster recovery
Several major causal cluster operations require a majority of cluster members to be online, a majority quorum. When a causal cluster loses majority quorum, it loses write capability as well…
Understanding causal cluster size scaling
The ability to safely scale down the size of a causal cluster affords us more robustness for instance failures, provided we maintain quorum as the failures take place. Prior to…
Upgrading your Causal Cluster from 3.1.x to 3.2.x
This article outlines possible steps to upgrade your Neo4j 3.1.2+ Causal Cluster to 3.2.2. For this upgrade path, Neo4j does not support rolling upgrades, so downtime is required to complete…
Upstream strategy behaviour change
Starting with version 3.4, we changed in the behaviour of how instances sync with the Leader. This change can potentially affect the behaviour of your cluster when using strategy plugins,…
When authentication is enabled in Neo4j, how do I call the HA Status
One can enable authentication for the Neo4j database by adding the following to the conf/neo4j-server.properties In doing so any connections to the database will need to provide a username/password. However,…
When to use bookmarks
Bookmarks are part of a broader topic: Causal consistency. We recommend reading the introduction to Neo4j Causal Clustering and the lifecycle of a Neo4j Causal Cluster before reading further. Pay…