Kā instalēt VMware Tools uz CentOS 7
VMware Tools ir utilītu un draiveru komplekts, kas uzlabo virtuālās mašīnas integrāciju ar VMware hipervizoru: stabilāks tīkla/diska draiveru darbs, precīzāka laika sinhronizācija, pareiza “graceful shutdown/reboot” apstrāde, labāka veiktspēja un (dažos scenārijos) arī uzlabota grafika/konsoles pieredze. CentOS 7 vidē modernākais un rekomendētais ceļš parasti ir “open-vm-tools” pakotnes, jo tās ir uzturamas caur OS paketēm un drošības atjauninājumiem. Tomēr dažkārt joprojām izmanto klasisko VMware Tools instalāciju no ISO, īpaši vecākos vai specifiskos attēlos.
Šajā pamācībā parādīsim abus ceļus: (1) instalācija ar open-vm-tools (ieteicamais), (2) instalācija no VMware Tools ISO (ja nepieciešams), kā arī tipiskās kļūdas, ko redz CentOS 7 vidē (trūkst kernel headers, nekompilējas moduļi, nav atbilstošu rīku). Ja jums VMware vide tiek izmantota kā infrastruktūras bāze, to ērti būvēt uz uzticamiem resursiem: testiem un elastīgai mērogošanai labi der VPS, ilgtermiņa slodzēm vai īpašiem resursiem — serveru īre, bet vienkāršiem projektiem bez pašas OS pārvaldības — hostings.
Pirms sākat, pārliecinieties par 3 lietām: (1) kāds ir jūsu VMware produkts (ESXi, vSphere, Workstation), (2) kāds ir CentOS 7 kernel un vai sistēma ir atjaunināta, (3) vai jums ir piekļuve VM konsoles ekrānam (ja kaut kas noiet greizi, lai nezaudētu piekļuvi). Lielākajā daļā gadījumu open-vm-tools būs ātrākais, drošākais un stabilākais risinājums.
1) Ieteicamais variants: open-vm-tools instalācija (yum)
CentOS 7 repozitorijos open-vm-tools parasti ir pieejams un tas strādā ar lielāko daļu VMware funkciju. Instalācija ir vienkārša: atjauniniet pakotņu sarakstus un uzinstalējiet open-vm-tools. Ja jums vajag uzlabotu konsoles/GUI integrāciju (piem., grafiskā vide), var būt nepieciešams arī open-vm-tools-desktop, bet serveriem (bez GUI) parasti pietiek ar bāzes pakotni.
sudo yum clean all sudo yum makecache sudo yum install -y open-vm-tools sudo systemctl enable --now vmtoolsd
Pēc instalācijas pārbaudiet servisu: “systemctl status vmtoolsd”. Ja VM rīki strādā, VMware pusē parasti redzēsiet “Tools: Running” un varēsiet veikt tīru shutdown/reboot no hipervizora. Tāpat uzlabosies laika sinhronizācija un dažas integrācijas funkcijas (atkarībā no VMware versijas un konfigurācijas).
Ja jūs izmantojat minimālu CentOS 7 attēlu, dažreiz nav uzinstalēts “perl” vai citas bāzes komponentes, bet open-vm-tools parasti neprasa kompilāciju. Tas ir viens no iemesliem, kāpēc to rekomendē: mazāk vietas, mazāk risku un labāka atjauninājumu pārvaldība.
2) Kad vajag “klasisko” VMware Tools no ISO
Dažos gadījumos jūs varat saskarties ar situāciju, kur open-vm-tools nav pieejams (slēgti repo, specifiska uzņēmuma politika) vai arī vajadzīga funkcija, kas konkrētā laikā labāk strādā ar vendor Tools pakotni. Tad izmanto VMware Tools ISO: VMware interfeisā izvēlas “Install/Upgrade VMware Tools”, VM tiek piemontēts ISO, un jūs instalējat Tools no tar.gz arhīva.
Šis variants biežāk prasa kompilāciju pret jūsu kernel, tāpēc jums būs jāuzinstalē “gcc”, “make”, “kernel-devel” un “kernel-headers”. Precīzi: kernel-devel un kernel-headers jāatbilst tieši tam kernel, ar kuru jūs esat iebūtojies (uname -r). Ja versijas nesakrīt, instalācija bieži krīt ar kļūdām.
# sagatavošana (ISO instalācijas ceļam) sudo yum install -y gcc make perl sudo yum install -y kernel-devel kernel-headers uname -r rpm -q kernel-devel kernel-headers
Tālāk piemontējiet CD-ROM (ISO) un izpakojiet instaleri. Ceļi var atšķirties, bet parasti ISO ir /dev/cdrom un mount punkts /mnt/cdrom vai /media.
sudo mkdir -p /mnt/cdrom sudo mount /dev/cdrom /mnt/cdrom ls -la /mnt/cdrom tar -zxvf /mnt/cdrom/VMwareTools-*.tar.gz -C /tmp cd /tmp/vmware-tools-distrib sudo ./vmware-install.pl
Instalācijas laikā parasti varat pieņemt noklusējumus, ja vien jums nav specifisku ceļu. Pēc instalācijas pārstartējiet VM vai vmtools servisu un pārliecinieties, ka VMware pusē rādās “Running”. Ja redzat moduļu kompilācijas kļūdas, atgriezieties pie kernel-devel atbilstības un pārbaudiet, vai ir uzinstalēti vajadzīgie build rīki.
3) Tipiskās kļūdas un to novēršana
Visbiežākā kļūda ISO ceļā: kernel-devel neatbilst pašreizējam kernel. Risinājums: atjauniniet kernel, pārstartējiet un uzinstalējiet atbilstošo kernel-devel, vai arī instalējiet tieši atbilstošo pakotni, kas sakrīt ar uname -r. Otrs klasisks klupšanas akmens: nav “perl” vai nav “gcc/make”, tāpēc instalācijas skripts nespēj pabeigt procesu.
Ja pēc instalācijas “Tools not running”, pārbaudiet servisu statusu (vmtoolsd open-vm-tools gadījumā) vai VMware Tools servisu vendor instalācijā. Pārbaudiet arī žurnālus /var/log/vmware-vmsvc.log un /var/log/messages, jo tur bieži ir īsa, skaidra norāde uz problēmu.
Vēl viena nianse: CentOS 7 var izmantot NetworkManager vai klasisko network servisu; VMware Tools tieši tīklu nekonfigurē, bet dažās situācijās pēc driver izmaiņām var mainīties interfeisu nosaukumi. Tas ir rets, bet ja pēc Tools instalācijas pēkšņi redzat tīkla dīvainības, pārbaudiet “ip a” un savu ifcfg konfigurāciju.
4) Pārbaude pēc instalācijas
Pēc instalācijas pārbaudiet: (1) “systemctl status vmtoolsd” (open-vm-tools) vai VMware Tools servisu, (2) vai VMware konsolē rādās “Running”, (3) vai laiks VM iekšā ir sinhronizēts, (4) vai “Shutdown Guest” no hipervizora darbojas korekti. Ja izmantojat snapshot un backup sistēmas, pārliecinieties, ka tās redz VM korekti un neziņo par “Tools not installed”.
Ieteikumi ražošanas videi un drošības prakse
Ražošanas vidē ieteikums ir vienkāršs: ja vien nav konkrēta iemesla citādi, izmantojiet open-vm-tools un uzturiet CentOS 7 atjauninātu. Tā jūs samazināt risku, ka pēc kernel update VMware Tools vairs nekompilējas. Ja jums obligāti vajag ISO metodi, plānojiet kernel atjauninājumus kopā ar Tools atjauninājumiem un vienmēr uzturiet build rīkus un kernel-devel saskaņā ar aktīvo kernel.
Ja VM tiek izmantots kā kritisks serviss, vienmēr turiet konsoles piekļuvi pieejamu un veiciet izmaiņas uzturēšanas logā. Izmaiņas, kas skar kernel un draiverus, var ietekmēt tīklu vai disku piekļuvi, un “remote only” pieeja ir riskanta. Drošības ziņā: instalējiet tikai nepieciešamos komponentus (serveriem parasti nav vajadzīgs “desktop” komponents) un sekojiet līdzi atjauninājumiem, jo Tools arī ir programmatūra, kurai mēdz būt ievainojamības.