From 91127c44077d603fd29350e056bb47f745c4fec3 Mon Sep 17 00:00:00 2001 From: Dominic Werner Date: Wed, 12 Apr 2017 15:32:45 +0200 Subject: [PATCH 01/17] add elasticsearch 5.3 cluster --- templates/es-cluster/0/README.md | 3 + templates/es-cluster/0/docker-compose.yml | 92 +++++++++++++++++++ templates/es-cluster/0/rancher-compose.yml | 36 ++++++++ .../es-cluster/catalogIcon-elasticsearch.svg | 67 ++++++++++++++ templates/es-cluster/config.yml | 5 + 5 files changed, 203 insertions(+) create mode 100644 templates/es-cluster/0/README.md create mode 100644 templates/es-cluster/0/docker-compose.yml create mode 100644 templates/es-cluster/0/rancher-compose.yml create mode 100644 templates/es-cluster/catalogIcon-elasticsearch.svg create mode 100644 templates/es-cluster/config.yml diff --git a/templates/es-cluster/0/README.md b/templates/es-cluster/0/README.md new file mode 100644 index 0000000..55dd709 --- /dev/null +++ b/templates/es-cluster/0/README.md @@ -0,0 +1,3 @@ +# Elasticsearch Cluster + +A 3-Node Elasticsearch Cluster with Kibana \ No newline at end of file diff --git a/templates/es-cluster/0/docker-compose.yml b/templates/es-cluster/0/docker-compose.yml new file mode 100644 index 0000000..3b61c94 --- /dev/null +++ b/templates/es-cluster/0/docker-compose.yml @@ -0,0 +1,92 @@ +version: '2' +services: + es-master-01: + image: docker.elastic.co/elasticsearch/elasticsearch:5.3.0 + environment: + - "cluster.name=${cluster_name}" + - "bootstrap.memory_lock=true" + - "xpack.security.enabled=false" + - "ES_JAVA_OPTS=-Xms${heap_size} -Xmx${heap_size}" + - "discovery.zen.minimum_master_nodes=2" + - "node.master=true" + ulimits: + memlock: + soft: -1 + hard: -1 + nofile: + soft: 65536 + hard: 65536 + mem_limit: ${mem_limit} + mem_swappiness: 0 + cap_add: + - IPC_LOCK + volumes: + - es-master-01-data:/usr/share/elasticsearch/data + + es-master-02: + image: docker.elastic.co/elasticsearch/elasticsearch:5.3.0 + environment: + - "cluster.name=${cluster_name}" + - "bootstrap.memory_lock=true" + - "xpack.security.enabled=false" + - "ES_JAVA_OPTS=-Xms${heap_size} -Xmx${heap_size}" + - "discovery.zen.minimum_master_nodes=2" + - "node.master=true" + ulimits: + memlock: + soft: -1 + hard: -1 + nofile: + soft: 65536 + hard: 65536 + mem_limit: ${mem_limit} + mem_swappiness: 0 + cap_add: + - IPC_LOCK + volumes: + - es-master-02-data:/usr/share/elasticsearch/data + + es-node: + image: docker.elastic.co/elasticsearch/elasticsearch:5.3.0 + environment: + - "cluster.name=${cluster_name}" + - "bootstrap.memory_lock=true" + - "xpack.security.enabled=false" + - "discovery.zen.ping.unicast.hosts=es-master-01,es-master-02" + - "ES_JAVA_OPTS=-Xms${heap_size} -Xmx${heap_size}" + - "node.master=false" + ulimits: + memlock: + soft: -1 + hard: -1 + nofile: + soft: 65536 + hard: 65536 + mem_limit: ${mem_limit} + mem_swappiness: 0 + cap_add: + - IPC_LOCK + volumes: + - /usr/share/elasticsearch/data + + kibana: + image: docker.elastic.co/kibana/kibana:5.3.0 + container_name: kibana + environment: + - "bootstrap.memory_lock=true" + - "xpack.security.enabled=false" + - "ELASTICSEARCH_URL=http://es-master-01:9200" + - "ES_JAVA_OPTS=-Xms512m -Xmx512m" + mem_limit: 1073741824 + mem_swappiness: 0 + ports: + - "${kibana_port}:5601" + depends_on: + - es-master-01 + + +volumes: + es-master-01-data: + driver: local + es-master-02-data: + driver: local diff --git a/templates/es-cluster/0/rancher-compose.yml b/templates/es-cluster/0/rancher-compose.yml new file mode 100644 index 0000000..bd46efb --- /dev/null +++ b/templates/es-cluster/0/rancher-compose.yml @@ -0,0 +1,36 @@ +.catalog: + name: Elasticsearch Cluster + version: 5.3.0 + description: 3-Node Elasticsearch Cluster with Kibana + + questions: + - variable: "cluster_name" + type: "string" + required: true + label: "Cluster Name" + description: "Name of the Elasticsearch Cluster" + default: "es-cluster" + + - variable: "heap_size" + type: "string" + required: true + label: "Heap Size" + description: "Heap size to be allocated for Java" + default: "512m" + + - variable: "mem_limit" + type: "int" + required: true + label: "Memory Limit in Byte" + description: "Memory limit in Byte per elasticsearch container. AT LEAST double the heap size!" + default: 1073741824 + + - variable: "kibana_port" + type: "int" + required: true + label: "Public Kibana Port" + description: "Public port where kibana will be accessible" + default: 5601 + + + diff --git a/templates/es-cluster/catalogIcon-elasticsearch.svg b/templates/es-cluster/catalogIcon-elasticsearch.svg new file mode 100644 index 0000000..76ee3cf --- /dev/null +++ b/templates/es-cluster/catalogIcon-elasticsearch.svg @@ -0,0 +1,67 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/templates/es-cluster/config.yml b/templates/es-cluster/config.yml new file mode 100644 index 0000000..73e47b4 --- /dev/null +++ b/templates/es-cluster/config.yml @@ -0,0 +1,5 @@ +name: Elasticsearch Cluster 5.3.0 +description: | + Elasticsearch, you know for search! +version: 5.3.0 +category: ELK \ No newline at end of file From 0b846900faf17d493e056be2e200f71f14e3344b Mon Sep 17 00:00:00 2001 From: Dominic Werner Date: Wed, 12 Apr 2017 16:41:10 +0200 Subject: [PATCH 02/17] use hostname as node name make masters scalable use per container named volumes --- templates/es-cluster/0/README.md | 2 +- templates/es-cluster/0/docker-compose.yml | 57 +++++++++------------- templates/es-cluster/0/rancher-compose.yml | 4 ++ 3 files changed, 27 insertions(+), 36 deletions(-) diff --git a/templates/es-cluster/0/README.md b/templates/es-cluster/0/README.md index 55dd709..f6452e4 100644 --- a/templates/es-cluster/0/README.md +++ b/templates/es-cluster/0/README.md @@ -1,3 +1,3 @@ # Elasticsearch Cluster -A 3-Node Elasticsearch Cluster with Kibana \ No newline at end of file +A scalable Elasticsearch cluster with Kibana \ No newline at end of file diff --git a/templates/es-cluster/0/docker-compose.yml b/templates/es-cluster/0/docker-compose.yml index 3b61c94..d239c2e 100644 --- a/templates/es-cluster/0/docker-compose.yml +++ b/templates/es-cluster/0/docker-compose.yml @@ -1,9 +1,12 @@ version: '2' services: - es-master-01: + es-master: + labels: + - io.rancher.container.hostname_override=container_name image: docker.elastic.co/elasticsearch/elasticsearch:5.3.0 environment: - "cluster.name=${cluster_name}" + - "node.name=$${HOSTNAME}" - "bootstrap.memory_lock=true" - "xpack.security.enabled=false" - "ES_JAVA_OPTS=-Xms${heap_size} -Xmx${heap_size}" @@ -20,39 +23,19 @@ services: mem_swappiness: 0 cap_add: - IPC_LOCK - volumes: - - es-master-01-data:/usr/share/elasticsearch/data - - es-master-02: - image: docker.elastic.co/elasticsearch/elasticsearch:5.3.0 - environment: - - "cluster.name=${cluster_name}" - - "bootstrap.memory_lock=true" - - "xpack.security.enabled=false" - - "ES_JAVA_OPTS=-Xms${heap_size} -Xmx${heap_size}" - - "discovery.zen.minimum_master_nodes=2" - - "node.master=true" - ulimits: - memlock: - soft: -1 - hard: -1 - nofile: - soft: 65536 - hard: 65536 - mem_limit: ${mem_limit} - mem_swappiness: 0 - cap_add: - - IPC_LOCK - volumes: - - es-master-02-data:/usr/share/elasticsearch/data + volumes: + - es-master-data:/usr/share/elasticsearch/data es-node: + labels: + - io.rancher.container.hostname_override=container_name image: docker.elastic.co/elasticsearch/elasticsearch:5.3.0 environment: - "cluster.name=${cluster_name}" + - "node.name=$${HOSTNAME}" - "bootstrap.memory_lock=true" - "xpack.security.enabled=false" - - "discovery.zen.ping.unicast.hosts=es-master-01,es-master-02" + - "discovery.zen.ping.unicast.hosts=es-master" - "ES_JAVA_OPTS=-Xms${heap_size} -Xmx${heap_size}" - "node.master=false" ulimits: @@ -67,26 +50,30 @@ services: cap_add: - IPC_LOCK volumes: - - /usr/share/elasticsearch/data + - es-node-data:/usr/share/elasticsearch/data + depends_on: + - es-master kibana: + labels: + - io.rancher.container.hostname_override=container_name image: docker.elastic.co/kibana/kibana:5.3.0 - container_name: kibana environment: - "bootstrap.memory_lock=true" - "xpack.security.enabled=false" - - "ELASTICSEARCH_URL=http://es-master-01:9200" + - "ELASTICSEARCH_URL=http://es-master:9200" - "ES_JAVA_OPTS=-Xms512m -Xmx512m" mem_limit: 1073741824 mem_swappiness: 0 ports: - "${kibana_port}:5601" depends_on: - - es-master-01 + - es-master - -volumes: - es-master-01-data: +volumes: + es-master-data: driver: local - es-master-02-data: + per_container: true + es-node-data: driver: local + per_container: true diff --git a/templates/es-cluster/0/rancher-compose.yml b/templates/es-cluster/0/rancher-compose.yml index bd46efb..bb04d7b 100644 --- a/templates/es-cluster/0/rancher-compose.yml +++ b/templates/es-cluster/0/rancher-compose.yml @@ -33,4 +33,8 @@ default: 5601 +es-master: + scale: 2 +es-node: + scale: 1 \ No newline at end of file From 9485cb5fba44624a6dc9e496589dbcf82943a74e Mon Sep 17 00:00:00 2001 From: Dominic Werner Date: Wed, 12 Apr 2017 16:54:49 +0200 Subject: [PATCH 03/17] add option to set minimum masters add option to set initial node scale --- templates/es-cluster/0/docker-compose.yml | 2 +- templates/es-cluster/0/rancher-compose.yml | 26 +++++++++++++++++----- 2 files changed, 21 insertions(+), 7 deletions(-) diff --git a/templates/es-cluster/0/docker-compose.yml b/templates/es-cluster/0/docker-compose.yml index d239c2e..cf2d3d3 100644 --- a/templates/es-cluster/0/docker-compose.yml +++ b/templates/es-cluster/0/docker-compose.yml @@ -10,7 +10,7 @@ services: - "bootstrap.memory_lock=true" - "xpack.security.enabled=false" - "ES_JAVA_OPTS=-Xms${heap_size} -Xmx${heap_size}" - - "discovery.zen.minimum_master_nodes=2" + - "discovery.zen.minimum_master_nodes=${minimum_master_nodes}" - "node.master=true" ulimits: memlock: diff --git a/templates/es-cluster/0/rancher-compose.yml b/templates/es-cluster/0/rancher-compose.yml index bb04d7b..d42d891 100644 --- a/templates/es-cluster/0/rancher-compose.yml +++ b/templates/es-cluster/0/rancher-compose.yml @@ -7,34 +7,48 @@ - variable: "cluster_name" type: "string" required: true - label: "Cluster Name" + label: "Cluster name" description: "Name of the Elasticsearch Cluster" default: "es-cluster" - variable: "heap_size" type: "string" required: true - label: "Heap Size" + label: "Heap size" description: "Heap size to be allocated for Java" default: "512m" - variable: "mem_limit" type: "int" required: true - label: "Memory Limit in Byte" + label: "Memory limit in byte" description: "Memory limit in Byte per elasticsearch container. AT LEAST double the heap size!" default: 1073741824 - variable: "kibana_port" type: "int" required: true - label: "Public Kibana Port" + label: "Public kibana port" description: "Public port where kibana will be accessible" default: 5601 + - variable: "minimum_master_nodes" + type: "int" + required: true + label: "# of minimum Master Nodes" + description: "Set the number of required master nodes to reach quorum. Sets initial scale to this value as well" + default: 2 + + - variable: "initial_data_nodes" + type: "int" + required: true + label: "# of initial nodes" + description: "Set the initial number of nodes" + default: 1 + es-master: - scale: 2 + scale: ${minimum_master_nodes} es-node: - scale: 1 \ No newline at end of file + scale: ${initial_data_nodes} \ No newline at end of file From 50fe73494b25465969a1435e7bb529a3cd743f33 Mon Sep 17 00:00:00 2001 From: Dominic Werner Date: Wed, 12 Apr 2017 17:43:55 +0200 Subject: [PATCH 04/17] use data containers to make updates possible --- templates/es-cluster/0/docker-compose.yml | 26 ++++++++++++---------- templates/es-cluster/0/rancher-compose.yml | 2 +- templates/es-cluster/config.yml | 2 +- 3 files changed, 16 insertions(+), 14 deletions(-) diff --git a/templates/es-cluster/0/docker-compose.yml b/templates/es-cluster/0/docker-compose.yml index cf2d3d3..42ed2ae 100644 --- a/templates/es-cluster/0/docker-compose.yml +++ b/templates/es-cluster/0/docker-compose.yml @@ -3,6 +3,7 @@ services: es-master: labels: - io.rancher.container.hostname_override=container_name + - io.rancher.sidekicks=es-data image: docker.elastic.co/elasticsearch/elasticsearch:5.3.0 environment: - "cluster.name=${cluster_name}" @@ -23,12 +24,13 @@ services: mem_swappiness: 0 cap_add: - IPC_LOCK - volumes: - - es-master-data:/usr/share/elasticsearch/data + volumes_from: + - es-data es-node: labels: - io.rancher.container.hostname_override=container_name + - io.rancher.sidekicks=es-data image: docker.elastic.co/elasticsearch/elasticsearch:5.3.0 environment: - "cluster.name=${cluster_name}" @@ -49,10 +51,18 @@ services: mem_swappiness: 0 cap_add: - IPC_LOCK - volumes: - - es-node-data:/usr/share/elasticsearch/data + volumes_from: + - es-data depends_on: - es-master + + es-data: + labels: + - io.rancher.container.start_once=true + image: docker.elastic.co/elasticsearch/elasticsearch:5.3.0 + entrypoint: /bin/true + volumes: + - /usr/share/elasticsearch/data kibana: labels: @@ -69,11 +79,3 @@ services: - "${kibana_port}:5601" depends_on: - es-master - -volumes: - es-master-data: - driver: local - per_container: true - es-node-data: - driver: local - per_container: true diff --git a/templates/es-cluster/0/rancher-compose.yml b/templates/es-cluster/0/rancher-compose.yml index d42d891..c68cec5 100644 --- a/templates/es-cluster/0/rancher-compose.yml +++ b/templates/es-cluster/0/rancher-compose.yml @@ -1,6 +1,6 @@ .catalog: name: Elasticsearch Cluster - version: 5.3.0 + version: 5.3.0-rancher1 description: 3-Node Elasticsearch Cluster with Kibana questions: diff --git a/templates/es-cluster/config.yml b/templates/es-cluster/config.yml index 73e47b4..82ba628 100644 --- a/templates/es-cluster/config.yml +++ b/templates/es-cluster/config.yml @@ -1,5 +1,5 @@ name: Elasticsearch Cluster 5.3.0 description: | Elasticsearch, you know for search! -version: 5.3.0 +version: 5.3.0-rancher1 category: ELK \ No newline at end of file From 85def78b5aa6be367d0e9142f53881730c18012e Mon Sep 17 00:00:00 2001 From: Dominic Werner Date: Wed, 12 Apr 2017 18:19:32 +0200 Subject: [PATCH 05/17] added named volume for data container improved discovery of masters --- templates/es-cluster/0/docker-compose.yml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/templates/es-cluster/0/docker-compose.yml b/templates/es-cluster/0/docker-compose.yml index 42ed2ae..35d5f96 100644 --- a/templates/es-cluster/0/docker-compose.yml +++ b/templates/es-cluster/0/docker-compose.yml @@ -11,6 +11,7 @@ services: - "bootstrap.memory_lock=true" - "xpack.security.enabled=false" - "ES_JAVA_OPTS=-Xms${heap_size} -Xmx${heap_size}" + - "discovery.zen.ping.unicast.hosts=es-master" - "discovery.zen.minimum_master_nodes=${minimum_master_nodes}" - "node.master=true" ulimits: @@ -62,7 +63,7 @@ services: image: docker.elastic.co/elasticsearch/elasticsearch:5.3.0 entrypoint: /bin/true volumes: - - /usr/share/elasticsearch/data + - es-data-volume:/usr/share/elasticsearch/data kibana: labels: @@ -79,3 +80,8 @@ services: - "${kibana_port}:5601" depends_on: - es-master + +volumes: + es-data-volume: + driver: local + per_container: true \ No newline at end of file From f31d97c6132dfb6c2db0b3c0d047bdb5b20533c9 Mon Sep 17 00:00:00 2001 From: Dominic Werner Date: Wed, 19 Apr 2017 16:42:14 +0200 Subject: [PATCH 06/17] separate data and client nodes, added more options --- templates/es-cluster/0/docker-compose.yml | 54 +++++++++++++++---- templates/es-cluster/0/rancher-compose.yml | 62 +++++++++++++++++----- 2 files changed, 93 insertions(+), 23 deletions(-) diff --git a/templates/es-cluster/0/docker-compose.yml b/templates/es-cluster/0/docker-compose.yml index 35d5f96..1ca1cb4 100644 --- a/templates/es-cluster/0/docker-compose.yml +++ b/templates/es-cluster/0/docker-compose.yml @@ -3,17 +3,18 @@ services: es-master: labels: - io.rancher.container.hostname_override=container_name - - io.rancher.sidekicks=es-data + - io.rancher.sidekicks=es-storage image: docker.elastic.co/elasticsearch/elasticsearch:5.3.0 environment: - "cluster.name=${cluster_name}" - "node.name=$${HOSTNAME}" - "bootstrap.memory_lock=true" - "xpack.security.enabled=false" - - "ES_JAVA_OPTS=-Xms${heap_size} -Xmx${heap_size}" + - "ES_JAVA_OPTS=-Xms${master_heap_size} -Xmx${master_heap_size}" - "discovery.zen.ping.unicast.hosts=es-master" - "discovery.zen.minimum_master_nodes=${minimum_master_nodes}" - "node.master=true" + - "node.data=false" ulimits: memlock: soft: -1 @@ -21,17 +22,17 @@ services: nofile: soft: 65536 hard: 65536 - mem_limit: ${mem_limit} + mem_limit: ${master_mem_limit} mem_swappiness: 0 cap_add: - IPC_LOCK volumes_from: - - es-data + - es-storage - es-node: - labels: + es-data: + labels: - io.rancher.container.hostname_override=container_name - - io.rancher.sidekicks=es-data + - io.rancher.sidekicks=es-storage image: docker.elastic.co/elasticsearch/elasticsearch:5.3.0 environment: - "cluster.name=${cluster_name}" @@ -39,8 +40,9 @@ services: - "bootstrap.memory_lock=true" - "xpack.security.enabled=false" - "discovery.zen.ping.unicast.hosts=es-master" - - "ES_JAVA_OPTS=-Xms${heap_size} -Xmx${heap_size}" + - "ES_JAVA_OPTS=-Xms${data_heap_size} -Xmx${data_heap_size}" - "node.master=false" + - "node.data=true" ulimits: memlock: soft: -1 @@ -48,16 +50,46 @@ services: nofile: soft: 65536 hard: 65536 - mem_limit: ${mem_limit} + mem_limit: ${data_mem_limit} mem_swappiness: 0 cap_add: - IPC_LOCK volumes_from: - - es-data + - es-storage + depends_on: + - es-master + + es-client: + labels: + - io.rancher.container.hostname_override=container_name + - io.rancher.sidekicks=es-storage + image: docker.elastic.co/elasticsearch/elasticsearch:5.3.0 + environment: + - "cluster.name=${cluster_name}" + - "node.name=$${HOSTNAME}" + - "bootstrap.memory_lock=true" + - "xpack.security.enabled=false" + - "discovery.zen.ping.unicast.hosts=es-master" + - "ES_JAVA_OPTS=-Xms${client_heap_size} -Xmx${client_heap_size}" + - "node.master=false" + - "node.data=false" + ulimits: + memlock: + soft: -1 + hard: -1 + nofile: + soft: 65536 + hard: 65536 + mem_limit: ${client_mem_limit} + mem_swappiness: 0 + cap_add: + - IPC_LOCK + volumes_from: + - es-storage depends_on: - es-master - es-data: + es-storage: labels: - io.rancher.container.start_once=true image: docker.elastic.co/elasticsearch/elasticsearch:5.3.0 diff --git a/templates/es-cluster/0/rancher-compose.yml b/templates/es-cluster/0/rancher-compose.yml index c68cec5..a09ade6 100644 --- a/templates/es-cluster/0/rancher-compose.yml +++ b/templates/es-cluster/0/rancher-compose.yml @@ -1,7 +1,7 @@ .catalog: name: Elasticsearch Cluster version: 5.3.0-rancher1 - description: 3-Node Elasticsearch Cluster with Kibana + description: Scalable Elasticsearch Cluster with Kibana questions: - variable: "cluster_name" @@ -11,18 +11,46 @@ description: "Name of the Elasticsearch Cluster" default: "es-cluster" - - variable: "heap_size" + - variable: "master_heap_size" type: "string" required: true - label: "Heap size" - description: "Heap size to be allocated for Java" + label: "Heap size (master nodes)" + description: "Heap size to be allocated for Java (mater nodes)" default: "512m" - - variable: "mem_limit" + - variable: "master_mem_limit" type: "int" required: true - label: "Memory limit in byte" - description: "Memory limit in Byte per elasticsearch container. AT LEAST double the heap size!" + label: "Memory limit in byte (master nodes)" + description: "Memory limit in Byte per elasticsearch container. AT LEAST double the heap size! (master nodes)" + default: 1073741824 + + - variable: "data_heap_size" + type: "string" + required: true + label: "Heap size (data nodes)" + description: "Heap size to be allocated for Java (mater nodes)" + default: "512m" + + - variable: "data_mem_limit" + type: "int" + required: true + label: "Memory limit in byte (data nodes)" + description: "Memory limit in Byte per elasticsearch container. AT LEAST double the heap size! (data nodes)" + default: 1073741824 + + - variable: "client_heap_size" + type: "string" + required: true + label: "Heap size (client nodes)" + description: "Heap size to be allocated for Java (mater nodes)" + default: "512m" + + - variable: "client_mem_limit" + type: "int" + required: true + label: "Memory limit in byte (client nodes)" + description: "Memory limit in Byte per elasticsearch container. AT LEAST double the heap size! (client nodes)" default: 1073741824 - variable: "kibana_port" @@ -37,18 +65,28 @@ required: true label: "# of minimum Master Nodes" description: "Set the number of required master nodes to reach quorum. Sets initial scale to this value as well" - default: 2 + default: 3 - variable: "initial_data_nodes" type: "int" required: true - label: "# of initial nodes" - description: "Set the initial number of nodes" + label: "# of initial data nodes" + description: "Set the initial number of data nodes" + default: 2 + + - variable: "initial_client_nodes" + type: "int" + required: true + label: "# of initial client nodes" + description: "Set the initial number of client nodes" default: 1 es-master: scale: ${minimum_master_nodes} -es-node: - scale: ${initial_data_nodes} \ No newline at end of file +es-data: + scale: ${initial_data_nodes} + +es-client: + scale: ${initial_client_nodes} \ No newline at end of file From 17891ed056f9094d7b437ab1026bcdffd42e9dd6 Mon Sep 17 00:00:00 2001 From: Dominic Werner Date: Wed, 19 Apr 2017 16:49:39 +0200 Subject: [PATCH 07/17] fixed empty line, fixed syntax error --- templates/es-cluster/0/docker-compose.yml | 2 +- templates/es-cluster/0/rancher-compose.yml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/templates/es-cluster/0/docker-compose.yml b/templates/es-cluster/0/docker-compose.yml index 1ca1cb4..e3d5f70 100644 --- a/templates/es-cluster/0/docker-compose.yml +++ b/templates/es-cluster/0/docker-compose.yml @@ -116,4 +116,4 @@ services: volumes: es-data-volume: driver: local - per_container: true \ No newline at end of file + per_container: true diff --git a/templates/es-cluster/0/rancher-compose.yml b/templates/es-cluster/0/rancher-compose.yml index a09ade6..0516a7a 100644 --- a/templates/es-cluster/0/rancher-compose.yml +++ b/templates/es-cluster/0/rancher-compose.yml @@ -39,7 +39,7 @@ description: "Memory limit in Byte per elasticsearch container. AT LEAST double the heap size! (data nodes)" default: 1073741824 - - variable: "client_heap_size" + - variable: "client_heap_size" type: "string" required: true label: "Heap size (client nodes)" @@ -89,4 +89,4 @@ es-data: scale: ${initial_data_nodes} es-client: - scale: ${initial_client_nodes} \ No newline at end of file + scale: ${initial_client_nodes} From 973a3a87660c0eaaade73766932cb8e83ec39fc9 Mon Sep 17 00:00:00 2001 From: Dominic Werner Date: Wed, 19 Apr 2017 17:55:19 +0200 Subject: [PATCH 08/17] rename volume/container --- templates/es-cluster/0/docker-compose.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/templates/es-cluster/0/docker-compose.yml b/templates/es-cluster/0/docker-compose.yml index e3d5f70..6fd55ea 100644 --- a/templates/es-cluster/0/docker-compose.yml +++ b/templates/es-cluster/0/docker-compose.yml @@ -95,7 +95,7 @@ services: image: docker.elastic.co/elasticsearch/elasticsearch:5.3.0 entrypoint: /bin/true volumes: - - es-data-volume:/usr/share/elasticsearch/data + - es-storage-volume:/usr/share/elasticsearch/data kibana: labels: @@ -114,6 +114,6 @@ services: - es-master volumes: - es-data-volume: + es-storage-volume: driver: local per_container: true From 34a8b17bfdf89fdb19acef9095c0d94eeb67b700 Mon Sep 17 00:00:00 2001 From: Dominic Werner Date: Fri, 28 Apr 2017 10:47:46 +0200 Subject: [PATCH 09/17] remove kibana --- templates/es-cluster/0/README.md | 2 +- templates/es-cluster/0/docker-compose.yml | 16 ---------------- templates/es-cluster/0/rancher-compose.yml | 9 +-------- 3 files changed, 2 insertions(+), 25 deletions(-) diff --git a/templates/es-cluster/0/README.md b/templates/es-cluster/0/README.md index f6452e4..6b474e0 100644 --- a/templates/es-cluster/0/README.md +++ b/templates/es-cluster/0/README.md @@ -1,3 +1,3 @@ # Elasticsearch Cluster -A scalable Elasticsearch cluster with Kibana \ No newline at end of file +A scalable Elasticsearch cluster \ No newline at end of file diff --git a/templates/es-cluster/0/docker-compose.yml b/templates/es-cluster/0/docker-compose.yml index 6fd55ea..0107695 100644 --- a/templates/es-cluster/0/docker-compose.yml +++ b/templates/es-cluster/0/docker-compose.yml @@ -97,22 +97,6 @@ services: volumes: - es-storage-volume:/usr/share/elasticsearch/data - kibana: - labels: - - io.rancher.container.hostname_override=container_name - image: docker.elastic.co/kibana/kibana:5.3.0 - environment: - - "bootstrap.memory_lock=true" - - "xpack.security.enabled=false" - - "ELASTICSEARCH_URL=http://es-master:9200" - - "ES_JAVA_OPTS=-Xms512m -Xmx512m" - mem_limit: 1073741824 - mem_swappiness: 0 - ports: - - "${kibana_port}:5601" - depends_on: - - es-master - volumes: es-storage-volume: driver: local diff --git a/templates/es-cluster/0/rancher-compose.yml b/templates/es-cluster/0/rancher-compose.yml index 0516a7a..aec490c 100644 --- a/templates/es-cluster/0/rancher-compose.yml +++ b/templates/es-cluster/0/rancher-compose.yml @@ -1,7 +1,7 @@ .catalog: name: Elasticsearch Cluster version: 5.3.0-rancher1 - description: Scalable Elasticsearch Cluster with Kibana + description: Scalable Elasticsearch Cluster questions: - variable: "cluster_name" @@ -52,13 +52,6 @@ label: "Memory limit in byte (client nodes)" description: "Memory limit in Byte per elasticsearch container. AT LEAST double the heap size! (client nodes)" default: 1073741824 - - - variable: "kibana_port" - type: "int" - required: true - label: "Public kibana port" - description: "Public port where kibana will be accessible" - default: 5601 - variable: "minimum_master_nodes" type: "int" From 76a17cf1fb3180fbeff3bdd5a308d2e2a5484f72 Mon Sep 17 00:00:00 2001 From: Dominic Werner Date: Thu, 4 May 2017 11:31:01 +0200 Subject: [PATCH 10/17] update to 5.3.2 --- templates/es-cluster/0/docker-compose.yml | 8 ++++---- templates/es-cluster/0/rancher-compose.yml | 2 +- templates/es-cluster/config.yml | 4 ++-- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/templates/es-cluster/0/docker-compose.yml b/templates/es-cluster/0/docker-compose.yml index 0107695..d3b1a86 100644 --- a/templates/es-cluster/0/docker-compose.yml +++ b/templates/es-cluster/0/docker-compose.yml @@ -4,7 +4,7 @@ services: labels: - io.rancher.container.hostname_override=container_name - io.rancher.sidekicks=es-storage - image: docker.elastic.co/elasticsearch/elasticsearch:5.3.0 + image: docker.elastic.co/elasticsearch/elasticsearch:5.3.2 environment: - "cluster.name=${cluster_name}" - "node.name=$${HOSTNAME}" @@ -33,7 +33,7 @@ services: labels: - io.rancher.container.hostname_override=container_name - io.rancher.sidekicks=es-storage - image: docker.elastic.co/elasticsearch/elasticsearch:5.3.0 + image: docker.elastic.co/elasticsearch/elasticsearch:5.3.2 environment: - "cluster.name=${cluster_name}" - "node.name=$${HOSTNAME}" @@ -63,7 +63,7 @@ services: labels: - io.rancher.container.hostname_override=container_name - io.rancher.sidekicks=es-storage - image: docker.elastic.co/elasticsearch/elasticsearch:5.3.0 + image: docker.elastic.co/elasticsearch/elasticsearch:5.3.2 environment: - "cluster.name=${cluster_name}" - "node.name=$${HOSTNAME}" @@ -92,7 +92,7 @@ services: es-storage: labels: - io.rancher.container.start_once=true - image: docker.elastic.co/elasticsearch/elasticsearch:5.3.0 + image: docker.elastic.co/elasticsearch/elasticsearch:5.3.2 entrypoint: /bin/true volumes: - es-storage-volume:/usr/share/elasticsearch/data diff --git a/templates/es-cluster/0/rancher-compose.yml b/templates/es-cluster/0/rancher-compose.yml index aec490c..be32308 100644 --- a/templates/es-cluster/0/rancher-compose.yml +++ b/templates/es-cluster/0/rancher-compose.yml @@ -1,6 +1,6 @@ .catalog: name: Elasticsearch Cluster - version: 5.3.0-rancher1 + version: 5.3.2-rancher1 description: Scalable Elasticsearch Cluster questions: diff --git a/templates/es-cluster/config.yml b/templates/es-cluster/config.yml index 82ba628..1d0e0b8 100644 --- a/templates/es-cluster/config.yml +++ b/templates/es-cluster/config.yml @@ -1,5 +1,5 @@ -name: Elasticsearch Cluster 5.3.0 +name: Elasticsearch Cluster 5.3.2 description: | Elasticsearch, you know for search! -version: 5.3.0-rancher1 +version: 5.3.2-rancher1 category: ELK \ No newline at end of file From 3eb0abf2874ae4351ab549b5f6654735932f231f Mon Sep 17 00:00:00 2001 From: Dominic Werner Date: Wed, 10 May 2017 17:46:05 +0200 Subject: [PATCH 11/17] update to elasticsearch 5.4.0 --- templates/es-cluster/0/docker-compose.yml | 8 ++++---- templates/es-cluster/0/rancher-compose.yml | 2 +- templates/es-cluster/config.yml | 4 ++-- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/templates/es-cluster/0/docker-compose.yml b/templates/es-cluster/0/docker-compose.yml index d3b1a86..6a5d7c1 100644 --- a/templates/es-cluster/0/docker-compose.yml +++ b/templates/es-cluster/0/docker-compose.yml @@ -4,7 +4,7 @@ services: labels: - io.rancher.container.hostname_override=container_name - io.rancher.sidekicks=es-storage - image: docker.elastic.co/elasticsearch/elasticsearch:5.3.2 + image: docker.elastic.co/elasticsearch/elasticsearch:5.4.0 environment: - "cluster.name=${cluster_name}" - "node.name=$${HOSTNAME}" @@ -33,7 +33,7 @@ services: labels: - io.rancher.container.hostname_override=container_name - io.rancher.sidekicks=es-storage - image: docker.elastic.co/elasticsearch/elasticsearch:5.3.2 + image: docker.elastic.co/elasticsearch/elasticsearch:5.4.0 environment: - "cluster.name=${cluster_name}" - "node.name=$${HOSTNAME}" @@ -63,7 +63,7 @@ services: labels: - io.rancher.container.hostname_override=container_name - io.rancher.sidekicks=es-storage - image: docker.elastic.co/elasticsearch/elasticsearch:5.3.2 + image: docker.elastic.co/elasticsearch/elasticsearch:5.4.0 environment: - "cluster.name=${cluster_name}" - "node.name=$${HOSTNAME}" @@ -92,7 +92,7 @@ services: es-storage: labels: - io.rancher.container.start_once=true - image: docker.elastic.co/elasticsearch/elasticsearch:5.3.2 + image: docker.elastic.co/elasticsearch/elasticsearch:5.4.0 entrypoint: /bin/true volumes: - es-storage-volume:/usr/share/elasticsearch/data diff --git a/templates/es-cluster/0/rancher-compose.yml b/templates/es-cluster/0/rancher-compose.yml index be32308..0e5f11d 100644 --- a/templates/es-cluster/0/rancher-compose.yml +++ b/templates/es-cluster/0/rancher-compose.yml @@ -1,6 +1,6 @@ .catalog: name: Elasticsearch Cluster - version: 5.3.2-rancher1 + version: 5.4.0-rancher1 description: Scalable Elasticsearch Cluster questions: diff --git a/templates/es-cluster/config.yml b/templates/es-cluster/config.yml index 1d0e0b8..dd23a9c 100644 --- a/templates/es-cluster/config.yml +++ b/templates/es-cluster/config.yml @@ -1,5 +1,5 @@ -name: Elasticsearch Cluster 5.3.2 +name: Elasticsearch Cluster 5.4.0 description: | Elasticsearch, you know for search! -version: 5.3.2-rancher1 +version: 5.4.0-rancher1 category: ELK \ No newline at end of file From 386498b1d9f654c0bf21391b822bfea43e78e3ca Mon Sep 17 00:00:00 2001 From: Dominic Werner Date: Thu, 11 May 2017 11:31:45 +0200 Subject: [PATCH 12/17] fix labels --- templates/es-cluster/0/docker-compose.yml | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/templates/es-cluster/0/docker-compose.yml b/templates/es-cluster/0/docker-compose.yml index 6a5d7c1..fb1e363 100644 --- a/templates/es-cluster/0/docker-compose.yml +++ b/templates/es-cluster/0/docker-compose.yml @@ -2,8 +2,9 @@ version: '2' services: es-master: labels: - - io.rancher.container.hostname_override=container_name - - io.rancher.sidekicks=es-storage + - io.rancher.scheduler.affinity:container_label_soft_ne: io.rancher.stack_service.name=$${stack_name}/$${service_name} + - io.rancher.container.hostname_override: container_name + - io.rancher.sidekicks: es-storage image: docker.elastic.co/elasticsearch/elasticsearch:5.4.0 environment: - "cluster.name=${cluster_name}" @@ -31,8 +32,9 @@ services: es-data: labels: - - io.rancher.container.hostname_override=container_name - - io.rancher.sidekicks=es-storage + - io.rancher.scheduler.affinity:container_label_soft_ne: io.rancher.stack_service.name=$${stack_name}/$${service_name} + - io.rancher.container.hostname_override: container_name + - io.rancher.sidekicks: es-storage image: docker.elastic.co/elasticsearch/elasticsearch:5.4.0 environment: - "cluster.name=${cluster_name}" @@ -61,8 +63,9 @@ services: es-client: labels: - - io.rancher.container.hostname_override=container_name - - io.rancher.sidekicks=es-storage + - io.rancher.scheduler.affinity:container_label_soft_ne: io.rancher.stack_service.name=$${stack_name}/$${service_name} + - io.rancher.container.hostname_override: container_name + - io.rancher.sidekicks: es-storage image: docker.elastic.co/elasticsearch/elasticsearch:5.4.0 environment: - "cluster.name=${cluster_name}" @@ -91,7 +94,7 @@ services: es-storage: labels: - - io.rancher.container.start_once=true + - io.rancher.container.start_once: true image: docker.elastic.co/elasticsearch/elasticsearch:5.4.0 entrypoint: /bin/true volumes: From b343bcfb3468a5a0de3fcb597dff0e666b9714a7 Mon Sep 17 00:00:00 2001 From: Dominic Werner Date: Thu, 11 May 2017 11:36:32 +0200 Subject: [PATCH 13/17] remove dashes from labels --- templates/es-cluster/0/docker-compose.yml | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/templates/es-cluster/0/docker-compose.yml b/templates/es-cluster/0/docker-compose.yml index fb1e363..ad14ab9 100644 --- a/templates/es-cluster/0/docker-compose.yml +++ b/templates/es-cluster/0/docker-compose.yml @@ -2,9 +2,9 @@ version: '2' services: es-master: labels: - - io.rancher.scheduler.affinity:container_label_soft_ne: io.rancher.stack_service.name=$${stack_name}/$${service_name} - - io.rancher.container.hostname_override: container_name - - io.rancher.sidekicks: es-storage + io.rancher.scheduler.affinity:container_label_soft_ne: io.rancher.stack_service.name=$${stack_name}/$${service_name} + io.rancher.container.hostname_override: container_name + io.rancher.sidekicks: es-storage image: docker.elastic.co/elasticsearch/elasticsearch:5.4.0 environment: - "cluster.name=${cluster_name}" @@ -32,9 +32,9 @@ services: es-data: labels: - - io.rancher.scheduler.affinity:container_label_soft_ne: io.rancher.stack_service.name=$${stack_name}/$${service_name} - - io.rancher.container.hostname_override: container_name - - io.rancher.sidekicks: es-storage + io.rancher.scheduler.affinity:container_label_soft_ne: io.rancher.stack_service.name=$${stack_name}/$${service_name} + io.rancher.container.hostname_override: container_name + io.rancher.sidekicks: es-storage image: docker.elastic.co/elasticsearch/elasticsearch:5.4.0 environment: - "cluster.name=${cluster_name}" @@ -63,9 +63,9 @@ services: es-client: labels: - - io.rancher.scheduler.affinity:container_label_soft_ne: io.rancher.stack_service.name=$${stack_name}/$${service_name} - - io.rancher.container.hostname_override: container_name - - io.rancher.sidekicks: es-storage + io.rancher.scheduler.affinity:container_label_soft_ne: io.rancher.stack_service.name=$${stack_name}/$${service_name} + io.rancher.container.hostname_override: container_name + io.rancher.sidekicks: es-storage image: docker.elastic.co/elasticsearch/elasticsearch:5.4.0 environment: - "cluster.name=${cluster_name}" @@ -94,7 +94,7 @@ services: es-storage: labels: - - io.rancher.container.start_once: true + io.rancher.container.start_once: true image: docker.elastic.co/elasticsearch/elasticsearch:5.4.0 entrypoint: /bin/true volumes: From 6f9fbae82f02f8aaeb7895d09c970eb408cee40b Mon Sep 17 00:00:00 2001 From: Dominic Werner Date: Thu, 11 May 2017 12:29:56 +0200 Subject: [PATCH 14/17] add readme note for max_map_count --- templates/es-cluster/0/README.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/templates/es-cluster/0/README.md b/templates/es-cluster/0/README.md index 6b474e0..c6ad399 100644 --- a/templates/es-cluster/0/README.md +++ b/templates/es-cluster/0/README.md @@ -1,3 +1,9 @@ # Elasticsearch Cluster -A scalable Elasticsearch cluster \ No newline at end of file +A scalable Elasticsearch cluster + +## Notes + +You have to set vm.max_map_count to atleast 262144 on each of the hosts that will run Elasticsearch! + +To do so run `sudo sysctl -w vm.max_map_count=262144` \ No newline at end of file From 39d094f15f0f744b68883f467592f6d846e44c2c Mon Sep 17 00:00:00 2001 From: Dominic Werner Date: Thu, 11 May 2017 14:21:44 +0200 Subject: [PATCH 15/17] integrate changes from rawmind0, use optional sysctl container to set max_map_count on hosts --- templates/es-cluster/0/README.md | 6 +---- ...ker-compose.yml => docker-compose.yml.tpl} | 22 ++++++++++++++++++- templates/es-cluster/0/rancher-compose.yml | 12 ++++++++++ 3 files changed, 34 insertions(+), 6 deletions(-) rename templates/es-cluster/0/{docker-compose.yml => docker-compose.yml.tpl} (85%) diff --git a/templates/es-cluster/0/README.md b/templates/es-cluster/0/README.md index c6ad399..c662188 100644 --- a/templates/es-cluster/0/README.md +++ b/templates/es-cluster/0/README.md @@ -2,8 +2,4 @@ A scalable Elasticsearch cluster -## Notes - -You have to set vm.max_map_count to atleast 262144 on each of the hosts that will run Elasticsearch! - -To do so run `sudo sysctl -w vm.max_map_count=262144` \ No newline at end of file +WARN: To avoid vm.max_map_count errors you could set "Update host sysctl" to true. Then param vm.max_map_count will be update to 262144 if it's less in your hosts. diff --git a/templates/es-cluster/0/docker-compose.yml b/templates/es-cluster/0/docker-compose.yml.tpl similarity index 85% rename from templates/es-cluster/0/docker-compose.yml rename to templates/es-cluster/0/docker-compose.yml.tpl index ad14ab9..d07c69c 100644 --- a/templates/es-cluster/0/docker-compose.yml +++ b/templates/es-cluster/0/docker-compose.yml.tpl @@ -5,6 +5,9 @@ services: io.rancher.scheduler.affinity:container_label_soft_ne: io.rancher.stack_service.name=$${stack_name}/$${service_name} io.rancher.container.hostname_override: container_name io.rancher.sidekicks: es-storage + {{- if eq .Values.UPDATE_SYSCTL "true" -}} + ,es-sysctl + {{- end}} image: docker.elastic.co/elasticsearch/elasticsearch:5.4.0 environment: - "cluster.name=${cluster_name}" @@ -35,6 +38,9 @@ services: io.rancher.scheduler.affinity:container_label_soft_ne: io.rancher.stack_service.name=$${stack_name}/$${service_name} io.rancher.container.hostname_override: container_name io.rancher.sidekicks: es-storage + {{- if eq .Values.UPDATE_SYSCTL "true" -}} + ,es-sysctl + {{- end}} image: docker.elastic.co/elasticsearch/elasticsearch:5.4.0 environment: - "cluster.name=${cluster_name}" @@ -66,6 +72,9 @@ services: io.rancher.scheduler.affinity:container_label_soft_ne: io.rancher.stack_service.name=$${stack_name}/$${service_name} io.rancher.container.hostname_override: container_name io.rancher.sidekicks: es-storage + {{- if eq .Values.UPDATE_SYSCTL "true" -}} + ,es-sysctl + {{- end}} image: docker.elastic.co/elasticsearch/elasticsearch:5.4.0 environment: - "cluster.name=${cluster_name}" @@ -91,7 +100,7 @@ services: - es-storage depends_on: - es-master - + es-storage: labels: io.rancher.container.start_once: true @@ -100,6 +109,17 @@ services: volumes: - es-storage-volume:/usr/share/elasticsearch/data + {{- if eq .Values.UPDATE_SYSCTL "true" }} + es-sysctl: + labels: + io.rancher.container.start_once: true + image: rawmind/alpine-sysctl:0.1 + privileged: true + environment: + - "SYSCTL_KEY=vm.max_map_count" + - "SYSCTL_VALUE=262144" + {{- end}} + volumes: es-storage-volume: driver: local diff --git a/templates/es-cluster/0/rancher-compose.yml b/templates/es-cluster/0/rancher-compose.yml index 0e5f11d..e5580a1 100644 --- a/templates/es-cluster/0/rancher-compose.yml +++ b/templates/es-cluster/0/rancher-compose.yml @@ -11,6 +11,18 @@ description: "Name of the Elasticsearch Cluster" default: "es-cluster" + - variable: "UPDATE_SYSCTL" + label: "Update host sysctl:" + description: | + Set true to avoid vm.max_map_count errors. + WARN: If set true, host param vm.max_map_count will be update to 262144. + default: false + required: true + type: enum + options: + - false + - true + - variable: "master_heap_size" type: "string" required: true From 0c1eeef536866a4c3f88d0ccffa7d4b23f35d431 Mon Sep 17 00:00:00 2001 From: Dominic Werner Date: Thu, 11 May 2017 15:47:54 +0200 Subject: [PATCH 16/17] disable network on sidekicks, use minimal volume image for storage --- templates/es-cluster/0/docker-compose.yml.tpl | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/templates/es-cluster/0/docker-compose.yml.tpl b/templates/es-cluster/0/docker-compose.yml.tpl index d07c69c..f9a9918 100644 --- a/templates/es-cluster/0/docker-compose.yml.tpl +++ b/templates/es-cluster/0/docker-compose.yml.tpl @@ -104,8 +104,12 @@ services: es-storage: labels: io.rancher.container.start_once: true - image: docker.elastic.co/elasticsearch/elasticsearch:5.4.0 - entrypoint: /bin/true + network_mode: none + image: rawmind/alpine-volume:0.0.2-1 + environment: + - SERVICE_UID=1000 + - SERVICE_GID=1000 + - SERVICE_VOLUME=/usr/share/elasticsearch/data volumes: - es-storage-volume:/usr/share/elasticsearch/data @@ -113,6 +117,7 @@ services: es-sysctl: labels: io.rancher.container.start_once: true + network_mode: none image: rawmind/alpine-sysctl:0.1 privileged: true environment: From 2c9d7c2b6ce8d5059e89a400521d64a946056ae6 Mon Sep 17 00:00:00 2001 From: Dominic Werner Date: Thu, 11 May 2017 15:51:39 +0200 Subject: [PATCH 17/17] fix tabs/spaces --- templates/es-cluster/0/docker-compose.yml.tpl | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/templates/es-cluster/0/docker-compose.yml.tpl b/templates/es-cluster/0/docker-compose.yml.tpl index f9a9918..b917a34 100644 --- a/templates/es-cluster/0/docker-compose.yml.tpl +++ b/templates/es-cluster/0/docker-compose.yml.tpl @@ -104,12 +104,12 @@ services: es-storage: labels: io.rancher.container.start_once: true - network_mode: none + network_mode: none image: rawmind/alpine-volume:0.0.2-1 environment: - - SERVICE_UID=1000 - - SERVICE_GID=1000 - - SERVICE_VOLUME=/usr/share/elasticsearch/data + - SERVICE_UID=1000 + - SERVICE_GID=1000 + - SERVICE_VOLUME=/usr/share/elasticsearch/data volumes: - es-storage-volume:/usr/share/elasticsearch/data @@ -117,7 +117,7 @@ services: es-sysctl: labels: io.rancher.container.start_once: true - network_mode: none + network_mode: none image: rawmind/alpine-sysctl:0.1 privileged: true environment: