This project is not being maintained anymore.
A DC/OS Framework for Open Distro for Elasticsearch.
(!) This is a work-in-progress that has not been tested in production. Use at your own risk and only in test clusters.
At the moment this framework is not yet available in the DC/OS Universe. As such you will have to build the package yourself.
- dcos cli installed and configured for your cluster
- DC/OS Enterprise with at least version 1.12 (tested on 1.12 and 1.13, 2.0 could work but no guarantees)
- dcosdev fork installed
- Either minio installed and configured in your cluster or access to an S3 bucket (aws cli must be configured)
- Docker installed on your development machine
For elasticsearch change into the elastic
folder. Then
- Build the elastic scheduler package:
dcosdev build java
(will launch gradle in a docker container) - Upload the elastic package. Either
- with minio:
dcosdev up
(environment variablesMINIO_HOST
,MINIO_ACCESS_KEY
andMINIO_SECRET_KEY
must be set) - with S3:
dcosdev release 0 <bucket-name>
.
- with minio:
- Add the repo-file to your clusters package repositories (e.g. for S3:
dcos package repo add opendistro --index=0 https://<bucket-name>.s3.amazonaws.com/packages/opendistro/0.2.1-1.8.0/opendistro-repo.json
) - Prepare security config (see opendistro documentation), place it into a folder called
securityconfig
, zip that folder and upload it to a place where it is downloadable via HTTP from inside the cluster (e.g. an S3 bucket). As a starting-point you can use the example from the opendistro-security github-repo - Create serviceaccount for the framework to use (for TLS certificates to all elastic nodes)
- Prepare
options.json
(see example inexample/options-elastic.json
) - Install package with your
options.json
For kibana change into the kibana
folder. Then
- Upload the kibana package. Either
- with minio:
dcosdev up
(environment variablesMINIO_HOST
,MINIO_ACCESS_KEY
andMINIO_SECRET_KEY
must be set) - with S3:
dcosdev release 0 <bucket-name>
.
- with minio:
- Add repo-file to your clusters package repositories (e.g. for S3:
dcos package repo add opendistro --index=0 https://<bucket-name>.s3.amazonaws.com/packages/opendistro-kibana/0.2.1-1.8.0/opendistro-kibana-repo.json
) - Create secrets with username and password to use for authentication against elasticsearch.
- Prepare
options.json
(see example inexample/options-kibana.json
) - Install package with your
options.json
You can also use dcos-deploy for deployment (everything except building and uploading the packages). All you need is in the example
folder. It is configured to be used with minio and after dcosdev up
. You deploy the example run dcos-deploy apply
.
- Opendistro Performance analyzer is not supported.
- Most Opendistro specifc configuration options are not yet available as package options. Use the
elasticsearch.custom_elasticsearch_yml
(for elasticsearch) andkibana.extra_config_base64
(for kibana) options to configure opendistro. - Opendistro security multitenancy is not supported.
If you find a bug or have a feature request, please open an issue in Github. Or, if you want to contribute something, feel free to open a pull request.
This framework is based heavily on the DC/OS Elastic service and was developed using a fork of dcosdev. Thanks to D2iQ for providing these tools.
This project is not associated with Elastic or Amazon in any form.
This software is provided as-is. Use at your own risk.