summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--docker/bottleneck-compose/bottlenecks/Dockerfile10
-rw-r--r--docker/bottleneck-compose/docker-compose.yml27
-rw-r--r--docker/bottleneck-compose/kibana/Dockerfile10
-rw-r--r--docker/bottleneck-compose/kibana/config/kibana.yml76
-rw-r--r--docker/bottleneck-compose/kibana/entrypoint.sh10
-rw-r--r--docker/bottleneck-compose/yardstick/Dockerfile12
6 files changed, 145 insertions, 0 deletions
diff --git a/docker/bottleneck-compose/bottlenecks/Dockerfile b/docker/bottleneck-compose/bottlenecks/Dockerfile
new file mode 100644
index 00000000..5c793317
--- /dev/null
+++ b/docker/bottleneck-compose/bottlenecks/Dockerfile
@@ -0,0 +1,10 @@
+FROM opnfv/bottlenecks:stable
+
+USER root
+
+RUN apt-get update && apt-get install -y \
+ openssh-server
+
+RUN mkdir /var/run/sshd
+EXPOSE 22
+CMD ["/usr/sbin/sshd", "-D"]
diff --git a/docker/bottleneck-compose/docker-compose.yml b/docker/bottleneck-compose/docker-compose.yml
new file mode 100644
index 00000000..0b256b5b
--- /dev/null
+++ b/docker/bottleneck-compose/docker-compose.yml
@@ -0,0 +1,27 @@
+elasticsearch:
+ image: elasticsearch:2.4.0
+ command: elasticsearch -Des.network.host=0.0.0.0
+ ports:
+ - "9200:9200"
+ - "9300:9300"
+
+kibana:
+ build: kibana/
+ volumes:
+ - ./kibana/config/:/opt/kibana/config/
+ ports:
+ - "5601:5601"
+ links:
+ - elasticsearch
+
+yardstick:
+ restart: always
+ build: yardstick/
+ volumes:
+ - /var/run/docker/sock:/var/run/docker/sock
+ ports:
+ - "8888:5000"
+
+bottlenecks:
+ restart: always
+ build: bottlenecks/ \ No newline at end of file
diff --git a/docker/bottleneck-compose/kibana/Dockerfile b/docker/bottleneck-compose/kibana/Dockerfile
new file mode 100644
index 00000000..50c72bb4
--- /dev/null
+++ b/docker/bottleneck-compose/kibana/Dockerfile
@@ -0,0 +1,10 @@
+FROM kibana:4.6.1
+
+RUN apt-get update && apt-get install -y netcat
+
+COPY entrypoint.sh /tmp/entrypoint.sh
+RUN chmod +x /tmp/entrypoint.sh
+
+RUN kibana plugin --install elastic/sense
+
+CMD ["/tmp/entrypoint.sh"]
diff --git a/docker/bottleneck-compose/kibana/config/kibana.yml b/docker/bottleneck-compose/kibana/config/kibana.yml
new file mode 100644
index 00000000..820c7767
--- /dev/null
+++ b/docker/bottleneck-compose/kibana/config/kibana.yml
@@ -0,0 +1,76 @@
+# Kibana is served by a back end server. This controls which port to use.
+port: 5601
+
+# The host to bind the server to.
+host: "0.0.0.0"
+
+# The Elasticsearch instance to use for all your queries.
+elasticsearch_url: "http://elasticsearch:9200"
+
+# preserve_elasticsearch_host true will send the hostname specified in `elasticsearch`. If you set it to false,
+# then the host you use to connect to *this* Kibana instance will be sent.
+elasticsearch_preserve_host: true
+
+# Kibana uses an index in Elasticsearch to store saved searches, visualizations
+# and dashboards. It will create a new index if it doesn't already exist.
+kibana_index: ".kibana"
+
+# If your Elasticsearch is protected with basic auth, this is the user credentials
+# used by the Kibana server to perform maintence on the kibana_index at statup. Your Kibana
+# users will still need to authenticate with Elasticsearch (which is proxied thorugh
+# the Kibana server)
+# kibana_elasticsearch_username: user
+# kibana_elasticsearch_password: pass
+
+# If your Elasticsearch requires client certificate and key
+# kibana_elasticsearch_client_crt: /path/to/your/client.crt
+# kibana_elasticsearch_client_key: /path/to/your/client.key
+
+# If you need to provide a CA certificate for your Elasticsarech instance, put
+# the path of the pem file here.
+# ca: /path/to/your/CA.pem
+
+# The default application to load.
+default_app_id: "discover"
+
+# Time in milliseconds to wait for elasticsearch to respond to pings, defaults to
+# request_timeout setting
+# ping_timeout: 1500
+
+# Time in milliseconds to wait for responses from the back end or elasticsearch.
+# This must be > 0
+request_timeout: 300000
+
+# Time in milliseconds for Elasticsearch to wait for responses from shards.
+# Set to 0 to disable.
+shard_timeout: 0
+
+# Time in milliseconds to wait for Elasticsearch at Kibana startup before retrying
+# startup_timeout: 5000
+
+# Set to false to have a complete disregard for the validity of the SSL
+# certificate.
+verify_ssl: true
+
+# SSL for outgoing requests from the Kibana Server (PEM formatted)
+# ssl_key_file: /path/to/your/server.key
+# ssl_cert_file: /path/to/your/server.crt
+
+# Set the path to where you would like the process id file to be created.
+# pid_file: /var/run/kibana.pid
+
+# If you would like to send the log output to a file you can set the path below.
+# This will also turn off the STDOUT log output.
+# log_file: ./kibana.log
+# Plugins that are included in the build, and no longer found in the plugins/ folder
+bundled_plugin_ids:
+ - plugins/dashboard/index
+ - plugins/discover/index
+ - plugins/doc/index
+ - plugins/kibana/index
+ - plugins/markdown_vis/index
+ - plugins/metric_vis/index
+ - plugins/settings/index
+ - plugins/table_vis/index
+ - plugins/vis_types/index
+ - plugins/visualize/index
diff --git a/docker/bottleneck-compose/kibana/entrypoint.sh b/docker/bottleneck-compose/kibana/entrypoint.sh
new file mode 100644
index 00000000..c08d70ab
--- /dev/null
+++ b/docker/bottleneck-compose/kibana/entrypoint.sh
@@ -0,0 +1,10 @@
+#!/usr/bin/env bash
+
+# Wait for the Elasticsearch container to be ready before starting Kibana.
+echo "Stalling for Elasticsearch"
+while true; do
+ nc -q 1 elasticsearch 9200 2>/dev/null && break
+done
+
+echo "Starting Kibana"
+exec kibana
diff --git a/docker/bottleneck-compose/yardstick/Dockerfile b/docker/bottleneck-compose/yardstick/Dockerfile
new file mode 100644
index 00000000..ae9181b0
--- /dev/null
+++ b/docker/bottleneck-compose/yardstick/Dockerfile
@@ -0,0 +1,12 @@
+FROM opnfv/yardstick:stable
+
+USER root
+
+RUN apt-get update && apt-get install -y \
+ openssh-server
+
+# Create dir to put yardstick configure file
+RUN mkdir /var/run/sshd
+
+EXPOSE 22
+CMD ["/usr/sbin/sshd", "-D"]