=======Poznamky k KVM virtualizaci a zalohovani ======= seznam praktickych prikazu virsh list virsh edit testing // Escape character is ^] // Takhle se hledaji a instaluji baliky apt search agent | grep guest apt install qemu-guest-agent virsh snapshot-create-as --domain testing try1 --atomic ---flags disk-only a quiesce vyvolaju permission error virsh -c qemu:///system domblklist testing --- zoznam .qcow2 virsh -c qemu:///system dumpxml testing > /srv/storage/backup/testing_backup.xml jak pouzivat aplikace virtualenv - 24.10. 1)https://kashyapc.wordpress.com/2012/09/14/externaland-live-snapshots-with-libvirt/ toto je celkom useful link, ale ako navod to nefunguje kvoli permissions. Je tam aspon vysvetleny rozdiel medzi internal a external snapshot. Domnievam sa, ze nas zaujima external. Internal sa mi uz predtym vlastne podaril. o permissions pre qemu neexistuju ziadne zdroje, ani dokumentacia qemu sa o nicom takom poriadne nezmienuje. zapamataj si definice: qemu - emulator libvirt - API pre manazovanie roznych VM virsh - cmd interface zalozeny na libvirt // // 2) snazil som sa skumat moznost qemu-img. https://serverfault.com/questions/692435/qemu-img-snapshot-on-live-vm pomocou poslednej odpovede tu ide vytvorit kopiu qcow2 suboru. Podla tej odpovede toto + xml s config VM staci na back-up. \\ 25.10 \\ Pri blizsom pohlade sa to javi ako dost nezmysel. \\ dalsie useful linky: // \\ https://gist.github.com/ringe/334ee88ba5451c8f5732// \\ http://soliton74.blogspot.com/2013/08/about-kvm-qcow2-live-backup.html // \\ Stu tam cele scripty co robia ten back up . Problem je ten, ze pouziju tie iste prikazy co nam nejde spustit. // \\ chown -R libvirt-qemu:kvm "$BASEPATH" toto vyzera ako zaujimavy napad ale nejde to spustit // \\ // potencialne uzitocne: dpkg queries, installs, removes, and maintains Debian software packages and their dependencies // \\ // strace vyvola nejaky vypis volania do kernelu // \\ // // ====== Vim ======= :%s/search/replace/gc \\ // 26.10. // Stalo sa ze, storage odmietol reagovat- host is down. Staci umount storage, mount storage a hotovo \\ Heslo do virsh console testing: ahoj......, login root \\ Takze. Mal by som si do utorka zapamatat, co mam vlastne robit. Externe snapshoty su po vytvoreni inverzne. T.j. ten backup je povodny a zmeny sa ukladaju do toho snapu. Preto vytvorime kopiju toho povodneho .qcow2 niekam mimo a dalej bezi vm na tom snapshote--------------> https://wiki.libvirt.org/page/Live-disk-backup-with-active-blockcommit -------------------------- \\ 30.10. virsh blockcommit jakub-sevcik /vps/jakub-sevcik2018-10-30 --active --verbose --pivot ---fungovalo asi tak ako sme dufali. Takze proces je 1. dumpxml 2. create snapshot 3. okopirovat backup 4. blockcommit 5. odmazat snap 6. ??? 7. profit \\ 31.10. import: os, subprocess, stat na vytvorenie executable suboru \\ (import libvirt) \\ virsh list: \\ con = openReadOnly( adresa, k najdeniu v godsview models alebo views ) \\ list = con.ListAllDomains(0) \\ .name() ----------------> testing, jakub-sevcik atd. ======= New server ======= echo jmeno >/etc/hostname hostname jmeno echo domain starlab.cz >>/etc/resolv.conf bash echo frozen > /sys/block/md0/md/sync_action echo frozen > /sys/block/md1/md/sync_action echo frozen > /sys/block/md2/md/sync_action apt update apt install puppet puppet agent -t Add the server to "VHOST class at puppet.starlab.cz" and run the //puppet agent -t// again. Add the new server to vSwitch vlans (usualy vlan10, vlan11 and vlan40) ====6.11.==== Praca s databazou. Problemy: 1. Duplikatne mena vps cez VHost 2. Cele robit co najviac cez db. Pozmenit mozno nejak ten refresh nech mi fetchne tie potrebne data 3. === Fail2ban === fail2ban-client set sshd unbanip 88.198.64.144 . ====20.11. -- SSH v pythone==== from pexpect import pxssh s = pxssh.pxssh() s.login('h6', 'root') prikaz linux na vyzkouseni zda je gueatagent na virtual windows nainstalovan: virsh qemu-agent-command testing '{"execute":"guest-info"}' postup na vydanie do produkcie: ideal nebyt na django prihlaseny ako root, ale ako vps. Asi je ale problem s pravami na git bin/actiovate, git pull pripadne zmenit vlastnika suborom aby to bol vps makemigrations/ migrate ./manage.py createsuperuser to by malo byt technicky vsetko https://www.layoutit.com/ Storage sizes app - useful linky co sa asi zidu https://www.reddit.com/r/django/comments/319u80/how_do_you_setup_django_with_remote_database/ https://www.quora.com/How-does-python-Django-connect-to-a-remote-database https://stackoverflow.com/questions/6536783/django-getting-data-from-different-database https://docs.djangoproject.com/en/2.1/ref/contrib/contenttypes/ https://docs.djangoproject.com/en/2.1/topics/db/multi-db/ toto by malo byt riesenie mojho najvacsieho problemu projektu- ako sa dostat do databaz cudzich projektov. Snad pre vsetky vps for x in `virsh list | tr -s ' ' | cut -d' ' -f3`; do virsh domblklist $x; done WEBHOSTING PASSWD: Born2runIneptus Formatovanie JSON: json pretty print (google) ====== Fail2ban ====== fail2ban-client set sshd unbanip 88.198.64.144 supervisorctl restart ... virsh -c qemu:///system list =====Curl requests format===== curl --header "Content-Type: application/json" --request POST --data '{ "amount": "512", "ico": null,"dic": "","account_no": "666","bank_no": "4200", "invoice_items": []}' --user uziv:aho...... http://127.0.0.1:8000/api/out_invoice/ curl -X POST -F 'amount=1024' -F 'invoice_items=[]' -F 'note=Curl test-form' -F 'picture_pro_forma=@/srv/fakturace2/fakturace2/invoice_pictures/2019-61667812_5cO24If.pdf' --user uziv:aho...... http://127.0.0.1:8000/api/incoming_invoices/ GET /api/incoming_invoices/?company_id=4bd3f127-9700-46d4-868a-a467e2e34042