-
Notifications
You must be signed in to change notification settings - Fork 10
/
Copy pathmanifest.jps
37 lines (36 loc) · 1.59 KB
/
manifest.jps
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
jpsType: install
jpsVersion: '1.5'
id: couchbase-cluster
categories:
- apps/clusters
logo: https://raw.githubusercontent.com/jelastic-jps/couchbase/master/images/couchbase-logo.png
description:
text: "<span>Out-of-box Couchbase Community Edition Cluster with preconfigured auto
scaling and load rebalancing upon node count change.</span><div>The default Data
RAM sizing for each server equals 1024 MiB, with Index RAM = 256 MiB and Full
Text Search (FTS) RAM = 256 MiB.</div>"
short: Out-of-box Couchbase Community Edition Cluster with preconfigured auto scaling
and load balancing
name: Auto-Scalable Couchbase CE Cluster
onBeforeInit: |
var max = 10, markup = null, q = jelastic.billing.account.GetQuotas("environment.maxnodescount;environment.maxsamenodescount").array;
for (var i = 0; i < q.length; i++){
if (max > q[i].value) {
max = q[i].value; markup = "Quota limits: " + q[i].quota.name + " = " + max + ". Please upgrade your account.";
}
}
var resp = {result: 0, settings: {fields: [{type: "spinner", name: "nodes", caption: "Nodes in Cluster", min: 1, max: max, "default": Math.min(3, max)}]}};
if (markup) resp.settings.fields.push({"type": "displayfield", "cls": "warning", "height": 30, "hideLabel": true, "markup": markup});
return resp;
nodes:
- nodeType: couchbase
cloudlets: 16
nodeGroup: nosqldb
count: "${settings.nodes}"
actions:
autoscaling:
script: https://raw.githubusercontent.com/jelastic-jps/couchbase/master/scripts/autoscaling-triggers.js
params:
nodeGroup: nosqldb
upLimit: '10'
downLimit: "${settings.nodes}"