KVM లేకుండా సర్వర్లలో ఆపరేటింగ్ సిస్టమ్ బూట్ సమస్యలను పరిష్కరించడం అంత తేలికైన పని కాదు. మేము రికవరీ ఇమేజ్ మరియు వర్చువల్ మెషీన్ ద్వారా మన కోసం KVM-over-IPని సృష్టించుకుంటాము.
ఆపరేటింగ్ సిస్టమ్తో సమస్యల విషయంలో
రిమోట్ KVM
మీరు IPMI లేదా Intel® vPro™ వంటి అంతర్నిర్మిత సాధనాలను ఉపయోగించి లేదా IP-KVM అని పిలువబడే బాహ్య పరికరాల ద్వారా సర్వర్ కన్సోల్ను యాక్సెస్ చేయవచ్చు. జాబితా చేయబడిన అన్ని సాంకేతికతలు అందుబాటులో లేని పరిస్థితులు ఉన్నాయి. అయితే, ఇది అంతం కాదు. Linux ఆపరేటింగ్ సిస్టమ్ ఆధారంగా రికవరీ ఇమేజ్కి సర్వర్ను రిమోట్గా రీబూట్ చేయగలిగితే, KVM-over-IP త్వరగా నిర్వహించబడుతుంది.
రికవరీ ఇమేజ్ అనేది RAMలో ఉన్న పూర్తి స్థాయి ఆపరేటింగ్ సిస్టమ్. అందువలన, మేము వర్చువల్ మిషన్లు (VMలు) సహా ఏదైనా సాఫ్ట్వేర్ను అమలు చేయవచ్చు. అంటే, మీరు సర్వర్ ఆపరేటింగ్ సిస్టమ్ రన్ అయ్యే VMని ప్రారంభించవచ్చు. VM కన్సోల్కు యాక్సెస్ని నిర్వహించవచ్చు, ఉదాహరణకు, VNC ద్వారా.
VM లోపల సర్వర్ ఆపరేటింగ్ సిస్టమ్ను అమలు చేయడానికి, మీరు తప్పనిసరిగా సర్వర్ డిస్క్లను VM డిస్క్లుగా పేర్కొనాలి. Linux కుటుంబం యొక్క ఆపరేటింగ్ సిస్టమ్లలో, భౌతిక డిస్క్లు ఫారమ్ యొక్క బ్లాక్ పరికరాల ద్వారా సూచించబడతాయి / Dev / sdX, ఇది సాధారణ ఫైల్లతో పని చేయవచ్చు.
QEMU మరియు VirtualBox వంటి కొన్ని హైపర్వైజర్లు VM డేటాను “రా” రూపంలో నిల్వ చేయడానికి మిమ్మల్ని అనుమతిస్తాయి, అంటే హైపర్వైజర్ మెటాడేటా లేకుండా నిల్వ డేటా మాత్రమే. అందువలన, సర్వర్ యొక్క భౌతిక డిస్క్లను ఉపయోగించి VMని ప్రారంభించవచ్చు.
ఈ పద్ధతికి రికవరీ ఇమేజ్ మరియు దానిలోని VMని లాంచ్ చేయడానికి వనరులు అవసరం. అయితే, మీకు నాలుగు లేదా అంతకంటే ఎక్కువ గిగాబైట్ల ర్యామ్ ఉంటే, ఇది సమస్య కాదు.
పర్యావరణాన్ని సిద్ధం చేస్తోంది
మీరు తేలికైన మరియు సరళమైన ప్రోగ్రామ్ను వర్చువల్ మెషీన్గా ఉపయోగించవచ్చు
మీరు చేయవలసిన మొదటి విషయం ఏమిటంటే, రికవరీ ఇమేజ్ తాజా సాఫ్ట్వేర్ని ఉపయోగిస్తోందని నిర్ధారించుకోవడం. మీరు కింది ఆదేశంతో అన్ని OS భాగాలను తనిఖీ చేయవచ్చు మరియు నవీకరించవచ్చు:
pacman -Suy
నవీకరణ తర్వాత, మీరు QEMUని ఇన్స్టాల్ చేయాలి. ప్యాక్మ్యాన్ ద్వారా ఇన్స్టాలేషన్ కమాండ్ ఇలా కనిపిస్తుంది:
pacman -S qemu
qemu సరిగ్గా ఇన్స్టాల్ చేయబడిందో లేదో తనిఖీ చేద్దాం:
root@sel-rescue ~ # qemu-system-x86_64 --version
QEMU emulator version 4.0.0
Copyright (c) 2003-2019 Fabrice Bellard and the QEMU Project developers
ప్రతిదీ అలా అయితే, రికవరీ చిత్రం సిద్ధంగా ఉంది.
వర్చువల్ మిషన్ను ప్రారంభిస్తోంది
ముందుగా, మీరు VMకి కేటాయించిన వనరుల మొత్తాన్ని నిర్ణయించుకోవాలి మరియు భౌతిక డిస్క్లకు మార్గాలను కనుగొనాలి. మా విషయంలో, మేము వర్చువల్ మెషీన్కు రెండు కోర్లు మరియు రెండు గిగాబైట్ల RAMని కేటాయిస్తాము మరియు డిస్క్లు మార్గం వెంట ఉన్నాయి. / Dev / sda и / Dev / sdb. VMని ప్రారంభిద్దాం:
qemu-system-x86_64
-m 2048M
-net nic -net user
-enable-kvm
-cpu host,nx
-M pc
-smp 2
-vga std
-drive file=/dev/sda,format=raw,index=0,media=disk
-drive file=/dev/sdb,format=raw,index=1,media=disk
-vnc :0,password
-monitor stdio
ప్రతి పారామితుల అర్థం గురించి కొంచెం వివరంగా:
- -మీ 2048M - VMకి 2 GB RAMను కేటాయించండి;
- -నెట్ నిక్ -నెట్ యూజర్ — NAT (నెట్వర్క్ అడ్రస్ ట్రాన్స్లేషన్) ఉపయోగించి హైపర్వైజర్ ద్వారా నెట్వర్క్కి సాధారణ కనెక్షన్ని జోడించడం;
- -enable-kvm — పూర్తి KVM (కెర్నల్ వర్చువల్ మెషిన్) వర్చువలైజేషన్ ప్రారంభించండి;
- -cpu హోస్ట్ — సర్వర్ ప్రాసెసర్ యొక్క అన్ని కార్యాచరణలను పొందడానికి మేము వర్చువల్ ప్రాసెసర్కు చెబుతాము;
- -ఎం పిసి - PC పరికరాలు రకం;
- -smp 2 — వర్చువల్ ప్రాసెసర్ తప్పనిసరిగా డ్యూయల్ కోర్ అయి ఉండాలి;
- -vga std — పెద్ద స్క్రీన్ రిజల్యూషన్లకు మద్దతు ఇవ్వని ప్రామాణిక వీడియో కార్డ్ని ఎంచుకోండి;
- -డ్రైవ్ ఫైల్=/dev/sda,format=raw,index=0,media=disk
- ఫైల్=/dev/sdX — సర్వర్ డిస్క్ను సూచించే బ్లాక్ పరికరానికి మార్గం;
- ఆకృతి = ముడి - పేర్కొన్న ఫైల్లో మొత్తం డేటా “రా” రూపంలో ఉందని, అంటే డిస్క్లో ఉన్నట్లు మేము గమనించాము;
- ఇండెక్స్ = 0 - డిస్క్ సంఖ్య, ప్రతి తదుపరి డిస్క్కు తప్పనిసరిగా ఒకటి పెరగాలి;
- మీడియా = డిస్క్ — వర్చువల్ మెషీన్ తప్పనిసరిగా ఈ నిల్వను డిస్క్గా గుర్తించాలి;
- -vnc :0, పాస్వర్డ్ — VNC సర్వర్ను డిఫాల్ట్గా 0.0.0.0:5900 వద్ద ప్రారంభించండి, పాస్వర్డ్ను అధికారంగా ఉపయోగించండి;
- - మానిటర్ stdio — అడ్మినిస్ట్రేటర్ మరియు qemu మధ్య కమ్యూనికేషన్ ప్రామాణిక ఇన్పుట్/అవుట్పుట్ స్ట్రీమ్ల ద్వారా జరుగుతుంది.
ప్రతిదీ క్రమంలో ఉంటే, QEMU మానిటర్ ప్రారంభమవుతుంది:
QEMU 4.0.0 monitor - type 'help' for more information
(qemu)
పాస్వర్డ్ని ఉపయోగించి అధికారీకరణ జరుగుతుందని మేము సూచించాము, కానీ పాస్వర్డ్ను సూచించలేదు. QEMU మానిటర్కు మార్పు vnc పాస్వర్డ్ ఆదేశాన్ని పంపడం ద్వారా ఇది చేయవచ్చు. ముఖ్యమైన గమనిక: పాస్వర్డ్ ఎనిమిది అక్షరాల కంటే ఎక్కువ ఉండకూడదు.
(qemu) change vnc password
Password: ******
దీని తర్వాత, మేము పేర్కొన్న పాస్వర్డ్తో మా సర్వర్ యొక్క IP చిరునామాను ఉపయోగించి ఏదైనా VNC క్లయింట్తో కనెక్ట్ చేయవచ్చు, ఉదాహరణకు, Remmina.
ఇప్పుడు మేము లోడింగ్ దశలో సాధ్యమయ్యే లోపాలను మాత్రమే చూడలేము, కానీ మేము వాటిని కూడా ఎదుర్కోవచ్చు.
మీరు పూర్తి చేసిన తర్వాత, మీరు తప్పనిసరిగా వర్చువల్ మెషీన్ను షట్ డౌన్ చేయాలి. షట్డౌన్కు సిగ్నల్ పంపడం ద్వారా లేదా కమాండ్ ఇవ్వడం ద్వారా ఇది OS లోపల చేయవచ్చు system_powerdown QEMU మానిటర్లో. ఇది షట్డౌన్ బటన్ను ఒకసారి నొక్కడానికి సమానం అవుతుంది: వర్చువల్ మెషీన్లోని ఆపరేటింగ్ సిస్టమ్ సజావుగా షట్ డౌన్ అవుతుంది.
ఆపరేటింగ్ సిస్టమ్ సంస్థాపన
వర్చువల్ మెషీన్ సర్వర్ డిస్క్లకు పూర్తి ప్రాప్తిని కలిగి ఉంది మరియు అందువల్ల ఆపరేటింగ్ సిస్టమ్ను మాన్యువల్గా ఇన్స్టాల్ చేయడానికి ఉపయోగించవచ్చు. RAM మొత్తం మాత్రమే పరిమితి: ISO ఇమేజ్ ఎల్లప్పుడూ RAMలో ఉంచబడదు. చిత్రాన్ని నిల్వ చేయడానికి నాలుగు గిగాబైట్ల ర్యామ్ను కేటాయిద్దాం / mnt:
mount -t tmpfs -o size=4G tmpfs /mnt
మేము FreeBSD 12.0 ఆపరేటింగ్ సిస్టమ్ యొక్క ఇన్స్టాలేషన్ చిత్రాన్ని కూడా డౌన్లోడ్ చేస్తాము:
wget -P /mnt ftp://ftp.freebsd.org/pub/FreeBSD/releases/amd64/amd64/ISO-IMAGES/12.0/FreeBSD-12.0-RELEASE-amd64-bootonly.iso
ఇప్పుడు మీరు VMని ప్రారంభించవచ్చు:
qemu-system-x86_64
-m 2048M
-net nic -net user
-enable-kvm
-cpu host,nx
-M pc
-smp 2
-vga std
-drive file=/dev/sda,format=raw,index=0,media=disk
-drive file=/dev/sdb,format=raw,index=1,media=disk
-vnc :0,password
-monitor stdio
-cdrom /mnt/FreeBSD-12.0-RELEASE-amd64-bootonly.iso
-boot d
జెండా -బూట్ డి CD డ్రైవ్ నుండి బూటింగ్ని ఇన్స్టాల్ చేస్తుంది. మేము VNC క్లయింట్తో కనెక్ట్ అయ్యాము మరియు FreeBSD బూట్లోడర్ని చూస్తాము.
DHCP ద్వారా చిరునామాను పొందడం ఇంటర్నెట్ను యాక్సెస్ చేయడానికి ఉపయోగించబడింది కాబట్టి, కాన్ఫిగరేషన్ తర్వాత కొత్తగా ఇన్స్టాల్ చేయబడిన సిస్టమ్లోకి బూట్ చేయడం మరియు నెట్వర్క్ సెట్టింగ్లను సరిదిద్దడం అవసరం కావచ్చు. కొన్ని సందర్భాల్లో, నెట్వర్క్ అడాప్టర్ డ్రైవర్లను ఇన్స్టాల్ చేయడం అవసరం కావచ్చు, ఎందుకంటే సర్వర్లో ఇన్స్టాల్ చేయబడిన నెట్వర్క్ కార్డ్ మరియు VMలో ఎమ్యులేట్ చేయబడినది వేర్వేరుగా ఉంటాయి.
తీర్మానం
సర్వర్ కన్సోల్కు రిమోట్ యాక్సెస్ను నిర్వహించే ఈ పద్ధతి కొన్ని సర్వర్ వనరులను వినియోగిస్తుంది, అయినప్పటికీ, ఇది సర్వర్ హార్డ్వేర్పై ఎటువంటి ప్రత్యేక అవసరాలు విధించదు మరియు అందువల్ల దాదాపు ఏ పరిస్థితుల్లోనైనా అమలు చేయవచ్చు. ఈ పరిష్కారాన్ని ఉపయోగించడం వలన సాఫ్ట్వేర్ లోపాలను నిర్ధారించడం మరియు రిమోట్ సర్వర్ యొక్క కార్యాచరణను పునరుద్ధరించడం చాలా సులభం అవుతుంది.
మూలం: www.habr.com