Momentan sunteți offline, așteptați să vă reconectați la internet

Nu se poate utiliza kdump sau kexec Linux mașinilor virtuale Hyper-v

IMPORTANT: Acest articol este tradus cu ajutorul software-ului Microsoft de traducere automată și poate fi corectat prin intermediul tehnologiei Community Translation Framework (CTF). Microsoft oferă articole traduse automat, post-editate de comunitate și articole traduse de oameni, pentru a permite accesul la toate articolele din Baza noastră de cunoștințe în mai multe limbi. Articolele traduse automat și post-editate pot conține greșeli de vocabular, sintaxă și/sau gramatică. Microsoft nu este responsabil de inexactitățile, erorile sau daunele cauzate de traducerea greșită a conținutului sau de utilizarea acestuia de către clienți. Găsiți mai multe informații despre traducerea în colaborare la http://support.microsoft.com/gp/machine-translation-corrections/ro.

Faceți clic aici pentru a vizualiza versiunea în limba engleză a acestui articol: 2858695
Simptome
Pre-Windows Server 2012 R2
Să luăm în considerare următorul scenariu:
  • Aveți un pre-Windows Server 2012 R2 computer care are instalat rolul Hyper-V.
  • Instalarea Linux pe o mașină virtuală Hyper-V pe computer.
  • Configurați kdump pe Linux VM.

    Notă Linux VM are deja driverele serviciile de integrare Linux. Driverele poate fi precompilate sau manual instalat.
În acest scenariu, dacă se blochează mașinii virtuale Linux, fișierul de imagine de bază din nucleul Linux nu este generat așa cum vă așteptați.
Windows Server 2012 R2
Să luăm în considerare următorul scenariu:
  • Aveți Linux VM pe Windows Server 2012 R2 Hyper-V gazdă.
  • 15 sau mai multe vCPUs sunt atașate Linux VM.
  • Configurați kdump în Linux VM.
În acest scenariu, kdump nu funcționează și crash dump nu este creat deoarece procesul nu mai răspunde (se blochează).
Cauză
Această problemă apare deoarece Hyper-V nu poate găzdui două conexiuni simultane la același sintetic driverul care se execută în interiorul o mașină virtuală.

Când kdump este configurat pe o mașină virtuală de Linux care utilizează driverul de stocare sintetic serviciile de integrare Linux (cunoscut și ca storvsc), nucleul kexec este configurat să utilizeze același driverul. Dacă mașina virtuală Linux se blochează, driverul de stocare sintetic care este găzduită în nucleul kexec încearcă să deschidă o conexiune la furnizorul de stocare Hyper-V. Cu toate acestea, Hyper-V nu reușește să stabilească legătura din cauza pre-existente conexiunea la driverul de stocare aceeași mașina virtuală de Linux crashed. De aceea, nucleul kexec nu dump central pentru crashed Linux maşină virtuală.
Rezoluţie
Pentru a rezolva această problemă, configurați nucleul kexec utilizând driverul de stocare Linux standard. Această configurație trebuie efectuată după funcționalitatea kdump este activată pe o mașină virtuală de Linux. Ideea de bază este de a dezactiva serviciile de integrare Linux driverul de stocare și apoi activați driverul de stocare Linux standard în interiorul nucleul kexec utilizând parametrul prefer_ms_hyper_v în fișierul de configurare corespunzător.

Parametrul prefer_ms_hyper_v poate fi utilizat pentru a controla comportamentul de driverul de stocare Linux standard. Când acest parametru este setat la 1 și mașinii virtuale Linux se execută pe Hyper-V, driverul de stocare Linux standard se dezactivează și vă permite driverul de stocare pentru serviciile de integrare Linux dispozitivele de stocare de control. Setând parametrul prefer_ms_hyper_v la 0, driverul de stocare Linux standard este permis să funcționeze. Deoarece driverul de stocare Linux standard nu necesită o conexiune la Hyper-V, nucleul kexec poate dump core.

Diferite distribuţii Linux au diferite mecanisme să specificați valoarea prefer_ms_hyper_v. Următoarea secțiune descrie cum parametrul poate fi setată pentru mai multe populare distribuţii Linux.

Red Hat Enterprise Linux (RHEL) 5.9

În RHEL 5.9, trebuie să treacă parametrul prefer_ms_hyper_v printr-un nucleu argument linia Către de comandă în modulul ide_core , care este încorporată în nucleul RHEL 5.9. implicit, acest parametru este iniţializat la 1, și acest lucru provoacă maşini virtuale Linux să evitați utilizarea modulul ide_core dacă se execută într-un mediu de Hyper-V. Administratorii au pentru a seta valoarea parametrului prefer_ms_hyper_v la 0 , astfel încât driverul ide_core devine operațional în timpul procesului de încărcare kexec kernel. Puteți face acest lucru prin modificarea conținutul /etc/kdump.conf.

Pentru a modifica conținutul /etc/kdump.conf, urmați acești pași:
  1. Executaţi următoarea comandă pentru a configura kdump pentru a scrie într-un director local:

    cale/var/crash
  2. Driverele de serviciile de integrare Linux din /etc/kdump.conf pe Listă tabel neagră. Acest lucru împiedică driverele de încărcare în la nucleul kexec. Pentru aceasta, executaţi următoarea comandă:

    Listă tabel neagră hv_vmbus hv_storvsc hv_utils hv_netvsc hid-hyperv
  3. Configurați valoarea de expirare de disc executând următoarea comandă:

    disk_timeout 100
  4. După modificările necesare, fișierul /etc/kdump.conf Arată astfel:
    cale/var/crash
    nivel de mesaj core_collector makedumpfile - c - 1 - d 31
    Listă tabel neagră hv_vmbus hv_storvsc hv_utils hv_netvsc hid-hyperv
    disk_timeout 100
  5. Modificați conținutul fișierului /etc/sysconfig/kdump după cum urmează:
    • Adăugați sau modificați linia următoare pentru a include prefer_ms_hyperv = 0 argument:

      KDUMP_COMMANDLINE_APPEND = "irqpoll maxcpus = 1 reset_devices ide_core.prefer_ms_hyperv=0"
    • După modificările necesare, fișierul /etc/sysconfig/kdump Arată astfel:
      KDUMP_COMMANDLINE = ""

      # Această variabilă vă permite să ne Adăugare argumente la curent kdump linia Către de comandă
      # Ca oricare dintre KDUMP_COMMANDLINE de mai sus sau din/proc/linie_cmd

      KDUMP_COMMANDLINE_APPEND = "irqpoll maxcpus = 1 reset_devices ide_core.prefer_ms_hyperv=0"

Red Hat Enterprise Linux (RHEL) 6.4

În RHEL 6.4, trebuie să treacă parametrul prefer_ms_hyper_v în modul de driver ata_piix . Puteți face acest lucru prin modificarea conținutul fișierului /etc/kdump.conf.

Pentru a modifica conținutul /etc/kdump.conf, urmați acești pași:
  1. Configurați kdump să scrie într-un director local:

    cale/var/crash
  2. Adăugați module suplimentare ata_piix, sr_mod, sd_mod:

    extra_modules ata_piix sr_mod sd_mod
  3. Listă tabel neagră serviciile de integrare Linux drivere în etc/kdump.conf. Acest lucru împiedică driverele de încărcare în nucleul kexec:

    Listă tabel neagră hv_vmbus hv_storvsc hv_utils hv_netvsc hid-hyperv
  4. Adăugați parametrul de opțiuni pentru a trece parametrul ata_piix modulul:

    Opțiuni ata_piix prefer_ms_hyperv = 0
  5. Configurați valoarea de expirare de disc, astfel încât acesta nu mai răspunde (se blochează):

    disk_timeout 100
  6. După modificările necesare, fișierul /etc/kdump.conf Arată astfel:
    cale/var/crash
    nivel de mesaj core_collector makedumpfile - c - 1 - d 31
    extra_modules ata_piix sr_mod sd_mod
    Listă tabel neagră hv_vmbus hv_storvsc hv_utils hv_netvsc hid-hyperv
    Opțiuni ata_piix prefer_ms_hyperv = 0
    disk_timeout 100

Ubuntu 12.04(.x)

În Ubuntu 12.04 (.x), trebuie să treacă parametrul prefer_ms_hyper_v la driverul ata_piix . Puteți face acest lucru prin modificarea conținutul fișierului /etc/init.d/kdump.

Pentru a modifica conținutul fișierului /etc/init.d/kdump, adăugaţi ata_piix. prefer_ms_hyper_v = 0 pentru opțiunile de linia Către de comandă kdump:
do_start {} {}
….
….
Adăugare = "$APPEND kdump_needed maxcpus = 1 irqpoll reset_devices ata_piix.prefer_ms_hyperv=0"

}

SUSE Linux Enterprise Server (SLES) 11 SP2(x)

În distribuţii SLES 11 SP2(x), trebuie să treacă parametrul prefer_ms_hyper_v la driverul ata_piix . Puteți face acest lucru prin modificarea conținutul fișierului /etc/sysconfig/kdump după cum urmează:

Adăugați ata_piix.prefer_ms_hyper_v=0 la KDUMP_COMMANDLINE_APPEND:

KDUMP_COMMANDLINE_APPEND="ata_piix.prefer_ms_hyperv=0"

După modificările necesare, fișierul /etc/sysconfig/kdump Arată astfel:

KDUMP_COMMANDLINE_APPEND="ata_piix.prefer_ms_hyperv=0"

Informaţii suplimentare
KDUMP ar trebui să fie configurat în modul standard care este sugerat de distribuţii Linux.

Produse terţe despre care se discută în acest articol sunt fabricate de companii independente de Microsoft. Microsoft nu garantează în niciun fel, implicit sau în alt mod, funcționarea sau fiabilitatea acestor produse.

Avertisment: acest articol a fost tradus automat

Proprietăți

ID articol: 2858695 - Ultima examinare: 06/04/2015 20:20:00 - Revizie: 4.0

Windows Server 2012 R2 Datacenter, Windows Server 2012 R2 Standard, Windows Server 2012 R2 Essentials, Microsoft Hyper-V Server 2012 R2, Windows Storage Server 2012 R2 Standard, Windows Server 2012 Datacenter, Windows Server 2012 Standard, Microsoft Hyper-V Server 2012, Windows Storage Server 2012 Standard, Windows Server 2008 R2 Datacenter, Windows Server 2008 R2 Enterprise, Windows Server 2008 R2 Standard, Windows Server 2008 R2 Service Pack 1, Microsoft Hyper-V Server 2008 R2 Service Pack 1, Microsoft Hyper-V Server 2008 R2

  • kbmt KB2858695 KbMtro
Feedback