Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ##############################################################################################
- #Uruchamiam Cepha na 3 maszynach vagrant Proxmox
- #TUTAJ JEST GŁÓWNY SKRYPT
- #GŁÓWNY SKRYPT
- #curl https://pastebin.com/raw/Ey6qHu37 | sed 's/\r//g' > VAskryptglownyProxmox.txt
- #DALEJ PASTUJ LINIE z PLIKU GŁÓWNEGO skryptglowny.txt
- #lub z podanego powyżej adresu pastebin oraz uruchamiaj FUNKCJE
- #vim VAskryptglownyUbuntu.txt #paste sth
- ##############################################################################################
- #FUNKCJE DO TEGO SKRYPTU W OSOBNYM SKRYPCIE
- curl https://pastebin.com/raw/anHdueta | sed 's/\r//g' > VAskryptfunkcje.sh
- sh VAskryptfunkcje.sh
- ##############################################################################################
- #TWORZENIE MASZYNY VM Z LINII KOMENDY
- export VM="Proxmox"
- export VBOS="Debian_64"
- export VBFOLDER="/mnt/dc/VBox/"
- export ISO4VM="/mnt/dc/IMAGES/proxmoxve5.iso"
- #export ISO4VM="/mnt/dc/IMAGES/proxmox-ve_4.4-eb2d6f1e-2.iso"
- VACreateVM $VM $VBOS $VBFOLDER $ISO4VM 32768
- ##############################################################################################
- #INSTALACJA SYSTEMU Z ISO NA VM z openssh-server zaznaczonym
- VBoxManage startvm $VM # --type headless
- ##############################################################################################
- #WYŁĄCZENIE MASZYNY
- #VBoxManage controlvm $VM acpipowerbutton #nie działa
- VBoxManage controlvm $VM poweroff
- sleep 20
- VAChangeVMStorage $VM
- VBoxManage startvm $VM --type headless
- #ssh -p 2222 root@127.0.0.1
- sleep 30
- curl https://pastebin.com/raw/anHdueta | sed 's/\r//g' > VAskryptfunkcje.sh
- sh VAskryptfunkcje.sh
- sed -i '/:2222/d' ~/.ssh/known_hosts
- scp -rp -P 2222 /usr/local/bin/va_* root@127.0.0.1:/usr/local/bin && \
- #ssh -p 2222 root@127.0.0.1 "/usr/local/bin/va_update_proxmox jessie jewel"
- ssh -p 2222 root@127.0.0.1 "/usr/local/bin/va_update_proxmox"
- #DODAWANIE I USUWANIE dzielonych katalogów (vagrant ma swoje własne katalogi):
- #VBoxManage sharedfolder add $VM --name SHARED --hostpath /mnt/dc/SHARED --automount
- #VBoxManage sharedfolder remove $VM --name SHARED
- #To mount it on the guest:
- #sudo mount -t vboxsf -o uid=$UID SHARED /mnt/dc/SHARED
- #SNAPSHOTY BACKUPY
- #VBoxManage snapshot $VM take shot`date +%y%m%d`
- #VBoxManage snapshot $VM restore shot`date +%y%m%d`
- #KLONOWANIE MASZYNY
- #VBoxManage export $VM --output vmClone`date +%y%m%d`.ovf --options manifest,nomacs
- #macaddr=$(echo `uname -a`|md5sum|sed 's/^\(..\)\(..\)\(..\)\(..\)\(..\).*$/08:00:27:\3:\4:\5/')
- #VBoxManage modifyvm $VM --macaddressX $macaddr
- #domyślnie zmienia mac i nazwy
- #VBoxManage import vmClone`date +%y%m%d`.ovf
- ##############################################################################################
- #TWORZYMY VAGRANT MASZYNĘ Z VIRTUALBOX MASZYNY
- #VBoxManage controlvm $VM acpipowerbutton #nie działa
- VBoxManage controlvm $VM poweroff
- sleep 20
- VBoxManage storageattach $VM --storagectl IDE --port 0 --device 0 --type dvddrive --medium none
- [ -e ${VBFOLDER}/v${VM}.box ] && rm ${VBFOLDER}/v${VM}.box
- vagrant box remove v${VM} --force
- vagrant package --output ${VBFOLDER}/v${VM}.box --base $VM
- vagrant box add v${VM} ${VBFOLDER}/v${VM}.box --force
- #DODAJ ${VBFOLDER}/v${VM}.box do zbioru obrazów atlas
- #https://atlas.hashicorp.com/vagrant
- #https://atlas.hashicorp.com/settings/tokens
- #to samo można zrobić packerem
- #https://github.com/uchida/packer-proxmoxbeta
- ##############################################################################################
- cd
- vagrant box list
- rm -rf v${VM}
- [ ! -d v${VM} ] && mkdir v${VM}
- cd v${VM}
- #vagrant init v${VM}
- #dla trzech maszyn, a nie dla jednej
- #https://www.vagrantup.com/docs/provisioning/shell.html
- #sed -i 's/^end/\ \ config.vm.provision "shell", inline: "echo server1 > \/etc\/hostname"\n end/g' Vagrantfile
- cp /usr/local/bin/Vagrantfile.3Ubuntu Vagrantfile
- sed -i 's/vUbuntu1610/'v${VM}'/g' Vagrantfile
- vagrant up --provision
- vagrant ssh server1
- #w przypadku gdy na koncie vagrant zmienił się publiczny klucz vagranta w .ssh/authorized_keys
- #należy logować się po haśle, zmienić Vagrantfile od razu po vagrant init nazwa_boxa
- #https://www.vagrantup.com/docs/vagrantfile/ssh_settings.html
- #sed -i 's/^end/\ \ config.ssh.password="vagrant"\n end/g' Vagrantfile
- #jeśli nie wstawimy config.ssh.password jak wyżej, to pastujemy klucz insecure vagranta do maszyny na konto vagrant:
- #wget https://raw.githubusercontent.com/mitchellh/vagrant/master/keys/vagrant.pub -O ~/.ssh/authorized_keys
- #chmod 700 ~/.ssh
- #chmod 600 ~/.ssh/authorized_keys
- #chown -R vagrant:vagrant ~/.ssh
- #po tym: vagrant halt && vagrant up && vagrant ssh
- #http://www.thisprogrammingthing.com/2016/fixing-vagrant-connection-error/
- #usuwanie maszyn vagranta z nazwami na v* z VirtualBoxa
- cd $VBFOLDER && for i in v${VM}*; do VBoxManage controlvm $i poweroff; VBoxManage unregistervm --delete $i; done && cd
- #https://atlas.hashicorp.com/boxes/search
- #https://github.com/Zuehlke/linux-developer-vm
- #arp-scan 192.168.2.0/24 --interface=enp0s31f6
- #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
- #https://groups.google.com/forum/#!topic/vagrant-up/thrR2PRodQE
- #https://programmaticponderings.com/2014/12/14/installing-puppet-master-and-agents-on-multiple-vm-using-vagrant-and-virtualbox/
- #https://blog.kloudless.com/2013/07/01/automating-development-environments-with-vagrant-and-puppet/
- #http://kappataumu.com/articles/creating-an-Ubuntu-VM-with-packer.html
- #https://marcofranssen.nl/packer-io-machine-building-and-provisioning-part-1/
- #https://github.com/pwasiewi/packer-ubuntu
- #https://www.sitepoint.com/getting-started-vagrant-windows/
- #https://ttmm.io/tech/vagrant-windows/
- #https://www.digitalocean.com/community/tutorials/how-to-create-ansible-playbooks-to-automate-system-configuration-on-ubuntu
- #https://github.com/jimradford/superputty/releases/tag/1.4.0.8
- #https://github.com/mintty/wsltty/releases
- #https://github.com/freeciv/freeciv-web #Vagrantfile
- #https://wiki.christophchamp.com/index.php?title=Kubernetes
- #NA JEDNYM SERWERZE np. server1
- pvecm create kluster
- pvecm help
- pvecm status
- pvecm nodes
- ##########################################################################################
- #NA POZOSTAŁYCH SERWERACH
- #po zalogowaniu ssh na innych od server1 serwerach dołącz je do klustera
- ssh server2 "pvecm add server1" && ssh server3 "pvecm add server1"
- #poczekaj aż każdy się skończy, potem poczekaj z 5min, aby kluster się ustabilizował
- #i zrebootuj
- ##########################################################################################
- #NA WSZYSTKICH SERWERACH
- #loguj się przez ssh do server2-3 i wykonuj reboot
- #od teraz bez hasła logowanie ssh server?
- ssh server2 "reboot" && ssh server3 "reboot"
- reboot
- ##########################################################################################
- #NA JEDNYM SERWERZE np. server1
- #wykonaj dla sieci cluster network
- pveceph init --network 192.168.2.0/24
- ##########################################################################################
- #NA WSZYSTKICH SERWERACH można przez ssh server?
- ssh server2 "pveceph createmon" && ssh server3 "pveceph createmon" && ssh server1 "pveceph createmon"
- ssh server1 "ceph-disk zap /dev/sdb" && ssh server1 "pveceph createosd /dev/sdb" && ssh server1 "partprobe /dev/sdb1"
- ssh server2 "ceph-disk zap /dev/sdb" && ssh server2 "pveceph createosd /dev/sdb" && ssh server2 "partprobe /dev/sdb1"
- ssh server3 "ceph-disk zap /dev/sdb" && ssh server3 "pveceph createosd /dev/sdb" && ssh server3 "partprobe /dev/sdb1"
- ##########################################################################################
- #NA JEDNYM SERWERZE
- #w GUI utwórz pool z osds ceph4you i
- #następnie na nim lub na domyślnie utworzonym rbd storage ceph4vm typu RDB
- # from /etc/pve/storage.cfg
- #rbd: ceph4vm
- # monhost 192.168.2.71 192.168.2.72 192.168.2.73
- # pool ceph4you (zamiast rdb)
- cd /etc/pve/priv/
- mkdir ceph
- cp /etc/ceph/ceph.client.admin.keyring ceph/rbd.keyring
- cp /etc/ceph/ceph.client.admin.keyring ceph/ceph4vm.keyring
- cp /etc/ceph/ceph.client.admin.keyring ceph/ceph4you.keyring
- #w gui tylko do 3 replik, ale w ten sposób moze być ich więcej aż do 10 według domyslnego crush ruleset
- ceph osd pool set rbd size 2
- ceph osd pool set rbd min_size 2
- ##################################################################################
- ##################################################################################
- ### CEPH #########################################################################
- ##################################################################################
- ##################################################################################
- #http://www.virtualtothecore.com/en/adventures-ceph-storage-part-1-introduction/
- #https://blog.zhaw.ch/icclab/tag/ceph/
- #https://wiki.centos.org/SpecialInterestGroup/Storage/ceph-Quickstart
- #http://linoxide.com/storage/setup-red-hat-ceph-storage-centos-7-0/
- #http://karan-mj.blogspot.com/2013/12/what-is-ceph-ceph-is-open-source.html
- #https://www.reddit.com/r/DataHoarder/comments/4gzpxi/why_is_ceph_so_rare_for_home_use_even_among
- #http://palmerville.github.io/2016/04/30/single-node-ceph-install.html
- [ ! -d ceph-deploy ] && mkdir ceph-deploy
- cd ceph-deploy/
- #INICJALIZACJA CEPHA
- va_ceph_init
- #TESTOWANIE CEPHA
- va_ceph_create
- ceph -s #ceph status
- ceph osd tree
- ceph mon_status
- ceph osd lspools
- ceph df
- rados -p mypool ls
- [ ! -d /mnt/mycephfs ] && mkdir /mnt/mycephfs
- #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'`
- 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'`
- #test wydajności dysku ceph, gdzie -s rozmiar pliku MB, -r ilość ram MB (domyślne wartości: 8192 i dostępna pamięć)
- free && sync && echo 3 > /proc/sys/vm/drop_caches && free
- bonnie++ -s 2048 -r 1024 -u root -d /mnt/mycephfs -m BenchClient
- #https://wiki.mikejung.biz/Sysbench#Install_Sysbench_on_CentOS_7
- #http://www.servernoobs.com/avoiding-cpu-speed-scaling-in-modern-linux-distributions-running-cpu-at-full-speed-tips/
- #for CPUFREQ in /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor;
- #do [ -f $CPUFREQ ] || continue;
- # echo -n performance > $CPUFREQ;
- #done
- grep -E '^model name|^cpu MHz' /proc/cpuinfo
- sysbench --test=cpu --cpu-max-prime=10000 --num-threads=4 run
- #sysbench --test=fileio --file-test-mode=rndwr run
- #sysbench --test=fileio help
- #sysbench --test=fileio --file-test-mode=seqwr --num-threads=1 --file-block-size=4096 run
- #sysbench --test=fileio --file-test-mode=rndwr --num-threads=1 --file-block-size=4096 run
- #http://cromwell-intl.com/linux/performance-tuning/disks.html
- echo 3 | sudo tee /proc/sys/vm/drop_caches && sudo sync
- iperf -s #pomiar przepustowości sieci, uruchamiamy na jednym serwerze np. server1
- iperf -c server1 -i1 -t 10 #na drugim serwerze mierzymy
Add Comment
Please, Sign In to add comment