diff options
Diffstat (limited to 'mcp/reclass/scripts/infra.sh')
-rwxr-xr-x | mcp/reclass/scripts/infra.sh | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/mcp/reclass/scripts/infra.sh b/mcp/reclass/scripts/infra.sh index 7f5c210db..b83f21508 100755 --- a/mcp/reclass/scripts/infra.sh +++ b/mcp/reclass/scripts/infra.sh @@ -1,7 +1,5 @@ #!/bin/bash -SSH_KEY=mcp.rsa -SALT_MASTER=192.168.10.100 BASE_IMAGE=https://cloud-images.ubuntu.com/xenial/current/xenial-server-cloudimg-amd64-disk1.img declare -A NODES=( [cfg01]=4096 [ctl01]=6144 [ctl02]=6144 [ctl03]=6144 [gtw01]=2048 [cmp01]=2048 ) @@ -13,7 +11,7 @@ apt-get install -y mkisofs curl virtinst cpu-checker qemu-kvm # get base image mkdir -p images -wget -nc $BASE_IMAGE +wget -P /tmp -nc $BASE_IMAGE for node in "${!NODES[@]}"; do # clean up existing nodes @@ -24,7 +22,7 @@ for node in "${!NODES[@]}"; do # create/prepare images [ -f images/mcp_${node}.iso ] || ./create-config-drive.sh -k ${SSH_KEY}.pub -u user-data.sh -h ${node} images/mcp_${node}.iso - cp ${BASE_IMAGE/*\/} images/mcp_${node}.qcow2 + cp /tmp/${BASE_IMAGE/*\/} images/mcp_${node}.qcow2 qemu-img resize images/mcp_${node}.qcow2 100G done @@ -47,6 +45,7 @@ for node in "${!NODES[@]}"; do --network network:internal,model=virtio \ --network network:public,model=virtio \ --disk path=$(pwd)/images/mcp_${node}.qcow2,format=qcow2,bus=virtio,cache=none,io=native \ + --os-type linux --os-variant none \ --boot hd --vnc --console pty --autostart --noreboot \ --disk path=$(pwd)/images/mcp_${node}.iso,device=cdrom done @@ -64,20 +63,16 @@ done CONNECTION_ATTEMPTS=20 SLEEP=15 -# refresh salt master host key -ssh-keygen -R $SALT_MASTER - # wait until ssh on Salt master is available echo "Attempting to ssh to Salt master ..." ATTEMPT=1 while (($ATTEMPT <= $CONNECTION_ATTEMPTS)); do - ssh -i ${SSH_KEY} ubuntu@$SALT_MASTER uptime + ssh $SSH_OPTS ubuntu@$SALT_MASTER uptime case $? in (0) echo "${ATTEMPT}> Success"; break ;; (*) echo "${ATTEMPT}/${CONNECTION_ATTEMPTS}> ssh server ain't ready yet, waiting for ${SLEEP} seconds ..." ;; esac sleep $SLEEP - ssh-keyscan -t ecdsa $SALT_MASTER >> ~/.ssh/known_hosts ((ATTEMPT+=1)) done |