infrapuzzle/bootstrap/init.sh

45 lines
1.5 KiB
Bash
Executable File

#!/bin/sh
echo "######################################################################################"
echo "## Reinit repository"
rm -rf kubespray
git clone https://github.com/kubernetes-sigs/kubespray.git
echo "######################################################################################"
echo "## Activating python3 venv"
VENVDIR=venv
virtualenv --python=/usr/bin/python3.7 $VENVDIR
source $VENVDIR/bin/activate
pip install -r kubespray/requirements.txt
echo "######################################################################################"
echo "## Customizing vagrant dev env"
mkdir -p kubespray/vagrant
cat << EOF > kubespray/vagrant/config.rb
\$instance_name_prefix = "k8s"
\$vm_cpus = 4
\$num_instances = 1
\$os = "centos"
\$subnet = "10.0.20"
\$network_plugin = "calico"
\$shared_folders = { 'temp/docker_rpms' => "/var/cache/yum/x86_64/7/docker-ce/packages" }
\$kube_node_instances_with_disks_number = 0
EOF
# make the rpm cache
mkdir -p kubespray/temp/docker_rpms
echo "###############"
echo "Now cd to kubespray and 'vagrant up'"
echo ""
echo "export KUBECONFIG=\"$( pwd )/kubespray/inventory/sample/artifacts/admin.conf\""
echo "######################################################################################"
echo "## Preparing real prod environment"
cp -r kubespray/inventory/sample kubespray/inventory/prod
rm kubespray/inventory/prod/inventory.ini
cp ./prod.ini kubespray/inventory/prod/inventory.ini
echo "to deploy execute:"
echo "$ cd kubespray"
echo "$ ansible-playbook -i inventory/prod/inventory.ini cluster.yml"