Advertisement
42n4

MINIUBU4VARGRANT

Apr 11th, 2017
372
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 9.28 KB | None | 0 0
  1. ##############################################################################################
  2. #Uruchamiam Cepha na 3 maszynach vagrant Mini Ubuntu
  3. #TUTAJ JEST GŁÓWNY SKRYPT
  4. #GŁÓWNY SKRYPT
  5. #curl https://pastebin.com/raw/GQF1MwtB | sed 's/\r//g' > VAskryptglownyMiniUbuntu.txt
  6. #DALEJ PASTUJ LINIE z PLIKU GŁÓWNEGO skryptglowny.txt
  7. #lub z podanego powyżej adresu pastebin oraz uruchamiaj FUNKCJE
  8. #vim VAskryptglownyUbuntu.txt #paste sth
  9.  
  10. ##############################################################################################
  11. #FUNKCJE DO TEGO SKRYPTU W OSOBNYM SKRYPCIE
  12. curl https://pastebin.com/raw/anHdueta | sed 's/\r//g' > VAskryptfunkcje.sh
  13. sh VAskryptfunkcje.sh
  14.  
  15. ##############################################################################################
  16. #TWORZENIE MASZYNY VM Z LINII KOMENDY
  17. export VM="MiniUbuntu"
  18. export VBOS="Ubuntu_64"
  19. export VBFOLDER="/mnt/dc/VBox/"
  20. export ISO4VM="/mnt/dc/IMAGES/miniubuntu1610.iso"
  21. VACreateVM $VM $VBOS $VBFOLDER $ISO4VM
  22.  
  23. ##############################################################################################
  24. #INSTALACJA SYSTEMU Z ISO NA VM z openssh-server zaznaczonym
  25. VBoxManage startvm $VM # --type headless
  26. #VBoxHeadless --startvm $VM &
  27. #WPISAĆ DO MASZYNY VM
  28. #zaloguj się na vagrant konto, jakie załozyłeś podczas instalacji, zmień hasło roota
  29. #passwd
  30. #sed -i 's/prohibit-password/yes/g' /etc/ssh/sshd_config
  31. #systemctl restart sshd
  32.  
  33. ##############################################################################################
  34. #BEZPIECZNE WYŁĄCZENIE MASZYNY
  35. VBoxManage controlvm $VM acpipowerbutton
  36. sleep 20
  37. VAChangeVMStorage $VM
  38. VBoxManage startvm $VM --type headless
  39. #ssh -p 2222 root@127.0.0.1
  40. sleep 30
  41. curl https://pastebin.com/raw/anHdueta | sed 's/\r//g' > VAskryptfunkcje.sh
  42. sh VAskryptfunkcje.sh
  43. sed -i '/:2222/d'  ~/.ssh/known_hosts
  44. scp -rp -P 2222 /usr/local/bin/va_* root@127.0.0.1:/usr/local/bin &&\
  45. ssh -p 2222 root@127.0.0.1 /usr/local/bin/va_update_vmubuntu
  46.  
  47. #DODAWANIE I USUWANIE dzielonych katalogów (vagrant ma swoje własne katalogi):
  48. #VBoxManage sharedfolder add $VM --name SHARED --hostpath /mnt/dc/SHARED --automount
  49. #VBoxManage sharedfolder remove $VM --name SHARED
  50. #To mount it on the guest:
  51. #sudo mount -t vboxsf -o uid=$UID SHARED /mnt/dc/SHARED
  52. #SNAPSHOTY BACKUPY
  53. #VBoxManage snapshot $VM take shot`date +%y%m%d`
  54. #VBoxManage snapshot $VM restore shot`date +%y%m%d`
  55. #KLONOWANIE MASZYNY
  56. #VBoxManage export $VM --output vmClone`date +%y%m%d`.ovf --options manifest,nomacs
  57. #macaddr=$(echo `uname -a`|md5sum|sed 's/^\(..\)\(..\)\(..\)\(..\)\(..\).*$/08:00:27:\3:\4:\5/')
  58. #VBoxManage modifyvm $VM --macaddressX $macaddr
  59. #domyślnie zmienia mac i nazwy
  60. #VBoxManage import vmClone`date +%y%m%d`.ovf
  61.  
  62. ##############################################################################################
  63. #TWORZYMY VAGRANT MASZYNĘ Z VIRTUALBOX MASZYNY
  64. VBoxManage controlvm $VM  acpipowerbutton
  65. sleep 20
  66. VBoxManage storageattach $VM --storagectl IDE --port 0 --device 0 --type dvddrive --medium none
  67. [ -e ${VBFOLDER}/v${VM}.box ] && rm ${VBFOLDER}/v${VM}.box
  68. vagrant box remove v${VM} --force
  69. vagrant package --output ${VBFOLDER}/v${VM}.box --base $VM
  70. vagrant box add v${VM} ${VBFOLDER}/v${VM}.box --force
  71. #DODAJ ${VBFOLDER}/v${VM}.box do zbioru obrazów atlas
  72. #https://atlas.hashicorp.com/vagrant
  73. #https://atlas.hashicorp.com/settings/tokens
  74. #to samo można zrobić packerem
  75. #https://github.com/uchida/packer-ubuntu
  76.  
  77. ##############################################################################################
  78. cd
  79. vagrant box list
  80. rm -rf v${VM}
  81. [ ! -d v${VM} ] && mkdir v${VM}
  82. cd v${VM}
  83. #vagrant init v${VM}
  84. #dla trzech maszyn, a nie dla jednej
  85. #https://www.vagrantup.com/docs/provisioning/shell.html
  86. #sed -i 's/^end/\ \ config.vm.provision "shell", inline: "echo server1 > \/etc\/hostname"\n end/g' Vagrantfile
  87. cp /usr/local/bin/Vagrantfile.3Ubuntu Vagrantfile
  88. sed -i 's/vUbuntu1610/'v${VM}'/g' Vagrantfile
  89. vagrant up --provision
  90. vagrant ssh server1
  91.  
  92. #w przypadku gdy na koncie vagrant zmienił się publiczny klucz vagranta w .ssh/authorized_keys
  93. #należy logować się po haśle, zmienić Vagrantfile od razu po vagrant init nazwa_boxa
  94. #https://www.vagrantup.com/docs/vagrantfile/ssh_settings.html
  95. #sed -i 's/^end/\ \ config.ssh.password="vagrant"\n end/g' Vagrantfile
  96. #jeśli nie wstawimy config.ssh.password jak wyżej, to pastujemy klucz insecure vagranta do maszyny na konto vagrant:
  97. #wget https://raw.githubusercontent.com/mitchellh/vagrant/master/keys/vagrant.pub -O ~/.ssh/authorized_keys
  98. #chmod 700 ~/.ssh
  99. #chmod 600 ~/.ssh/authorized_keys
  100. #chown -R vagrant:vagrant ~/.ssh
  101. #po tym: vagrant halt && vagrant up && vagrant ssh
  102. #http://www.thisprogrammingthing.com/2016/fixing-vagrant-connection-error/
  103.  
  104. #usuwanie maszyn vagranta z nazwami na v* z VirtualBoxa
  105. cd $VBFOLDER && for i in v${VM}*; do VBoxManage controlvm $i poweroff; VBoxManage unregistervm --delete $i; done && cd
  106.  
  107. #https://atlas.hashicorp.com/boxes/search
  108. #https://github.com/Zuehlke/linux-developer-vm
  109.  
  110.  
  111. #arp-scan 192.168.2.0/24 --interface=enp0s31f6
  112. #vagrantfile for public ip http://ix.io/q2t, dla dwóch serwerów http://ix.io/q2y, dla trzech serwerów http://ix.io/qdE
  113.  
  114. #https://groups.google.com/forum/#!topic/vagrant-up/thrR2PRodQE
  115. #https://programmaticponderings.com/2014/12/14/installing-puppet-master-and-agents-on-multiple-vm-using-vagrant-and-virtualbox/
  116. #https://blog.kloudless.com/2013/07/01/automating-development-environments-with-vagrant-and-puppet/
  117. #http://kappataumu.com/articles/creating-an-Ubuntu-VM-with-packer.html
  118. #https://marcofranssen.nl/packer-io-machine-building-and-provisioning-part-1/
  119. #https://github.com/pwasiewi/packer-ubuntu
  120. #https://www.sitepoint.com/getting-started-vagrant-windows/
  121. #https://ttmm.io/tech/vagrant-windows/
  122. #https://www.digitalocean.com/community/tutorials/how-to-create-ansible-playbooks-to-automate-system-configuration-on-ubuntu
  123. #https://github.com/jimradford/superputty/releases/tag/1.4.0.8
  124. #https://github.com/mintty/wsltty/releases
  125. #https://github.com/freeciv/freeciv-web #Vagrantfile
  126. #http://packetpushers.net/ansible-development-vagrant/
  127.  
  128. ##################################################################################
  129. ##################################################################################
  130. ### CEPH #########################################################################
  131. ##################################################################################
  132. ##################################################################################
  133.  
  134. #http://www.virtualtothecore.com/en/adventures-ceph-storage-part-1-introduction/
  135. #https://blog.zhaw.ch/icclab/tag/ceph/
  136. #https://wiki.centos.org/SpecialInterestGroup/Storage/ceph-Quickstart
  137. #http://linoxide.com/storage/setup-red-hat-ceph-storage-centos-7-0/
  138. #http://karan-mj.blogspot.com/2013/12/what-is-ceph-ceph-is-open-source.html
  139. #https://www.reddit.com/r/DataHoarder/comments/4gzpxi/why_is_ceph_so_rare_for_home_use_even_among
  140. #http://palmerville.github.io/2016/04/30/single-node-ceph-install.html
  141. [ ! -d ceph-deploy ] && mkdir ceph-deploy
  142. cd ceph-deploy/
  143. #INICJALIZACJA CEPHA
  144. va_ceph_init
  145. #TESTOWANIE CEPHA
  146. #va_ceph_create
  147. #object storage gateway
  148. ceph-deploy rgw create server1 server2 server3
  149. #cephfs
  150. ceph-deploy mds create server1 server2 server3
  151. ceph -s #ceph status
  152. ceph osd tree
  153. ceph mon_status
  154. ceph osd pool create mypool 1
  155. ceph osd lspools
  156. ceph df
  157. echo "test data" > testfile
  158. rados put -p mypool testfile testfile
  159. rados -p mypool ls
  160. rados -p mypool setomapval testfile mykey myvalue
  161. rados -p mypool getomapval testfile mykey
  162. rados get -p mypool testfile testfile2
  163. md5sum testfile testfile2
  164. ceph osd pool create cephfs_data 128
  165. ceph osd pool create cephfs_metadata 128
  166. ceph fs new cephfs cephfs_metadata cephfs_data
  167. [ ! -d /mnt/mycephfs ] && mkdir /mnt/mycephfs
  168. #mount -t ceph server1:6789:/ /mnt/mycephfs -o name=admin,secret=`cat /etc/ceph/ceph.client.admin.keyring | grep key | cut -f 2 | sed 's/key = //g'`
  169. mount -t ceph `ifconfig enp0s8 | grep inet\ | awk '{print $2}'`:6789:/ /mnt/mycephfs -o name=admin,secret=`cat /etc/ceph/ceph.client.admin.keyring | grep key | cut -f 2 | sed 's/key = //g'`
  170.  
  171. #test wydajności dysku ceph, gdzie -s rozmiar pliku MB, -r ilość ram MB (domyślne wartości: 8192 i dostępna pamięć)
  172. free && sync && echo 3 > /proc/sys/vm/drop_caches && free
  173. bonnie++ -s 2048 -r 1024 -u root -d /mnt/mycephfs -m BenchClient
  174.  
  175. #https://wiki.mikejung.biz/Sysbench#Install_Sysbench_on_CentOS_7
  176. #http://www.servernoobs.com/avoiding-cpu-speed-scaling-in-modern-linux-distributions-running-cpu-at-full-speed-tips/
  177. #for CPUFREQ in /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor;
  178. #do [ -f $CPUFREQ ] || continue;
  179. #  echo -n performance > $CPUFREQ;
  180. #done          
  181. grep -E '^model name|^cpu MHz' /proc/cpuinfo  
  182. sysbench --test=cpu --cpu-max-prime=10000 --num-threads=4 run
  183. #sysbench --test=fileio --file-test-mode=rndwr run
  184. #sysbench --test=fileio help
  185. #sysbench --test=fileio --file-test-mode=seqwr --num-threads=1 --file-block-size=4096 run
  186. #sysbench --test=fileio --file-test-mode=rndwr --num-threads=1 --file-block-size=4096 run  
  187. #http://cromwell-intl.com/linux/performance-tuning/disks.html
  188. echo 3 | sudo tee /proc/sys/vm/drop_caches && sudo sync
  189. iperf -s #pomiar przepustowości sieci, uruchamiamy na jednym serwerze np. server1
  190. iperf -c server1 -i1 -t 10  #na drugim serwerze mierzymy
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement