Advertisement
Guest User

gnew.sh

a guest
Apr 23rd, 2019
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 1.65 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. memory=2048
  4. vcpus=1
  5. disksize=40
  6. instancename=""
  7. submit=""
  8. nodes=""
  9.  
  10. function usage {
  11.     echo 'usage: gnew.sh [-m <memory>] [-c <cpus>] [-d <disk_size>] -i <instance_name>
  12.    -m <memory>         memory in MB to allocate (default 2048)
  13.    -c <cpus>           number of cpus to allocate (default 1)
  14.    -d <disk_size>      size of disk in GB to be created (default 40)
  15.    -n <pri>:<sec>      specify primary and secondary nodes to use
  16.    -s                  submit as a background job (default disabled)
  17.    -i <instance_name>  name of new instance (required)
  18. '
  19.     return 0;
  20. }
  21.  
  22. while [ "$1" ]; do
  23.     case $1 in
  24.         -m)
  25.             shift
  26.             memory=$1
  27.             ;;    
  28.         -c)
  29.             shift
  30.             vcpus=$1
  31.             ;;
  32.         -d)
  33.             shift
  34.             disksize=$1
  35.             ;;
  36.         -s)
  37.             submit="--submit"
  38.             ;;
  39.         -i)
  40.             shift
  41.             instancename=$1
  42.             ;;
  43.         -n)
  44.             shift
  45.             nodes=$1
  46.             ;;
  47.         *)
  48.             usage
  49.             exit 0
  50.             ;;
  51.     esac
  52.     shift
  53. done
  54.  
  55. if [ "$instancename" == "" ]; then
  56.     echo "New instance name is required"
  57.     usage
  58.     exit 1
  59. fi
  60.  
  61. if [ "$nodes" == "" ]; then
  62.     allocator="-I hail"
  63. else
  64.     allocator="-n $nodes"
  65. fi
  66.  
  67. /usr/sbin/gnt-instance add $allocator -o debootstrap+default  -t drbd -s ${disksize}G \
  68.     -B maxmem=${memory}MB,minmem=${memory}MB,vcpus=$vcpus \
  69.     -H kvm:kernel_path="",initrd_path="",kernel_args="",boot_order=network \
  70.     --no-name-check --no-ip-check --no-install --no-start --no-wait-for-sync $submit $instancename
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement