Skip to content

Instantly share code, notes, and snippets.

@jhsea3do
Created August 6, 2018 00:54
Show Gist options
  • Select an option

  • Save jhsea3do/66970519a7ead904a5ccfc3edeadcfb4 to your computer and use it in GitHub Desktop.

Select an option

Save jhsea3do/66970519a7ead904a5ccfc3edeadcfb4 to your computer and use it in GitHub Desktop.
install tencent bkce cluster
#!/bin/sh
# ------------------------------------------------------------------
# [Script] bin/init.sh
# [Author] Hai Ji <shjihai@cn.ibm.com>
# main script
# ------------------------------------------------------------------
PRJ_NAME=bkce
PRJ_PATH=$(realpath "$(dirname $0)/..")
CWD=$(pwd)
PRJ_VOLS=vols
PRJ_SIZE=3
cd "$PRJ_PATH"
sh docker/build.sh
mkdir -p $PRJ_VOLS/files
mkdir -p $PRJ_VOLS/haproxy/etc
for x in $(seq 1 ${PRJ_SIZE}); do
node_id=$x
node_name="${PRJ_NAME}0${node_id}"
mkdir -p $PRJ_VOLS/$node_name/var/cache
mkdir -p $PRJ_VOLS/$node_name/root
mkdir -p $PRJ_VOLS/$node_name/data
done
[ -z "$(docker network ls|grep $PRJ_NAME)" ] && docker network create $PRJ_NAME
sh $PRJ_PATH/bin/service.sh down
for x in $(seq 1 ${PRJ_SIZE}); do
node_id=$x
node_name="${PRJ_NAME}0${node_id}"
sh $PRJ_PATH/bin/service.sh up -d $node_name
sh $PRJ_PATH/bin/init_node.sh $node_id
done
sh $PRJ_PATH/bin/init_cluster.sh
sh $PRJ_PATH/bin/service.sh up -d ha01
cd $CWD
#!/bin/sh
# ------------------------------------------------------------------
# [Script] bin/init_cluster.sh
# [Author] Hai Ji <shjihai@cn.ibm.com>
# prepare bkce cluster
# ------------------------------------------------------------------
PRJ_EXEC=docker-compose
PRJ_NAME=bkce
PRJ_PATH=$(realpath "$(dirname $0)/..")
PRJ_SIZE=3
CWD=$(pwd)
cd $PRJ_PATH
function get_name {
echo "${PRJ_NAME}0${1:-1}"
}
function get_addr {
echo $(get_addr_cidr $@)|awk -F\/ '{print $1}'
}
function get_addr_cidr {
node_name=$(get_name $@)
$PRJ_EXEC -p $PRJ_NAME -f docker-compose.yaml exec $node_name \
ip addr show eth0|grep inet|awk '{print $2}'
}
function get_host {
node_name=$(get_name $@)
$PRJ_EXEC -p $PRJ_NAME -f docker-compose.yaml exec $node_name \
hostname
}
function set_install_config {
file=vols/files/bk4.1/install.config
cat > $file <<EOF
$(get_addr 1) nginx,appt,rabbitmq,kafka,zk,es,bkdata,consul,fta
$(get_addr 2) mongodb,appo,kafka,zk,es,mysql,beanstalk,consul
$(get_addr 3) paas,cmdb,job,gse,license,kafka,zk,es,redis,consul,influxdb
EOF
for x in $(seq 1 $PRJ_SIZE); do
echo "set install config in $(get_name $x)"
cat $file |\
$PRJ_EXEC exec -T $(get_name $x) sh -c "cat > /data/install/install.config"
done
}
function set_install_globals {
file=vols/files/bk4.1/globals.env
# default
BK_DOMAIN="blueking.com"
MYSQL_PASS='OIraQ3SJ_x'
REDIS_PASS='muMp_JC0f#'
MONGODB_PASS=':P_3HI#LXz'
MQ_PASS='xeV6UDM1oQ'
ZK_PASS=',N_c=EfX9j'
PAAS_ADMIN_PASS='#Rza5_tP6y'
# override
BK_DOMAIN="demo.com"
MYSQL_PASS='passw0rd'
REDIS_PASS='passw0rd'
MONGODB_PASS='passw0rd'
MQ_PASS='passw0rd'
ZK_PASS='passw0rd'
PAAS_ADMIN_PASS='passw0rd'
cat > $file <<EOF
# vim:ft=sh
shopt -s nullglob
if [ -d \$CTRL_DIR/third ]; then
for f in \$CTRL_DIR/third/globals_*.env; do
source \$f
done
fi
if [ -d \$CTRL_DIR/extra ]; then
for f in \$CTRL_DIR/extra/globals_*.env; do
source \$f
done
fi
shopt -s nullglob
# 产品信息含义
# PAAS 集成平台
# CMDB 配置平台
# JOB 作业平台
# GSE 管控平台
# BKDATA 数据平台
## environment variables
# 域名信息
export BK_DOMAIN="$BK_DOMAIN" # 蓝鲸根域名(不含主机名)
export PAAS_FQDN="paas.\$BK_DOMAIN" # PAAS 完整域名
export CMDB_FQDN="cmdb.\$BK_DOMAIN" # CMDB 完整域名
export JOB_FQDN="job.\$BK_DOMAIN" # JOB 完整域名
export APPO_FQDN="o.\$BK_DOMAIN" # 正式环境完整域名
export APPT_FQDN="t.\$BK_DOMAIN" # 测试环境完整域名
# HAS_DNS_SERVER 选项, 域名解析通过 DNS server 还是通过配置 hosts
# 通过 hosts 配置映射关系时, 一下默认为0, 表示没有自己的 DNS server
# 此时, 会在所有机器上的 /etc/hosts 文件中添加 paas,cmdb,job 等平台的映射关系
export HAS_DNS_SERVER=0
# DB 信息
export MYSQL_USER="root" # mysql 用户名
export MYSQL_PASS='$MYSQL_PASS'
export REDIS_PASS='$REDIS_PASS'
export MONGODB_USER="root" # mongodb 用户名
export MONGODB_PASS='$MONGODB_PASS'
# 账户信息(建议修改)
export MQ_USER=admin
export MQ_PASS='$MQ_PASS'
export ZK_USER=bkzk
export ZK_PASS='$ZK_PASS'
export PAAS_ADMIN_USER=admin
export PAAS_ADMIN_PASS='$PAAS_ADMIN_PASS'
export GSE_AGENT_HOME=/usr/local/gse
# windows agent 的安装路径暂时不支持修改, GSE_WIN_AGENT_HOME的取值勿动!
export GSE_WIN_AGENT_HOME=/cygdrive/c/gse
export BIZ_ID=0
# 若不能直连往外, 请关闭该选项
# 若环境可以直连外网, 以下选项设置为1, 便于自动设置 NGINX 的外网 IP 的监听地址
export AUTO_GET_WANIP=0
# 若无法自动获取外网 IP, 在需要跨云管理时, 在以下数组中填写 gse, nginx 的外网 ip 地址.
export GSE_WAN_IP=()
export NGINX_WAN_IP=()
# 安装部署 SaaS 应用需要使用到的 pip 源
export PYPI_SOURCE='pypi.douban.com'
export BK_TIMEZONE="Asia/Shanghai"
export BK_PROXY=
# 以下变量值不可以修改.每个企业统一
export IMAGE_NAME='bkbase/python:1.0'
export JAVA_IMAGE_NAME='bkbase/java:1.0'
# 设置app 部署时使用的脚本来源是已src 包下的为准还是以 install/appmgr目录下为准
# 若值为 src 则, 则app 安装的脚本从paas-agent目录下获取, 否则从agent_setup目录下获取
#export APPMGR_SOURCE=
EOF
for x in $(seq 1 $PRJ_SIZE); do
echo "set install globals in $(get_name $x)"
cat $file |\
$PRJ_EXEC exec -T $(get_name $x) sh -c "cat > /data/install/globals.env"
done
}
function init_haproxy_config {
file=vols/haproxy/etc/haproxy.cfg
cat > $file <<EOF
global
maxconn 4096
user nobody
group nobody
daemon
tune.maxrewrite 16384000
tune.bufsize 32768000
defaults
mode tcp
retries 3
timeout connect 3s
# http://stackoverflow.com/questions/32634980
timeout server 200s
timeout client 200s
frontend f-bkce-tcp-80
bind *:80 name clear
default_backend b-bkce-tcp-80
backend b-bkce-tcp-80
balance roundrobin
server $(get_name 1) $(get_addr 1):80 check inter 1s
frontend f-bkce-tcp-29122
bind *:29122 name clear
default_backend b-bkce-tcp-29122
backend b-bkce-tcp-29122
balance roundrobin
server $(get_name 1) $(get_addr 1):22 check inter 1s
frontend f-bkce-tcp-29222
bind *:29222 name clear
default_backend b-bkce-tcp-29222
backend b-bkce-tcp-29222
balance roundrobin
server $(get_name 2) $(get_addr 2):22 check inter 1s
frontend f-bkce-tcp-29322
bind *:29322 name clear
default_backend b-bkce-tcp-29322
backend b-bkce-tcp-29322
balance roundrobin
server $(get_name 3) $(get_addr 3):22 check inter 1s
# es
frontend f-bkce-tcp-10004
bind *:10004 name clear
default_backend b-bkce-tcp-10004
backend b-bkce-tcp-10004
balance roundrobin
server $(get_name 1) $(get_addr 1):10004 check inter 1s
server $(get_name 2) $(get_addr 2):10004 check inter 1s
server $(get_name 3) $(get_addr 3):10004 check inter 1s
EOF
}
function configure_ssh {
max=${1:-"$PRJ_SIZE"}
for x in $(seq 1 $max); do
docker exec -it --privileged $(get_name $x) sh -c 'cd /data/install; bash configure_ssh_without_pass;'
done
}
function configure_hosts {
max=${1:-"$PRJ_SIZE"}
for x in $(seq 1 $max); do
docker exec -it --privileged $(get_name $x) sh -c "
echo '
$(get_addr 1) paas.service.consul
$(get_addr 1) cmdb.service.consul
$(get_addr 1) job.service.consul
$(get_addr 3) gse.service.consul
$(get_addr 3) license.service.consul
$(get_addr 2) appo.service.consul
$(get_addr 3) paas-direct.service.consul
$(get_addr 3) cmdb-direct.service.consul
$(get_addr 3) job-direct.service.consul
$(get_addr 1) zk.service.consul
$(get_addr 2) mysql.service.consul
$(get_addr 3) redis.service.consul
$(get_addr 2) mongodb.service.consul
$(get_addr 1) rabbitmq.service.consul
$(get_addr 1) fta.service.consul
$(get_addr 1) bkdata.service.consul
$(get_addr 1) dataapi.service.consul
$(get_addr 1) databus.service.consul
$(get_addr 1) monitor.service.consul
$(get_addr 1) kafka.service.consul
$(get_addr 3) influxdb.service.consul
$(get_addr 1) es.service.consul
#$(get_addr 1) yarn-ha.service.consul
#$(get_addr 1) fabio.service.consul
#$(get_addr 1) rbtnode1
#$(get_addr 1) zk-1 zk1
#$(get_addr 2) zk-2 zk2
#$(get_addr 3) zk-3 zk3
#$(get_addr 1) paas.demo.com
#$(get_addr 1) cmdb.demo.com
#$(get_addr 1) job.demo.com
' | tee -a /etc/hosts
"
done
}
function configure_scripts {
max=${1:-"$PRJ_SIZE"}
for x in $(seq 1 $max); do
docker exec -it --privileged $(get_name $x) sh -c "
echo '#!/bin/sh
cd /data/install \
&& ./bk_install paas \
&& sleep 5 \
&& ./bk_install cmdb \
&& sleep 5 \
&& ./bk_install job \
&& sleep 5 \
&& ./bk_install app_mgr \
&& sleep 5 \
&& ./bk_install saas-o bk_nodeman \
' | tee -a /data/install/shjihai.setup.sh
"
done
}
set_install_config
set_install_globals
init_haproxy_config
echo "all done: "
configure_ssh 1
configure_hosts 3
#!/bin/sh
# ------------------------------------------------------------------
# [Script] bin/init_node.sh
# [Author] Hai Ji <shjihai@cn.ibm.com>
# prepare bkce nodes one by one
# ------------------------------------------------------------------
PRJ_EXEC=docker-compose
PRJ_NAME=bkce
PRJ_PATH=$(realpath "$(dirname $0)/..")
node_id=${1:-1}
node_name="${PRJ_NAME}0${node_id}"
# echo $node_name
root_password=passw0rd
# prepare yum config
function prepare_yum {
$PRJ_EXEC -p $PRJ_NAME exec -u root --privileged $node_name sh -c '
sed -i "s/keepcache=0/keepcache=1/" /etc/yum.conf;
cat /etc/yum.conf|grep keepcache;
cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.orig;
sed -i "s/mirrorlist=/\#mirrorlist=/g" /etc/yum.repos.d/CentOS-Base.repo;
sed -i "s/\#baseurl=/baseurl=/g" /etc/yum.repos.d/CentOS-Base.repo;
sed -i "s/mirror\.centos\.org/mirrors\.ustc\.edu\.cn/g" /etc/yum.repos.d/CentOS-Base.repo;
#cat /etc/yum.repos.d/CentOS-Base.repo;
'
}
# install dependencies
function install_deps {
$PRJ_EXEC -p $PRJ_NAME exec -u root --privileged $node_name sh -c '
yum install -y openssh-clients \
net-tools rsync ca-certificates which \
bash sudo wget curl screen unzip tar;
'
}
# install systemd
function install_systemd {
$PRJ_EXEC -p $PRJ_NAME exec -u root --privileged $node_name sh -c '
yum install -y epel-release initscripts \
&& (cd /lib/systemd/system/sysinit.target.wants/; for i in *; \
do [ $i == systemd-tmpfiles-setup.service ] || rm -f $i; done); \
rm -f /lib/systemd/system/multi-user.target.wants/*;\
rm -f /etc/systemd/system/*.wants/*;\
rm -f /lib/systemd/system/local-fs.target.wants/*; \
rm -f /lib/systemd/system/sockets.target.wants/*udev*; \
rm -f /lib/systemd/system/sockets.target.wants/*initctl*; \
rm -f /lib/systemd/system/basic.target.wants/*;\
rm -f /lib/systemd/system/anaconda.target.wants/*;
'
}
function install_openssh {
$PRJ_EXEC -p $PRJ_NAME exec -u root --privileged $node_name sh -c "
yum install -y openssh-server \
&& mkdir -p /var/run/sshd \
&& ssh-keygen -t rsa -N '' -f /etc/ssh/ssh_host_rsa_key \
&& ssh-keygen -t dsa -N '' -f /etc/ssh/ssh_host_dsa_key \
&& ssh-keygen -t ecdsa -N '' -f /etc/ssh/ssh_host_ecdsa_key \
&& ssh-keygen -A -N '' \
&& sed -ri 's/account required pam_nologin.so/#account required pam_nologin.so/' /etc/pam.d/login \
&& sed -ri 's/account required pam_nologin.so/#account required pam_nologin.so/' /etc/pam.d/sshd \
"
}
function passwd_root {
pass=${1:-"${root_password}"}
$PRJ_EXEC -p $PRJ_NAME exec -u root --privileged $node_name sh -c "
echo 'root:${pass}' |chpasswd
"
}
function start_svc_sshd {
$PRJ_EXEC -p $PRJ_NAME exec -u root --privileged $node_name sh -c '
systemctl start sshd
'
}
function prepare_bkce {
SRC_VERSION=4.1.13
IST_VERSION=1.3.4
$PRJ_EXEC -p $PRJ_NAME exec -u root --privileged $node_name sh -c "
yum -y groupinstall 'Development Tools';
yum install -y rsync unzip pidof pkill rsync gawk curl lsof tar sed \
iproute uuid psmisc wget bind-utils mysql-devel MySQL-python cronie e2fsprogs;
localedef -i en_US -f UTF-8 en_US.UTF-8;
mkdir -p /data;
[ -d '/data/install/.migrate' ] && chattr -i /data/install/.migrate/*;
rm -rf /data/*;
mkdir -p /data/src/cert;
tar xzf /files/bk4.1/bkce_src-${SRC_VERSION}.tgz -C /data;
tar xzf /files/bk4.1/install_ce-master-${IST_VERSION}.tgz -C /data;
tar xzf /files/certs/ssl_certificates.tar.gz -C /data/src/cert;
sed -i 's/Xms1g/Xms512m/' /data/src/service/es/config/jvm.options;
sed -i 's/Xmx1g/Xmx768m/' /data/src/service/es/config/jvm.options;
sed -i 's/deploy\.cluster\.memory\.max=2G/deploy\.cluster\.memory\.max=768M/' \
/data/src/bkdata/support-files/templates/databus#conf#es.cluster.properties;
sed -i 's/deploy\.cluster\.memory\.max=1G/deploy\.cluster\.memory\.max=512M/' \
/data/src/bkdata/support-files/templates/databus#conf#jdbc.cluster.properties;
sed -i 's/deploy\.cluster\.memory\.max=2G/deploy\.cluster\.memory\.max=768M/' \
/data/src/bkdata/support-files/templates/databus#conf#etl.cluster.properties;
sed -i '6iPATH=\/usr\/sbin\:\$PATH' /data/src/gse/agent_linux_x86_64/bin/gsectl;
sed -i '6iPATH=\/usr\/sbin\:\$PATH' /data/src/gse/agent_linux_x86/bin/gsectl;
sed -i '6iPATH=\/usr\/sbin\:\$PATH' /data/install/scripts/gse/agent/gsectl;
touch /var/log/lastlog;
chgrp utmp /var/log/lastlog;
chmod 664 /var/log/lastlog;
"
}
function main {
prepare_yum
## echo "$node_name: install_deps"
## install_deps
## echo "$node_name: install_systemd"
## install_systemd
## echo "$node_name: install_openssh"
## install_openssh
passwd_root
start_svc_sshd
prepare_bkce
}
main
#!/bin/sh
# ------------------------------------------------------------------
# [Script] bin/init_rhel.sh
# [Author] Hai Ji <shjihai@cn.ibm.com>
# startup rhel test nodes in bkce cluster
# ------------------------------------------------------------------
bin/service.sh up -d rhel01 rhel02
pass=passw0rd
docker exec -it rhel01 systemctl start sshd
docker exec -it rhel02 systemctl start sshd
docker exec -it rhel01 sh -c "echo 'root:${pass}' |chpasswd"
docker exec -it rhel02 sh -c "echo 'root:${pass}' |chpasswd"
#!/bin/sh
# ------------------------------------------------------------------
# [Script] bin/service.sh
# [Author] Hai Ji <shjihai@cn.ibm.com>
# docker-compose wrapper
# ------------------------------------------------------------------
PRJ_EXEC=docker-compose
PRJ_NAME=bkce
PRJ_PATH=$(realpath "$(dirname $0)/..")
CWD=$(pwd)
cd "$PRJ_PATH"
$PRJ_EXEC -f docker-compose.yaml -p $PRJ_NAME $*
cd "$CWD"
#!/bin/sh
# ------------------------------------------------------------------
# [Script] docker/build.sh
# [Author] Hai Ji <shjihai@cn.ibm.com>
# build tss/systemd image from centos7.2.1511
# ------------------------------------------------------------------
[ -f "$(dirname $0)/tss_systemd_centos7.2.1511.tgz" ] \
&& docker load -i "$(dirname $0)/tss_systemd_centos7.2.1511.tgz" \
&& exit 0;
docker build -t tss/systemd:centos7.2.1511 $(dirname $0)
FROM centos:centos7.2.1511
MAINTAINER shjihai@cn.ibm.com
ENV container=docker
RUN \
yum install -y openssh-server openssh-clients \
net-tools rsync ca-certificates which \
bash sudo wget curl screen \
&& yum clean all
RUN \
yum install -y epel-release initscripts \
&& yum clean all \
&& (cd /lib/systemd/system/sysinit.target.wants/; for i in *; \
do [ $i == systemd-tmpfiles-setup.service ] || rm -f $i; done); \
rm -f /lib/systemd/system/multi-user.target.wants/*;\
rm -f /etc/systemd/system/*.wants/*;\
rm -f /lib/systemd/system/local-fs.target.wants/*; \
rm -f /lib/systemd/system/sockets.target.wants/*udev*; \
rm -f /lib/systemd/system/sockets.target.wants/*initctl*; \
rm -f /lib/systemd/system/basic.target.wants/*;\
rm -f /lib/systemd/system/anaconda.target.wants/*;
RUN \
mkdir -p /var/run/sshd \
&& ssh-keygen -N '' -t rsa -f /etc/ssh/ssh_host_rsa_key \
&& ssh-keygen -N '' -t dsa -f /etc/ssh/ssh_host_dsa_key \
&& ssh-keygen -N '' -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key \
&& sed -ri 's/account required pam_nologin.so/#account required pam_nologin.so/' /etc/pam.d/login \
&& sed -ri 's/account required pam_nologin.so/#account required pam_nologin.so/' /etc/pam.d/sshd \
&& ssh-keygen -A
VOLUME /run /tmp
CMD ["/usr/sbin/init"]
#!/bin/sh
# ------------------------------------------------------------------
# [Script] docker/save.sh
# [Author] Hai Ji <shjihai@cn.ibm.com>
# build tss/systemd image from centos7.2.1511
# ------------------------------------------------------------------
docker save tss/systemd:centos7.2.1511 -o $(dirname $0)/tss_systemd_centos7.2.1511.tgz
#!/bin/sh
# ------------------------------------------------------------------
# [Script] vols/files/dl.sh
# [Author] Hai Ji <shjihai@cn.ibm.com>
# download bkce installation files
# ------------------------------------------------------------------
function get_src {
# wget http://bkopen-10032816.file.myqcloud.com/ce4.0/bkce_src-4.0.12.tgz
# wget http://bkopen-1252002024.file.myqcloud.com/ce4.1/bkce_src-4.1.13.tgz
site=http://bkopen-1252002024.file.myqcloud.com/
version=4.1.13
group=ce4.1
echo "${site}${group}/bkce_src-${version}.tgz"
}
function get_install {
# wget http://bkopen-10032816.file.myqcloud.com/ce4.0/install_ce-master-1.1.26.tgz
# wget http://bkopen-1252002024.file.myqcloud.com/ce4.1/install_ce-master-1.3.4.tgz
site=http://bkopen-1252002024.file.myqcloud.com/
version=1.3.4
group=ce4.1
echo "${site}${group}/install_ce-master-${version}.tgz"
}
MACS="
00:50:56:a1:3c:75
00:50:56:a1:7d:72
00:50:56:a1:56:7f
"
function get_ssl {
site="http://bk.tencent.com/generate_ssl/generate/"
macs=${@:-"$MACS"}
beta=false
params=""
mac_params=""
for mac in $macs; do
colon=%3A
semicolon=%3B
mac_param=$(echo $mac|sed 's/\:/'$colon'/g')
[ -z $mac_params ] && semicolon=""
mac_params="$mac_params$semicolon$mac_param"
done
echo "${site}?mac_list=${mac_params}&&is_beta=${beta}"|awk '{ print tolower($0) }'
}
#get_ssl "
#00:50:56:a1:3c:75
#00:50:56:a1:7d:72
#00:50:56:a1:56:73
#"
# http://bk.tencent.com/generate_ssl/generate/?mac_list=\
# 00%3A50%3A56%3Aa1%3A3c%3A75%3B00%3A50%3A56%3Aa1%3A7d%3A72%3B00%3A50%3A56%3Aa1%3A56%3A7f&&is_beta=false
function get_cookie {
# login qq in chrome, copy cookie text.
echo '';
}
function get_referer {
demo="-H 'Referer: https://bk.tencent.com/download/'"
echo 'https://bk.tencent.com/download/'
}
function dl {
dir=$1
url=$2
cwd=$(pwd)
mkdir -p "${dir}"
cd "${dir}"
# https://stackoverflow.com/questions/6881034/curl-to-grab-remote-filename-after-following-location
echo "$url"
curl -v -O -J -L -H "Referer: $(get_referer)" -H "Cookie: $(get_cookie)" "$url"
cd "${cwd}"
}
# curl -v -o ssl_certificates.tar.gz -H "Referer: $(get_referer)" \
# -H "Cookie: $(get_cookie)" "$(get_ssl)"
function main {
macs='
08:00:27:0A:28:58
08:00:27:79:3C:C6
08:00:27:6C:63:C0
'
#dl bk4.x "$(get_install)"
#dl bk4.x "$(get_src)"
dl bk4.x "$(get_ssl $macs)"
}
main
# ------------------------------------------------------------------
# [Script] docker-compose.yml
# [Author] Hai Ji <shjihai@cn.ibm.com>
# bkce cluster configuration
# ------------------------------------------------------------------
version: '2'
services:
bkce01:
container_name: bkce01
hostname: bkce01
# image: centos:centos7.2.1511
image: tss/systemd:centos7.2.1511
# tty: true
# command: sh
cap_add:
- SYS_ADMIN
security_opt:
- seccomp:unconfined
privileged: true
environment:
- container=docker
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup:ro
- ./vols/bkce01/var/cache:/var/cache:rw
- ./vols/bkce01/data:/data:rw
- ./vols/files:/files:ro
mac_address: 08:00:27:0A:28:58
bkce02:
container_name: bkce02
hostname: bkce02
# image: centos:centos7.2.1511
image: tss/systemd:centos7.2.1511
# tty: true
# command: sh
cap_add:
- SYS_ADMIN
security_opt:
- seccomp:unconfined
privileged: true
environment:
- container=docker
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup:ro
- ./vols/bkce02/var/cache:/var/cache:rw
- ./vols/bkce02/data:/data:rw
- ./vols/files:/files:ro
mac_address: 08:00:27:79:3C:C6
bkce03:
container_name: bkce03
hostname: bkce03
# image: centos:centos7.2.1511
image: tss/systemd:centos7.2.1511
# tty: true
# command: sh
cap_add:
- SYS_ADMIN
security_opt:
- seccomp:unconfined
privileged: true
environment:
- container=docker
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup:ro
- ./vols/bkce03/var/cache:/var/cache:rw
- ./vols/bkce03/data:/data:rw
- ./vols/files:/files:ro
mac_address: 08:00:27:6C:63:C0
rhel01:
container_name: rhel01
hostname: rhel01
image: tss/systemd:centos7.2.1511
cap_add:
- SYS_ADMIN
security_opt:
- seccomp:unconfined
environment:
- container=docker
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup:ro
rhel02:
container_name: rhel02
hostname: rhel02
image: tss/systemd:centos7.2.1511
cap_add:
- SYS_ADMIN
security_opt:
- seccomp:unconfined
environment:
- container=docker
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup:ro
ha01:
container_name: ha01
image: haproxy:alpine
volumes:
- ./vols/haproxy/etc/haproxy.cfg:/usr/local/etc/haproxy/haproxy.cfg:ro
network_mode: host
networks:
default:
external:
name: bkce
@jhsea3do

jhsea3do commented Aug 6, 2018

Copy link
Copy Markdown
Author

setup steps

# docker exec -it bkce01 bash
cd /data/install;
./bk_install xxxx; 

services start steps

# docker exec -it bkce01 bash
cd /data/install;
./bkcec start consul
./bkcec start mysql
./bkcec start redis
./bkcec start mongodb
./bkcec start zk
./bkcec start license
./bkcec start nginx
./bkcec start rabbitmq
./bkcec start paas
./bkcec start cmdb
./bkcec start gse
./bkcec start gse_agent
./bkcec start job
./bkcec start appo
./bkcec start appt
./bkcec start appo bk_nodeman


#./bkcec install es
./bkcec start es
./bkcec start kafka
./bkcec start beanstalk
./bkcec start influxdb
./bkcec start fta

./bkcec start bkdata databus
./bkcec start bkdata dataapi

./bkcec start appo bk_log_search
./bkcec start appo bk_fta_solutions

#./bkcec start bkdata monitor
./bkcec start appo bk_monitor

@jhsea3do

Copy link
Copy Markdown
Author
# rbt.sh
INSTALL_PATH=/data/bkce
export RABBITMQ_CONFIG_FILE=$INSTALL_PATH/etc/rabbitmq/rabbitmq.config
export CONF_ENV_FILE=$INSTALL_PATH/etc/rabbitmq/rabbitmq-env.conf
rabbitmq-server -detached start
sleep 3
rabbitmqctl start_app

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment