Kaip atlikti karštąjį keitimą

Paskutinį kartą keistas: 2023.11.23

Su karštu keitimu galite pakeisti diskus (HDD/SSD), kol sistema veikia, siekiant sumažinti serverio veikimo sutrikimus, jeigu diskas sugenda. Prašome perskaityti šį straipsnį, kad galėtumėte pasiruošti ir atlikti karštą keitimą.

Suderinamumas

Dauguma mūsų naujų serverių modelių palaiko karštą keitimą.

Galite patikrinti, ar jūsų serveris palaiko karštą keitimą „Robot“ sistemoje. Eikite į serverį ir spustelėkite skirtuke „Parama“. Tada naujame lange spustelėkite apačioje „Techninė informacija“. „Kokio techninio problema susiduriate?“ poskyryje spustelėkite „Avarinis diskas“. Dabar slinkite žemyn, kol pamatysite parinktį „Keisti, kai sistema veikia“. Jei matote šią parinktį, jūsų serveris palaiko karštą keitimą.

Svarbūs pastebėjimai

Bendrai, pirmiausia turėtumėte pašalinti diską, kurį norite pakeisti, iš RAID. Tai turėtumėte padaryti prieš pradedant likusią karšto keitimo procedūrą. Tai padės išvengti papildomo pakenkimo disko keitimo metu. Taip pat būkite labai atsargūs, kad įvestumėte teisingą serijos numerį sugedusiam diskui. Jei jau nematote sugedusio disko serijos numerio, aiškiai mums tai pasakykite ir pateikite serijos numerius visiems veikiantiems diskams.

Procedūra

Aparatinė RAID

Jei naudojate serverį su RAID valdikliu, galite keisti diskus naudodami karštą keitimą; tai taikoma visiems operacinės sistemos tipams. Šiuo metu turime Adaptec ir LSI RAID valdiklius.

Norėdami užklausti disko keitimo, parašykite pagalbinės paramos užklausą per savo paskyrą.

Žemiau pateikiami keli pavyzdžiai:

Svarbu: Tai tik pavyzdžiai. Jums reikia prisitaikyti prie žingsnių ir ypač komandų parametrų, kad atitiktų JŪSŲ konkretų sistemą!

LSI valdiklis

Pavyzdinė konfigūracija: „Debian“ diegimas ant RAID 1 masyvo su dviem SSD. Yra pasiekiami komandinės eilutės įrankiai MegaCli64 ir StorCLI.

  • StorCLI:
    • Raskite „StorCLI“ (galite konvertuoti „RPM“ paketą į „deb“ paketą naudodami alien, o tada jį įdiekite).
    • Sukurkite aliasą, kad būtų lengviau naudoti:
      alias storcli='/opt/MegaRAID/storcli/storcli64'

    Šiame pavyzdyje įsivaizduokite, kad yra sugedęs SSD, esantis lizde 0.

    1. Galite rasti būseną ir serijos numerius (Inquiry Data) naudodami šią komandą, pavyzdžiui:
      storcli /c0/eALL/sALL show all | egrep 'Device attributes|SN = | Intf | SATA'
    2. Jei sugedęs diskas dar neturi būsenos „offline“, tai padarykite „offline“ naudodami storcli:
      storcli /c0/e252/s0 set offline
    3. Dabar SSD pažymėtas kaip dingęs…
      storcli /c0/e252/s0 set missing
    4. Dabar parašykite paramos užklausą per „Robot“ ir paprašykite pakeisti diską.
    5. Po to, kai mūsų komanda pakeis diską, patikrinkite naujo disko būseną:
      storcli /c0/eall/sall show
    6. Jei atstatymas nepradeda automatiškai, paleiskite atstatymą rankiniu būdu.
      storcli /c0/e252/s0 start rebuild
  • MegaCli64:
    • Raskite MegaCli64. (Galite konvertuoti RPM paketą į deb paketą naudodami alien ir tada jį įdiegti).
    • Įrankis yra gana tolerantiškas dėl parametrų žymėjimo. Parametrus galite įvesti su arba be brūkšnelio, ir jie nėra jautrūs didžiosioms/mažosioms raidėms.
    • Sukurkite pseudonimą, kad būtų lengviau naudotis:
      alias megacli='/opt/MegaRAID/MegaCli/MegaCli64'.

    Šiame pavyzdyje, įsivaizduokite, kad yra defektinis SSD diskas įkištas į lizdą 0.

    1. Galite rasti būseną ir serijinius numerius (Inquiry Data) naudodami šią komandą, pavyzdžiui:
      megacli pdlist a0 | grep -Ei 'enclosure|slot|firmware state|inquiry'
    2. Jei defektinis diskas dar neturi būsenos (firmware state) ‘offline’, MegaCli nustatys jį kaip ‘offline’:
      megacli pdoffline physdrv[252:0] a0
    3. Dabar SSD diskas pažymėtas kaip pradingęs…
      megacli pdmarkmissing physdrv[252:0] a0
    4. …ir pasiruošęs keitimui
      megacli pdprprmv physdrv[252:0] a0
    5. Dabar parašykite pagalbos prašymą per Robotą ir paprašykite pakeisti diską.
    6. Po to, kai mūsų komanda pakeis diską, patikrinkite naujo disko būseną:
      megacli pdlist a0 | grep -Ei 'enclosure|slot|firmware state|inquiry'
    7. Jei atstatymas nepasidaro automatiškai, paleiskite jį rankiniu būdu.

Adaptec valdiklis

Pavyzdinė konfigūracija: „Debian“ diegimas ant RAID 1 masyvo su dviem diskais.

  • Jums reikia komandinės eilutės įrankio arcconf.
  • Defektuotas diskas prijungtas prie lizdo 0.
  1. Būseną ir serijinius numerius galite rasti šia komanda, pavyzdžiui:
    arcconf getconfig 1 pd|egrep "Device #|State\>|Reported Location|Reported Channel|Serial|S.M.A.R.T. warnings"
  2. Jei defektuotas diskas dar neturi būsenos „failed“, ši būsena nustatoma:
    arcconf setstate 1 device 0 0 ddd
  3. Dabar parašykite pagalbos prašymą per Robotą ir paprašykite pakeisti diską.
  4. Po to, kai mūsų komanda pakeis diską, patikrinkite naujo disko būseną:
    arcconf getconfig 1 pd | egrep "Device #|State\>|Reported Location|Reported Channel|Serial|S.M.A.R.T. warnings"
  5. Jei atstatymas nepasidaro automatiškai, paleiskite jį rankiniu būdu.

Programinė RAID

Pagrindiniuose nuostatuose karštas keitimas taip pat galimas SATA valdiklio diskams. Operacinė sistema pripažįsta jungties būsenos pasikeitimą atitinkamame valdytoje ir naują diską atpažįsta vos jis prijungtas. Veiksmai, kurių reikia imtis, skiriasi priklausomai nuo operacinės sistemos ir konfigūracijos.

Žemiau pateikiami keli pavyzdžiai:

Svarbu: Tai tik pavyzdžiai. Turite prisitaikyti žingsnius ir ypač komandų parametrus pagal savo konkretų sistemą!

Windows

Svarbu: Su „Windows“ neįmanoma karštai keisti pradinio „plex“ (start plex). Todėl sistema turi būti paleista iš sveikojo Plex prieš pradedant karštą keitimą. („Microsoft“ taip pat vadina lyginimą kaip plexing, todėl „plex“ yra dalis lygintojo tūrio).

Tarkime, kad serveris turi standartinę „Windows Server“ diegimą „UEFI“ režime su dviem diskais ir lyginimu. Defektuotas diskas yra diskas 1 (antrasis Plex). Sistema buvo paleista iš pirminio plex.

  1. Išimkite HDD/SSD iš RAID.

Diskų valdyme (diskmgmt.msc) atidarykite kontekstinį meniu „Volume C:“ ir pasirinkite „Remove Mirroring“.

  1. Nuskaitykite serijinį numerį defektuoto arba sveikojo HDD/SSD naudodami diskid32.exe.
  2. Pateikite pagalbos prašymą ir paprašykite mūsų komandos pakeisti diską (karštai keičiamas).
  3. Po to, kai mūsų komanda pakeis diską, paleiskite diskpart.
  4. Paruoškite diską / sukurkite skaidinius pagal sveikąjį HDD/SSD.
  • Jei keičiamo HDD/SSD nepavyksta aptikti:
    DISKPART> rescan
  • Rodyti diską:
    DISKPART> list disk
  • Jei defektuotas diskas rodomas kaip M1 (missing):
    DISKPART> select disk M1
    DISKPART> delete disk
  • Konvertuokite išimamąjį diską į dinaminę aplinką su GPT.
  • Sukurkite ir suformatuokite EFI skaidinį ir priskirkite jam raidė E.
  • Pridėkite HDD/SSD prie veidrodinio disko C ir palaukite, kol sinchronizacija bus baigta.
    DISKPART> select disk 1
    DISKPART> convert gpt
    DISKPART> create partition efi size=200
    DISKPART> format fs=fat32 quick
    DISKPART> assign letter=e
    DISKPART> convert dynamic
    DISKPART> select volume c
    DISKPART> add disk 1 wait
  • Priskirkite raidę x sveikojo HDD/SSD EFI skaidiniui.
    DISKPART> select disk 0
    DISKPART> select part 1
    DISKPART> assign letter=x
    DISKPART> exit
  1. EFI skaidinys ir paleidimo tvarkytuvas:Pavyzdyje EFI skaidiniai buvo priskirti šios raidės: x: egzistuojantis EFI skaidinys e: naujai sukurtas EFI skaidinys pakeičiamajame diske
  • Pirmiausia turėtumėte išsaugoti sistemos BCD atmintį (čia faile BCD_backup esant dabartiniam katalogui), kad galėtumėte atšaukti bet kokius vėlesnius pakeitimus naudodami bcdedit /import:
    bcdedit /export BCD_backup
  • Rekursyviai nukopijuokite EFI skaidinį, bet praleiskite BCD atmintį ir „System Volume Information“ aplanką:
    robocopy x:\ e:\ * /e /copyall /dcopy:t /xf BCD.* /xd "System Volume Information"
  • Dabar eksportuokite sistemos BCD atmintį į pakeičiamąjį diską naudodami bcdedit:
    bcdedit /export e:\EFI\Microsoft\Boot\BCD

Dabar galite paleisti abu paleidimo tvarkytuvus iš bet kurio iš dviejų paleidimo plex’ų.

Tam tikromis aplinkybėmis gali prireikti atlikti papildomus BCD atminties pakeitimus (pvz., jei vis dar yra naikintas paleidimo įrašas). Daugiau informacijos galite rasti: http://download.microsoft.com/download/6/E/E/6EE26977-FAA0-41CC-8BDA-7A0C5E6EB9CC/Configuring%20Disk%20Mirroring%20for%20Windows%20Server%202012.docx.

FreeBSD

  • gmirror + UFS:Pavyzdinė konfigūracija: FreeBSD diegimas su UFS ir gmirror naudojant šiuos masyvus:
    /dev/mirror/boot (ada0p1 + ada1p1)
    /dev/mirror/swap (ada0p2 + ada1p2)
    /dev/mirror/root (ada0p3 + ada1p3)

    Defektuotas HDD/SSD yra ada1.

    1. Išimkite defektuotąjį HDD/SSD iš RAID.
    • Patikrinkite būseną:
      gmirror status
    • Išjunkite defektuotojo HDD/SSD skaidinius, jei reikia:
      gmirror deactivate boot ada1p1
      gmirror deactivate swap ada1p2
      gmirror deactivate root ada1p3
    • „Pamirškite“ defektuotojo HDD/SSD skaidinius:
      gmirror forget boot
      gmirror forget swap
      gmirror forget root
    1. Raskite defektuotojo HDD/SSD serijinį numerį:
    • Pavyzdžiui, naudodami smartctl iš smartmontools paketo:
      smartctl -a /dev/ada1 |grep -i serial
    • Arba naudodami camcontrol:
      camcontrol identify /dev/ada1 |grep -i serial
    1. Dabar parašykite pagalbos prašymą per „Robot“ ir paprašykite keisti diską.
    2. Po keitimo nukopijuokite skaidinių lentelę iš ada0 į ada1:
      gpart backup ada0 | gpart restore ada1

NOTE: Šiuo metu atrodo, kad FreeBSD 11 yra klaida, neleidžianti FreeBSD atkurti skaidinių lentelės, kas gali kelti grėsmę paleidimui iš pakeisto disko. Jei susiduriate su šia problema, žr. FreeBSD Forum postą.

  1. Pridėkite keičiamojo HDD/SSD skaidinius prie gmirror:
    gmirror insert boot ada1p1
    gmirror insert swap ada1p2
    gmirror insert root ada1p3
  2. Įdiekite paleidimo kodą į keičiamąjį HDD/SSD:
    gpart bootcode -b /boot/pmbr -p /boot/gptboot -i 1 ada1
  • ZFSPavyzdinė konfigūracija: FreeBSD diegimas naudojant ZFS su šiais masyvais:
    /dev/mirror/boot (ada0p1 + ada1p1)
    /dev/mirror/swap (ada0p2 + ada1p2)

    ZFS pool zroot su atspindinimu per gpt/root0 (GPT žymė ada0p3) ir gpt/root1 (GPT žymė ada1p3)

    Defektuotas HDD/SSD yra ada0.

    (Abu gmirror atvaizdai boot ir swap tvarkomi pagal aukščiau pateiktą procedūrą).

    1. Jeigu norite naudoti ZFS atvaizdinimui, taip pat turite patikrinti atvaizdo būseną prieš jį keičiant ir, jei reikia, nustatyti atitinkamą skaidinį (pavyzdžiui, gpt/root0) kaip neprisijungusį:
      zpool status
       pool: zroot
      state: ONLINE
       scan: none requested
      config:
             NAME           STATE     READ WRITE CKSUM
             zroot          ONLINE       0     0     0
               mirror-0     ONLINE       0     0     0
                 gpt/root0  ONLINE       0     0     0
                 gpt/root1  ONLINE       0     0     0
      zpool offline zroot gpt/root0
      zpool status
       pool: zroot
      state: DEGRADED
      status: One or more devices has been taken offline by the administrator.
             Sufficient replicas exist for the pool to continue functioning in a
             degraded state.
      action: Online the device using 'zpool online' or replace the device with
             'zpool replace'.
       scan: none requested
      config:
             NAME                     STATE     READ WRITE CKSUM
             zroot                    DEGRADED     0     0     0
               mirror-0               DEGRADED     0     0     0
                 8894732708877724737  OFFLINE      0     0     0  was /dev/gpt/root0
                 gpt/root1            ONLINE       0     0     0
      
      gmirror deactivate boot ada0p1
      gmirror deactivate swap ada0p2
      gmirror forget boot
      gmirror forget swap
    2. Jei naudojate GPT žymes kaip pavyzdyje, galite rasti priskyrimą disko naudodami gpart:
      gpart list | grep -Egg 'geom|label'
      Geom name: ada0
      label: boot0
      label: swap0
      label: root0
      Geom name: ada1
      label: boot1
      label: swap1
      label: root1
    3. Raskite defektuotojo HDD/SSD serijinį numerį:
    • Pavyzdžiui, naudodami smartctl iš smartmontools paketo:
      smartctl -a /dev/ada0 |grep -i serial
    • Arba naudodami camcontrol:
      camcontrol identify /dev/ada0 |grep -i serial
    1. Parašykite pagalbos bilietą per Robot’ą ir paprašykite mūsų komandos pakeisti diską. Įsitikinkite, kad įtraukiate teisingą disko serijinį numerį. Po keitimo perduokite skaidinių lentelę naudodami gpart, sutvarkykite gmirror atvaizdą ir įdiekite paleidimo kodą:
      gpart backup ada1 | gpart restore ada0
      gmirror insert boot ada0p1
      gmirror insert swap ada0p2
      gpart bootcode -b /boot/pmbr -p /boot/gptzfsboot -i 1 ada0
    2. Tada sureguliuokite ZFS skaidinio (šiuo atveju trečiojo, t. y. ada0p3) GPT žymę keičiamojo disko (gpt/root0):
      gpart modify -i 3 -l root0 ada0
    3. Naujas įrenginys dabar gali pakeisti sugedusią dalį atvaizdo:
      zpool replace zroot gpt/root0
      zpool status -x
      all pools are healthy

    For detailed information on configuring and managing the ZFS file system, see the Oracle documentation: Oracle ZFS Documentation (English)

Was this article helpful?
Peržiūrų: 611

BeeHosting 10-asis gimtadienis!
Iki 70% nuolaida visoms paslaugoms
+ nemokamas svetainės perkėlimas.

Facebook Instagram linkedin

Beehosting.pro website uses cookies

We use cookies to personalise content and ads, to provide social media features and to analyse our traffic. We also share information about your use of our site with our social media, advertising and analytics partners who may combine it with other information that you’ve provided to them or that they’ve collected from your use of their services.

Menu