Guest User

Untitled

a guest
May 21st, 2018
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 6.02 KB | None | 0 0
  1.  Set up the host                                                                                                                                                                                                                
  2. ssh root@$HOST "/etc/init.d/libvirt-bin restart; modprobe nbd max_part=4;"
  3. # mydisk = useless                                                                                                                                                                                                                
  4. scp my_create_tap root@$HOST:/usr/local/bin/.
  5. ssh root@$HOST "chmod +x /usr/local/bin/my_create_tap"
  6. index=1
  7. for myvm in $VMS; do
  8.     TAP=$(ssh root@$HOST "/usr/local/bin/my_create_tap $myvm")
  9.     MACADDR=$(ssh root@$HOST "random_mac")
  10.     mymem=$(echo $MEMS | cut -d ' ' -f $index)
  11.         myip=$(echo $IPS | cut -d ' ' -f $index)
  12.         index=$(( $index + 1 ))
  13.         if [ -z "$myip" ];then
  14.                 echo "Missing parameter for the VM '$myvm' - ip: $myip ; mem: $mymem"
  15.         else
  16.             # tets + Kvm-img qcow2(dans /var/lib/libvirt)                                                                                                                                                                        
  17.                 ssh root@$HOST "kvm-img create -f qcow2 -o backing_file=/tmp/debian.img,backing_fmt=raw /tmp/$myvm.qcow2 1G; kvm-nbd --connect=/dev/nbd0 /tmp/$myvm.qcow2 ; sleep 5 ; mount /dev/nbd0p1 /mnt"
  18.                 #nfsdisk => /var/lib/libvirt                                                                                                                                                                                      
  19.                 #mount => /mnt/                                                                                                                                                                                                  
  20.  
  21.                 sed "s/<<ip>>/$myip/" $TMP_DIR/$SITE.interfaces > $TMP_DIR/$myvm.network
  22.                 # Modification de mydisk/ vers /mnt/                                                                                                                                                                              
  23.                 scp $TMP_DIR/$myvm.network root@$HOST:/mnt/etc/network/interfaces
  24.                 #scp $TMP_DIR/interfaces root@$HOST:/etc/network/interfaces                                                                                                                                                      
  25.                 scp $TMP_DIR/authorized_keys root@$HOST:/mnt/root/.ssh/
  26.                 if [ -z "$hard_virt" ];then
  27.                         echo "[site: $SITE] Create the VM '$myvm' (ip: $myip) on the host '$HOST' (paravirtualization)"
  28. #MYDISK => /MNT                                                                                                                                                                                                                  
  29. #no virt-install / => kvm                                                                                                                                                                                                        
  30. #--disk /var/lib/                                                                                                                                                                                                                
  31. ssh root@$HOST "umount /mnt ; kvm-nbd -d /dev/nbd0 ; kvm -m 512 -hda /tmp/$myvm.qcow2 -net nic,macaddr=$MACADDR -net tap,ifname=$TAP,script=no -nographic -redir tcp:2222::22 -vnc none -daemonize"
  32.                 else
  33.                         echo "[site: $SITE] Create the VM '$myvm' (ip: $myip) on the host '$HOST' (full virtualization)"
  34.                         ssh root@$HOST "umount /mnt ; kvm-nbd -d /dev/nbd0 ; kvm -m 512 -hda /tmp/$myvm.qcow2 -net nic,macaddr=$MACADDR -net tap,ifname=$TAP,script=no -nographic -redir tcp:2222::22 -vnc none -daemonize"
  35.                 fi
  36.         fi
  37. done
  38. echo "VM creation complete"
  39.  
  40. ============================================
  41. =============================================
  42.  
  43.  
  44. scp ~/images/debian.img root@$HOST:/tmp/
  45.  
  46. #Création du template du fichier network pour les VMS                                                                                                                                                                            
  47. cp interfaces.template $TMP_DIR/$SITE.interfaces
  48. sed -i "s/<<broadcast>>/$($SCRIPTS_FOLDER/extract_subnet_broadcast)/" $TMP_DIR/$SITE.interfaces
  49. sed -i "s/<<mask>>/$($SCRIPTS_FOLDER/extract_subnet_netmask)/" $TMP_DIR/$SITE.interfaces
  50. sed -i "s/<<gateway>>/$($SCRIPTS_FOLDER/extract_subnet_gateway)/" $TMP_DIR/$SITE.interfaces
  51.  
  52. #Création de la liste des IP                                                                                                                                                                                                      
  53. g5k-subnets -i >> $TMP_DIR/ip-list.txt
  54.    for ((i = 1; i <= VMPPM; i += 1))
  55.    do
  56.        echo $i
  57.        ip=$(sed -n $i'p' $TMP_DIR/ip-list.txt)
  58.        #for ip in $(cat $TMP_DIR/ip-list.txt)                                                                                                                                                                                    
  59.        # Création d'une seule VM                                                                                                                                                                                                  
  60.        $SCRIPTS_FOLDER/createvm.sh -i $ip -m $MEM -n $SITE -s $HOST -v $i >> $TMP_DIR/$i.log
  61.        echo $ip >> $TMP_DIR/active-ip.txt
  62.        #done                                                                                                                                                                                                                      
  63.    done
  64.  
  65.    for ip in $(cat $TMP_DIR/active-ip.txt)
  66.    do
  67.        echo "SSH root@$ip date"
  68.        ssh root@$ip date
  69.        stress -c 10
  70.    done
Add Comment
Please, Sign In to add comment