Elements for Docker and Kubernetes migrated to murano-apps

Versions for kubernetes components fixed to:
* Kubernetes v0.15
* etcd v2.0.9
* flannel v0.3.1
* confd v0.7.1
* Docker v1.6.0

Change-Id: Ibf4028dc4fbc4568e5de24805669d9caa6d4caf1
(cherry picked from commit cc765433d6878f752a0709b04676de0a96e93c13)
This commit is contained in:
Alexey Deryugin 2015-04-21 14:39:08 +03:00 committed by Stan Lagun
parent d60d7e4649
commit a514989c9c
6 changed files with 187 additions and 0 deletions

View File

@ -0,0 +1,16 @@
#!/bin/bash
set -eu
if [ -e /etc/lsb-release ]; then
if [ -e /usr/lib/apt/methods/https ]; then
apt-get update
apt-get install apt-transport-https
fi
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 36A1D7869245C8950F966E92D8576A8BA88D21E9
echo "deb https://get.docker.com/ubuntu docker main" > /etc/apt/sources.list.d/docker.list
apt-get update
apt-get -y install lxc-docker=1.6.0
else
yum -y install docker
fi

View File

@ -0,0 +1,42 @@
Docker Elements
===============
This folders contains necessary DIB elements to build Docker image
expected by "Docker Standalone Host" Murano application.
Prerequisites
-------------
1. Install diskimage-builder
.. sourcecode:: bash
sudo pip install diskimage-builder
2. Install qemu-utils and kpartx
On Ubuntu, Debian:
.. sourcecode:: bash
sudo apt-get install qemu-utils kpartx
On Centos, Fedora:
.. sourcecode:: bash
sudo yum install qemu-utils kpartx
Image building
--------------
.. sourcecode:: bash
sudo ELEMENTS_PATH=${murano_agent_root}/contrib/elements:${murano_apps_root}/Docker/DockerStandaloneHost/elements disk-image-create \
vm ubuntu murano-agent docker -o ubuntu14.04-x64-docker
Where ${murano_agent_root} is a path to murano-agent files
and ${murano_apps_root} is a path to murano-apps files.

View File

@ -0,0 +1,16 @@
#!/bin/bash
set -eu
if [ -e /etc/lsb-release ]; then
if [ -e /usr/lib/apt/methods/https ]; then
apt-get update
apt-get install apt-transport-https
fi
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 36A1D7869245C8950F966E92D8576A8BA88D21E9
echo "deb https://get.docker.com/ubuntu docker main" > /etc/apt/sources.list.d/docker.list
apt-get update
apt-get -y install lxc-docker=1.6.0
else
yum -y install docker
fi

View File

@ -0,0 +1 @@
docker

View File

@ -0,0 +1,70 @@
#!/bin/bash
install-packages curl wget linux-libc-dev git gcc libc6-dev bridge-utils haproxy
SVC_ROOT=/opt/bin
ETCD_LATEST_VERSION="v2.0.9"
KUBE_LATEST_VERSION="v0.15.0"
FLANNEL_LATEST_VERSION="v0.3.1"
ETCD_LATEST_URL="https://github.com/coreos/etcd/releases/download/${ETCD_LATEST_VERSION}/etcd-${ETCD_LATEST_VERSION}-linux-amd64.tar.gz"
KUBE_LATEST_URL="https://github.com/GoogleCloudPlatform/kubernetes/releases/download/${KUBE_LATEST_VERSION}/kubernetes.tar.gz"
FLANNEL_LATEST_URL="https://github.com/coreos/flannel/archive/${FLANNEL_LATEST_VERSION}.tar.gz"
mkdir -p ${SVC_ROOT}
pushd ${SVC_ROOT}
# Install latest etcd
wget -O ${SVC_ROOT}/etcd-latest.tar.gz $ETCD_LATEST_URL
tar xzvf ${SVC_ROOT}/etcd-latest.tar.gz
rm -f ${SVC_ROOT}/etcd-latest.tar.gz
mv ${SVC_ROOT}/etcd-${ETCD_LATEST_VERSION}-linux-amd64/etcd ${SVC_ROOT}/
mv ${SVC_ROOT}/etcd-${ETCD_LATEST_VERSION}-linux-amd64/etcdctl ${SVC_ROOT}/
rm -rf ${SVC_ROOT}/etcd-${ETCD_LATEST_VERSION}-linux-amd64
# Install latest kubernetes
wget -O ${SVC_ROOT}/kubernetes-latest.tar.gz $KUBE_LATEST_URL
tar xzvf ${SVC_ROOT}/kubernetes-latest.tar.gz
rm -f ${SVC_ROOT}/kubernetes-latest.tar.gz
tar xzvf ${SVC_ROOT}/kubernetes/server/kubernetes-server-linux-amd64.tar.gz
mv ${SVC_ROOT}/kubernetes ${SVC_ROOT}/kubernetes-latest
cp ${SVC_ROOT}/kubernetes-latest/server/bin/* ${SVC_ROOT}/
rm -rf ${SVC_ROOT}/kubernetes-latest
# Install Go
wget -O go.tar.gz https://storage.googleapis.com/golang/go1.4.2.linux-amd64.tar.gz
tar xzvf go.tar.gz
mv ${SVC_ROOT}/go /usr/local/go
export PATH=$PATH:/usr/local/go/bin
# Build flannel
wget -O ${SVC_ROOT}/flannel-latest.tar.gz $FLANNEL_LATEST_URL
tar xzvf ${SVC_ROOT}/flannel-latest.tar.gz
rm -f ${SVC_ROOT}/flannel-latest.tar.gz
mv ${SVC_ROOT}/flannel-* ${SVC_ROOT}/flannel
pushd ${SVC_ROOT}/flannel
${SVC_ROOT}/flannel/build
popd
cp ${SVC_ROOT}/flannel/bin/flanneld ${SVC_ROOT}/flanneld
rm -rf ${SVC_ROOT}/flannel
# Update system PATH
sed -i 's/PATH="/PATH="\/opt\/bin:\/opt\/go\/bin:/g' /etc/environment
wget -O confd https://github.com/kelseyhightower/confd/releases/download/v0.7.1/confd-0.7.1-linux-amd64
mv confd /usr/local/bin/confd
chmod +x /usr/local/bin/confd
mkdir -p /etc/confd/{conf.d,templates}
popd

View File

@ -0,0 +1,42 @@
Kubernetes Elements
===================
This folders contains necessary DIB elements to build Kubernetes image
expected by "Kubernetes Cluster" Murano application.
Prerequisites
-------------
1. Install diskimage-builder
.. sourcecode:: bash
sudo pip install diskimage-builder
2. Install qemu-uils and kpartx
On Ubuntu, Debian:
.. sourcecode:: bash
sudo apt-get install qemu-utils kpartx
On Centos, Fedora:
.. sourcecode:: bash
sudo yum install qemu-utils kpartx
Image building
--------------
.. sourcecode:: bash
sudo ELEMENTS_PATH=${murano_agent_root}/contrib/elements:${murano_apps_root}/Docker/Kubernetes/KubernetesCluster/elements disk-image-create \
vm ubuntu murano-agent docker -o ubuntu14.04-x64-kubernetes
Where ${murano_agent_root} is a path to murano-agent files
and ${murano_apps_root} is a path to murano-apps files.