Table of Contents |
---|
Introduction
...
Build
...
Sources
- Upstream: https://git.linaro.org/leg/bigdata/elasticsearch.git/
https://git.linaro.org/leg/bigdata/logstash.git
https://git.linaro.org/leg/bigdata/kibana.git - The ELK stack version for erp17.08 is v5.4.1
Environment
- Docker: Debian 8
Pre-Requisites
Docker, git
Dependencies
Install Prerequisites
Code Block | ||
---|---|---|
| ||
# install docker engine. The easiest way to install docker is to use get.docker.com script: First, install curl tool:
apt-get install curl
# Download and run get.docker.com script:
curl -sSL https://get.docker.com/ | sh |
Build Steps
Following scripts are expected to run in a debian-8 container.
Building ElasticSearch
Debian
...
language | bash |
---|
...
prerequisites echo "deb http://http.debian.net/debian jessie-backports main" | tee /etc/apt/sources.list.d/backports.list sudo apt-get update -y sudo apt-get install -y -t jessie-backports openjdk-8-jdk git build-essential rubygems texinfo locales-all automake autoconf libtool curl zip unzip rpm texinfo locales-all maven ant tar wget python2.7 python-requests wget https://services.gradle.org/distributions/gradle-3.5.1-bin.zip -O /tmp/gradle-3.5.1-bin.zip cd ${HOME} && unzip /tmp/gradle-3.5.1-bin.zip && rm /tmp/gradle-3.5.1-bin.zip ln -s gradle-3.5.1 gradle # install docker engine. The easiest way to install docker is to use get.docker.com script. Download and run get.docker.com script: curl -sSL https://get.docker.com/ | sh |
Build Steps
Following scripts are expected to run in a debian-8 container.
Building ElasticSearch
Debian
Code Block | ||
---|---|---|
| ||
# setup environments
export LANG="en_US.UTF-8"
export PATH=${HOME}/gradle/bin:$PATH
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-arm64
export JAVA_TOOL_OPTIONS="-Dfile.encoding=UTF8"
# setup JAVA_HOME
cd /usr/lib/jvm/java-8-openjdk-*
export JAVA_HOME=${PWD}
# clone the ElasticSearch v5.4.1
git clone --depth 1 https://git.linaro.org/leg/bigdata/elasticsearch.git -b v5.4.1 ${WORKSPACE}/elasticsearch
cd ${WORKSPACE}/elasticsearch
# okay everything is in place
gradle assemble -Dbuild.snapshot=false |
Building Logstash
Debian
Code Block | ||
---|---|---|
| ||
# install prerequisites echo "deb http://http.debian.net/debian jessie-backports main" | tee /etc/apt/sources.list.d/backports.list sudo apt-get update -y sudo apt-get install -y -t jessie-backports openjdk-8-jdk git build-essential rubygems texinfo locales-all automake autoconf libtool wget unzip curl maven ant tar python-requests sudo gem install rake sudo gem install bundler # setup environments export RELEASE=1 export LANG="en_US.UTF-8" export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-arm64 # clone the Logstash definitions git clone --depth 1 https://git.linaro.org/leg/bigdata/logstash.git -b v5.4.1 ${WORKSPACE}/logstash cd ${WORKSPACE}/logstash # okay everything is in place rake bootstrap rake plugin:install-default rake artifact:deb |
Building Kibana
Debian
Code Block | ||
---|---|---|
| ||
# setup environments export LANG="en_US.UTF-8" # install prerequisites sudo apt-get update -y sudo apt-get install -y git build-essential automake autoconf libtool libffi-dev ruby-dev rubygems python2.7 curl zip rpm python-requests sudo gem install fpm -v 1.5.0 sudo gem install pleaserun -v 0.0.24 sudo ln -s /usr/bin/python2.7 /usr/bin/python curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh | bash source ${HOME}/.bashrc # clone the Kibana definitions git clone --depth 1 https://git.linaro.org/leg/bigdata/kibana.git -b v5.4.1 ${WORKSPACE}/kibana curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh | bash source ${HOME}/.profile #Install the version of node.js listed in the .node-version file (this can be easily automated with tools such as nvm and avn) nvm install $(cat ${WORKSPACE}/kibana/.node-version) cd ${WORKSPACE}/kibana #Install npm dependencies npm install npm rebuild node-sass npm run build -- --deb --release mkdir -p out cp -a ${WORKSPACE}/kibana/target/kibana-*-arm64.deb* out/ |
Patches
Elasticsearch
Enable ARM64 support in SecComp
Logstash
Support JRuby 9K for Logstash v5.4.1
Kibana
Support packaging archive on arm64
Support create deb/rpm packages for arm64