You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Neo4j on PKS is essentially a docker container based deploy of Neo4j Causal Cluster.
30
+
As such, all of the information in the Operations Manual applies to its operation,
31
+
and this guide will focus only on kubernetes-specific concerns and
32
+
PKS-specific concerns.
41
33
42
34
## <aid='features'></a>Key Features
43
35
44
-
**Note**: This feature list appears under **FEATURES** in the tile's listing on
45
-
[Pivotal Network](http://network.pivotal.io).
46
-
Make sure you list the key features of the tile (the integration).
47
-
We cannot accept a list of the key features of your product that we are integrating.
48
-
49
-
YOUR-PRODUCT-NAME includes the following key features:
50
-
51
-
* Feature one
52
-
* Feature two
53
-
* Feature three
54
-
36
+
Neo4j for PKS includes the following key features:
55
37
38
+
* Native graph database supports transactional applications and graph analytics
39
+
* Graph analytics help data scientists gain new perspectives on data
40
+
* The Cypher graph query language is the bridge to big data analytic tooling
41
+
* Graph visualization and discovery help communicate graph technology benefits throughout the organization
56
42
57
43
## <aid="snapshot"></a>Product Snapshot
58
44
@@ -63,15 +49,15 @@ The following table provides version and version-support information about PRODU
63
49
<th>Details</th>
64
50
<tr>
65
51
<td>Tile version</td>
66
-
<td>vYOUR-VERSION-NUMBER</td>
52
+
<td>v3.5.7</td>
67
53
</tr>
68
54
<tr>
69
55
<td>Release date</td>
70
-
<td>YOUR-RELEASE-DATE (Ex: July 1, 2019)</td>
56
+
<td>July 4, 2019</td>
71
57
</tr>
72
58
<tr>
73
59
<td>Software component version</td>
74
-
<td>YOUR-SOFTWARE-COMPONENT-VERSION-NUMBER</td>
60
+
<td>3.5.7</td>
75
61
</tr>
76
62
<tr>
77
63
<td>Compatible Ops Manager version(s)</td>
@@ -94,25 +80,38 @@ The following table provides version and version-support information about PRODU
94
80
95
81
## <aid="reqs"></a>Requirements
96
82
97
-
**Provide any general or specific requirements, prerequisites, or dependencies here.
98
-
A general requirement might be something like, "An AppDynamics account."
99
-
A specific requirement might be something like, "Packaging Dependencies for Offline Buildpacks."**
100
-
101
-
YOUR-PRODUCT-NAME has the following requirements:
102
-
103
-
+ PREREQUISITE-1
83
+
Before installing Neo4j into your PKS cluster, confirm the following:
104
84
105
-
+ PREREQUISITE-2
85
+
- You should have docker and kubectl installed locally from the machine where you want to use neo4j
86
+
- You have authenticated Pivotal's CLI tools (pks) locally to your account.
87
+
- You have run `pks get-credentials <cluster>` to configure your local kubectl client to interact with your PKS cluster.
88
+
- You should verify that you hold an existing Neo4j Enterprise license, whether purchased, via the startup program, or on an evaluation basis.
106
89
107
90
## <aid="limitations"></a>Limitations
108
91
109
-
**List any known limitations.**
92
+
At present, bolt+routing drivers which attempt to connect to the cluster from outside of Kubernetes
93
+
will not function as expected. Bolt+routing can be used from within the cluster though. The reason
94
+
for this has to do with network address translation between the private DNS addresses of the database
95
+
nodes inside the cluster, and the inability for external clients to resolve those addresses. For more
96
+
information on this point, see [Neo4j Considerations in Orchestration Environments](https://medium.com/neo4j/neo4j-considerations-in-orchestration-environments-584db747dca5)
97
+
98
+
If your use case requires the need to access neo4j with bolt+routing from outside of Kubernetes, we
99
+
recommend that you assign externally valid DNS to each of your nodes, and then configure the nodes to
100
+
advertise that external DNS. In this way, bolt+routing from outside of kubernetes can be made to work,
101
+
after configuring ingresses to permit network traffic to enter the cluster.
102
+
103
+
Exposing each individual pod to a distinct external port is another option, but users who take this
104
+
“port spreading” approach should be careful to keep in mind the cluster topology; i.e. only the cluster
105
+
leader may accept writes, but any bolt endpoint may be used to spread out read queries.
110
106
111
107
## <aid="feedback"></a>Feedback
112
108
113
109
If you have a feature request, questions, or information about an issue, please email
114
-
[Pivotal Cloud Foundry Feedback](mailto:[email protected]) or send an email to YOUR-SUPPORT-EMAIL.
Copy file name to clipboardExpand all lines: docs-content/installing.html.md.erb
+30-1
Original file line number
Diff line number
Diff line change
@@ -5,7 +5,7 @@ owner: Partners
5
5
6
6
<strong><%=modified_date%></strong>
7
7
8
-
This topic describes how to install and configure YOUR-PRODUCT-NAME.
8
+
This topic describes how to install and configure Neo4j on PKS.
9
9
10
10
##<aid='install'></a> Install and Configure YOUR-PRODUCT-NAME
11
11
@@ -32,3 +32,32 @@ checkboxes? Include relevant screenshots here.**
32
32
configuration options not required for installation but which could be useful for certain users. Typical topics include:**
33
33
1. **Self-service**--Do you have recommendations on how to configure/design plans in the tile so that users can choose the best options for themselves?
34
34
1. **High availability**--How do you configure/deploy X Service tile to be highly available?
35
+
36
+
37
+
38
+
### Key Configuration Options
39
+
40
+
The following lists relevant configuration options for the deploy. Only the name is strictly required, but users are strongly encouraged to consult [Neo4j’s System Requirements](https://neo4j.com/docs/operations-manual/current/installation/requirements/?ref=pivotal-pks) and to tailor CPU, memory, and disk to the anticipated workload that will be used, in order to ensure best performance.
41
+
42
+
* **name**: the name of your cluster deployment
43
+
* **coreServers**: (default: 3) the number of core servers in your cluster ([refer to Neo4j Causal Cluster architecture](https://neo4j.com/docs/operations-manual/current/clustering/introduction/?ref=pivotal-pks)). Core Servers' main responsibility is to safeguard data. The Core Servers do so by replicating all transactions using the Raft protocol. This setting can be set to 1, which
44
+
will result in a single neo4j instance ([dbms.mode=SINGLE](https://neo4j.com/docs/operations-manual/current/reference/configuration-settings/#config_dbms.mode)). Additional notes: if a single instance is chosen, it cannot be scaled up and down. A core server count of 2 is not recommended or a sensible HA cluster sizing.
45
+
* **readReplicaServers**: (default: 0) the number of read replicas in your cluster ([refer to Neo4j Causal Cluster architecture](https://neo4j.com/docs/operations-manual/current/clustering/introduction/?ref=pivotal-pks)). Read Replicas' main responsibility is to scale out graph workloads (Cypher queries, procedures, and so on). Read Replicas act like caches for the data that the Core Servers safeguard, but they are not simple key-value caches. In fact Read Replicas are fully-fledged Neo4j databases capable of fulfilling arbitrary (read-only) graph queries and procedures. If coreServers is less than or equal to 2, this setting is ignored and 0 replicas will result.
46
+
* **cpuRequest**: CPU units to allocate to each pod. Refer to [Managing computing resources on Kubernetes](https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/#meaning-of-cpu)
47
+
* **memoryRequest**: Memory to allocate to each pod.
48
+
* **cpuLimit**: CPU unit limit per pod
49
+
* **memoryLimit**: Memory limit per pod
50
+
* **volumeSize**: Disk allocation to core nodes, for example “2Gi”
51
+
52
+
### Hardware Allocation
53
+
54
+
In order to ensure that Neo4j is deployable on basic/default PKS clusters, the default values for hardware requests have been made fairly low.
55
+
56
+
Sizing databases is ultimately something that should be done with the workload in mind.
57
+
Consult Neo4j's [Performance Tuning Documentation](https://neo4j.com/developer/guide-performance-tuning/?ref=pivotal-pks) for more information. In general,
58
+
heap size and page cache sizing are the most important places to start when tuning performance.
59
+
60
+
### Cluster Formation
61
+
62
+
Immediately after deploying Neo4j on PKS, as the pods are created the cluster begins to form. This may take up to 5 minutes, depending on a number of factors including how long it takes pods to get scheduled, and how many resources are associated with the pods. While the cluster is forming, the Neo4j REST API and Bolt endpoints may not be available. After a few minutes, bolt endpoints become available inside of the kubernetes cluster. Please note that by default, Neo4j services are not
63
+
exposed externally. See below for information on proxying and other limitations.
0 commit comments