Megosztás a következőn keresztül:


Azure Linux rendszerű virtuális gépek alkalmazáskonzisztens biztonsági mentése az Azure Backup használatával

Ez a cikk azt ismerteti, hogyan hozhat létre alkalmazáskonzisztens biztonsági mentéseket Linux rendszerű virtuális gépeiről az Azure-ba az Azure Backup használatával. Ebben a cikkben konfigurálja a szkript-keretrendszert az Azure-ban üzembe helyezett Linux rendszerű virtuális gépek biztonsági mentéséhez. Ez a cikk a hibaelhárítási információkat is tartalmazza.

Amikor biztonsági másolatot készít a virtuális gépekről, az alkalmazáskonzisztencia azt jelenti, hogy az alkalmazások akkor indulnak el, amikor a virtuális gépek elindulnak a visszaállítás után. Ahogy el tudja képzelni, az alkalmazáskonzisztencia rendkívül fontos. Annak érdekében, hogy a Linux rendszerű virtuális gépek alkalmazáskonzisztensek legyenek, a Linux prescript és a post-script keretrendszer használatával alkalmazáskonzisztens biztonsági mentéseket készíthet. Az előleíró és a szkript utáni keretrendszer támogatja az Azure Resource Manager által üzembe helyezett Linux rendszerű virtuális gépeket. Az alkalmazáskonzisztencia szkriptjei nem támogatják a Service Manager által üzembe helyezett virtuális gépeket vagy Windows rendszerű virtuális gépeket.

A keretrendszer működése

A keretrendszer lehetővé teszi egyéni előírók és szkriptek futtatását virtuálisgép-pillanatképek készítése közben. Az előírók közvetlenül a virtuális gép pillanatképének elkészítése előtt futnak, a szkriptek pedig közvetlenül a virtuális gép pillanatképének elkészítése után. Az előírók és a post-scriptek rugalmasan szabályozják az alkalmazást és a környezetet, miközben virtuálisgép-pillanatképeket készít.

Az előírók natív alkalmazás API-kat hívnak meg, amelyek kihívják az IOS-eket, és kiürítik a memóriában lévő tartalmat a lemezre. Ezek a műveletek biztosítják, hogy a pillanatkép alkalmazáskonzisztens legyen. A post-scriptek natív alkalmazás API-kkal olvasztják fel az IOS-eket, amelyek lehetővé teszik az alkalmazás számára a normál műveletek folytatását a virtuális gép pillanatképe után.

Előíró és utószkript konfigurálása Azure Linux rendszerű virtuális gépekhez

A Prescript és a post-script konfigurálásához kövesse az alábbi lépéseket:

  1. Jelentkezzen be gyökérfelhasználóként arra a Linux rendszerű virtuális gépre, amelyről biztonsági másolatot szeretne készíteni.

  2. A GitHubról töltse le VMSnapshotScriptPluginConfig.json, és másolja az /etc/azure mappába minden olyan virtuális géphez, amelyről biztonsági másolatot szeretne készíteni. Ha a /etc/azure mappa nem létezik, hozza létre.

  3. Másolja ki az alkalmazáshoz tartozó előírót és utószkriptet minden olyan virtuális gépen, amelyről biztonsági másolatot szeretne készíteni. A szkripteket a virtuális gép bármely pontjára másolhatja. Mindenképpen frissítse a szkriptfájlok teljes elérési útját a VMSnapshotScriptPluginConfig.json fájlban.

  4. Győződjön meg a következő engedélyekről ezekhez a fájlokhoz:

    • VMSnapshotScriptPluginConfig.json: Engedély: "600." Például csak a "gyökér" felhasználónak kell "olvasási" és "írási" engedélyekkel rendelkeznie ehhez a fájlhoz, és egyetlen felhasználónak sem lehet "végrehajtási" engedélye.

    • Szkript előtti fájl: Engedély : "700." Például csak a "gyökér" felhasználónak kell "olvasási", "írási" és "végrehajtási" engedélyekkel rendelkeznie ehhez a fájlhoz. A fájl várhatóan rendszerhéjszkript lesz, de elméletileg ez a szkript belsőleg is létrehozhat vagy hivatkozhat más szkriptekre, például Python-szkriptekre.

    • Szkript utáni engedély : "700". Például csak a "gyökér" felhasználónak kell "olvasási", "írási" és "végrehajtási" engedélyekkel rendelkeznie ehhez a fájlhoz. A fájl várhatóan rendszerhéjszkript lesz, de elméletileg ez a szkript belsőleg is létrehozhat vagy hivatkozhat más szkriptekre, például Python-szkriptekre.

    Fontos

    A keretrendszer sok energiát biztosít a felhasználóknak. Biztonságossá teheti a keretrendszert, és biztosíthatja, hogy csak a "gyökér" felhasználó férhessen hozzá kritikus JSON- és szkriptfájlokhoz. Ha a követelmények nem teljesülnek, a szkript nem fog futni, ami a fájlrendszer összeomlását és inkonzisztens biztonsági mentést eredményez.

  5. Konfigurálja a VMSnapshotScriptPluginConfig.json az alábbiak szerint:

    • pluginName: Hagyja meg a mezőt a várt módon, vagy előfordulhat, hogy a szkriptek nem a várt módon működnek.

    • preScriptLocation: Adja meg az előíró teljes elérési útját a biztonsági mentésre készülő virtuális gépen.

    • postScriptLocation: Adja meg a biztonsági mentésre készülő virtuális gépen a post-script teljes elérési útját.

    • preScriptParams: Adja meg azokat az opcionális paramétereket, amelyeket át kell adni az előírónak. Minden paraméternek idézőjelekben kell lennie. Ha több paramétert használ, vesszővel válassza el a paramétereket.

    • postScriptParams: Adja meg azokat az opcionális paramétereket, amelyeket át kell adni a post-scriptnek. Minden paraméternek idézőjelekben kell lennie. Ha több paramétert használ, vesszővel válassza el a paramétereket.

    • preScriptNoOfRetries: Adja meg, hogy hány alkalommal kell újrapróbálkoznia az előírónak, ha hiba történt a befejezés előtt. A nulla azt jelenti, hogy hiba esetén csak egy próbálkozás és újrapróbálkozhat.

    • postScriptNoOfRetries: Adja meg, hogy hány alkalommal kell újrapróbálkoznia a post-scriptnek, ha hiba történt a befejezés előtt. A nulla azt jelenti, hogy hiba esetén csak egy próbálkozás és újrapróbálkozhat.

    • timeoutInSeconds: Adja meg a prescript és a post-script egyéni időtúllépéseit (a maximális érték 1800 lehet).

    • continueBackupOnFailure: Állítsa ezt az értéket igaz értékre, ha azt szeretné, hogy az Azure Backup visszaessen egy fájlrendszer konzisztens/összeomlási konzisztens biztonsági mentésére, ha az előleíró vagy a szkript utáni sikertelen. Ha ezt hamisra állítja, a biztonsági mentés sikertelen lesz, ha szkripthiba történik (kivéve, ha egylemezes virtuális gépe a beállítástól függetlenül visszaesik az összeomláskonzisztens biztonsági mentésre). Ha a continueBackupOnFailure érték hamis értékre van állítva, a biztonsági mentés sikertelensége esetén a rendszer újra megkísérli a biztonsági mentési műveletet a szolgáltatásban lévő újrapróbálkozási logika alapján (a megadott számú kísérlet esetében).

    • fsFreezeEnabled: Adja meg, hogy a linuxos fsfreeze-t meghívja-e a virtuális gép pillanatképének készítésekor a fájlrendszer konzisztenciájának biztosítása érdekében. Azt javasoljuk, hogy ezt a beállítást igaz értékre állítsa, hacsak az alkalmazás nem függ az fsfreeze letiltástól.

    • ScriptsExecutionPollTimeSeconds: Állítsa be, hogy a bővítménynek mennyi ideig kell aludnia az egyes lekérdezések között a szkript végrehajtásához. Ha például az érték 2, a bővítmény ellenőrzi, hogy a szkript előtti/utáni végrehajtás 2 másodpercenként befejeződött-e. A minimális és maximális érték 1, illetve 5 lehet. Az értéknek szigorúan egész számnak kell lennie.

  6. A szkript-keretrendszer most már konfigurálva van. Ha a virtuális gép biztonsági mentése már konfigurálva van, a következő biztonsági mentés meghívja a szkripteket, és alkalmazáskonzisztens biztonsági mentést indít el. Ha a virtuális gép biztonsági mentése nincs konfigurálva, konfigurálja az Azure-beli virtuális gépek helyreállítási tárakba való biztonsági mentésével .

Hibaelhárítás

Győződjön meg arról, hogy megfelelő naplózást ad hozzá a prescript és a post-script írása közben, és tekintse át a szkriptnaplókat a szkriptekkel kapcsolatos problémák megoldásához. Ha továbbra is problémái vannak a szkriptek futtatásával, további információért tekintse meg az alábbi táblázatot.

Hiba Hibaüzenet Javasolt művelet
Pre-ScriptExecutionFailed Az előíró hibát adott vissza, ezért előfordulhat, hogy a biztonsági mentés nem alkalmazáskonzisztens. Tekintse meg a szkript hibanaplóit a probléma megoldásához.
Post-ScriptExecutionFailed A szkript utáni hiba hatással lehet az alkalmazás állapotára. Tekintse meg a szkript hibanaplóit a probléma megoldásához és az alkalmazás állapotának ellenőrzéséhez.
Pre-ScriptNotFound Az előleíró nem található a VMSnapshotScriptPluginConfig.json konfigurációs fájlban megadott helyen. Az alkalmazáskonzisztens biztonsági mentés biztosításához győződjön meg arról, hogy az előíró szerepel a konfigurációs fájlban megadott elérési úton.
Post-ScriptNotFound A post-script nem található a VMSnapshotScriptPluginConfig.json konfigurációs fájlban megadott helyen. Az alkalmazáskonzisztens biztonsági mentés biztosításához győződjön meg arról, hogy a parancsfájl utáni szkript megtalálható a konfigurációs fájlban megadott elérési úton.
HelytelenPluginhostFile A VmSnapshotLinux bővítményhez tartozó Pluginhost-fájl sérült, ezért az előleíró és a szkript utáni fájl nem futtatható, és a biztonsági mentés nem lesz alkalmazáskonzisztens. Távolítsa el a VmSnapshotLinux bővítményt, és automatikusan újratelepíti a következő biztonsági másolattal a probléma megoldásához.
HelytelenJSONConfigFile A VMSnapshotScriptPluginConfig.json fájl helytelen, ezért a prescript és a post-script nem futtatható, és a biztonsági mentés nem lesz alkalmazáskonzisztens. Töltse le a másolatot a GitHubról, és konfigurálja újra.
InsufficientPermissionforPre-Script Szkriptek futtatása esetén a "gyökér" felhasználónak kell lennie a fájl tulajdonosának, a fájlnak pedig "700" engedélyekkel kell rendelkeznie (azaz csak a "tulajdonos" rendelkezhet "olvasási", "írási" és "végrehajtási" engedélyekkel). Győződjön meg arról, hogy a "gyökér" felhasználó a szkriptfájl "tulajdonosa", és hogy csak a "tulajdonos" rendelkezik "olvasási", "írási" és "végrehajtási" engedélyekkel.
InsufficientPermissionforPost-Script Szkriptek futtatása esetén a gyökérfelhasználónak kell lennie a fájl tulajdonosának, a fájlnak pedig "700" engedélyekkel kell rendelkeznie (azaz csak a "tulajdonos" rendelkezhet "olvasási", "írási" és "végrehajtási" engedélyekkel). Győződjön meg arról, hogy a "gyökér" felhasználó a szkriptfájl "tulajdonosa", és hogy csak a "tulajdonos" rendelkezik "olvasási", "írási" és "végrehajtási" engedélyekkel.
Pre-ScriptTimeout Az alkalmazáskonzisztens biztonsági mentés szkript előtti időtúllépése. Ellenőrizze a szkriptet, és növelje az időtúllépést a /etc/azure helyen található VMSnapshotScriptPluginConfig.json fájlban.
Post-ScriptTimeout A szkriptek utáni alkalmazáskonzisztens biztonsági mentés végrehajtása időtúllépést eredményezett. Ellenőrizze a szkriptet, és növelje az időtúllépést a /etc/azure helyen található VMSnapshotScriptPluginConfig.json fájlban.

Következő lépések

Virtuális gép biztonsági mentésének konfigurálása Recovery Services-tárolóra