49 lines
1.6 KiB
Bash
Executable file
49 lines
1.6 KiB
Bash
Executable file
#!/bin/bash
|
|
|
|
# k8x v2
|
|
|
|
KUBESPRAY_TAG="release-2.16"
|
|
|
|
if [ -f config ]; then
|
|
echo "config file FOUND :)"
|
|
source config
|
|
else
|
|
echo "config file is missing."
|
|
exit 1
|
|
fi
|
|
|
|
echo "] Install packages to cluster admin node ..."
|
|
apt update
|
|
apt install git rsync python3-pip -y
|
|
|
|
echo "] Clone Kubespray ..."
|
|
git clone https://github.com/kubernetes-sigs/kubespray.git
|
|
|
|
echo "] Sync our recipies ..."
|
|
rsync -av inventory/ kubespray/inventory/kube/
|
|
|
|
echo "- setup external load balancer variable from config..."
|
|
sed -i "s#var_lb_domain#${EXT_LB_DOMAIN}#g" "kubespray/inventory/kube/group_vars/all/all.yml"
|
|
sed -i "s#var_lb_address#${EXT_LB_ADDRESS}#g" "kubespray/inventory/kube/group_vars/all/all.yml"
|
|
sed -i "s#var_lb_port#${EXT_LB_PORT}#g" "kubespray/inventory/kube/group_vars/all/all.yml"
|
|
|
|
echo "- setup additional addresses to kube ssl cert"
|
|
sed -i "s#var_cluster_supp_addr#${CLUSTER_SUPP_ADDR}#g" "kubespray/inventory/kube/group_vars/k8s_cluster/k8s-cluster.yml"
|
|
|
|
echo "- setup ceph variables from config ..."
|
|
sed -i "s#var_ceph_monitors#${CEPH_MONITOR_1}:6789,${CEPH_MONITOR_2}:6789,${CEPH_MONITOR_3}:6789#g" "kubespray/inventory/kube/group_vars/k8s_cluster/addons.yml"
|
|
sed -i "s#var_ceph_admin_key#${CEPH_ADMIN_KEY}#g" "kubespray/inventory/kube/group_vars/k8s_cluster/addons.yml"
|
|
sed -i "s#var_ceph_user_key#${CEPH_USER_KEY}#g" "kubespray/inventory/kube/group_vars/k8s_cluster/addons.yml"
|
|
|
|
echo "] Switch to $KUBESPRAY_TAG branch ..."
|
|
cd kubespray/
|
|
git checkout $KUBESPRAY_TAG
|
|
cd ..
|
|
|
|
echo "] Patch $KUBESPRAY_TAG ..."
|
|
rsync -av patches/${KUBESPRAY_TAG}/ kubespray/
|
|
|
|
echo "] Execute python requierments.txt ..."
|
|
cd kubespray/
|
|
pip3 install -r requirements.txt
|