Tárolók használata linuxos SQL Serverrel

Befejeződött

A tárolók segítségével a szervezetek rugalmas és méretezhető SQL Server-telepítéseket hozhatnak létre.

A Wide World Importers olyan nagy méretű adatbázis-számítási feladatokat támogat, amelyek rugalmas és méretezhető üzemeltetési architektúrát igényelnek. Szeretné felmérni az SQL Server virtuális környezetekben, például virtuális gépeken és tárolókban való üzemeltetésének lehetőségét.

Itt megtudhatja, hogyan választhat az adatbázis tárolói és virtuális gépei között.

Virtuális gépek és tárolók összehasonlítása

A virtualizálás egy olyan technika, amellyel a rendszergazdák több virtuális kiszolgálót üzemeltetnek egyetlen fizikai kiszolgálón. A virtualizálás használatakor egyszerűen üzembe helyezhet további példányokat, például az SQL Servert anélkül, hogy további hardvereket vásárol és telepítene. A virtualizálásnak két gyakori megközelítése van:

  • Virtuális gépek: Virtuális gépek használatakor minden példány egy teljes virtuális kiszolgáló saját operációs rendszerrel és hardverrel.
  • Tárolók: Tárolók használatakor minden példány egy operációs rendszert és hardvererőforrást oszt meg a gazdagéppel.

A virtuális gépek és a tárolók is elkülönített környezetet biztosítanak, amelyben az olyan alkalmazások, mint az SQL Server, úgy futnak, mintha külön fizikai számítógépen lennének.

A virtuális gépek nagyobbak, és a létrehozásuk hosszabb időt vesz igénybe, de mivel saját operációs rendszerük van, a gazdaszámítógéphez más konfigurációt és hardvert kell használniuk. A virtuális gépeket különböző operációs rendszerekkel is kombinálhatja ugyanazon a gazdagépen. Linux-gazdagépen például telepíthet egy Linux és Apache rendszerű virtuális gépet egy webhely üzemeltetéséhez. Előfordulhat, hogy egy másik, Windowst és SQL Servert futtató virtuális gép is üzemeltet adatbázist.

A tárolók kisebbek, így sokkal gyorsabban töltődnek be, mint a virtuális gépek. Ha azonban a gazdagép Linux Ubuntu rendszert futtat, például a számítógépen lévő összes tárolónak az Ubuntu ugyanazon verzióját kell futtatnia. Linux-gazdagépen linuxos és Apache rendszerű tárolót is telepíthet, de az adatbázistárolónak Linuxot is futtatnia kell. Ez mindaddig lehetséges, amíg az SQL Server 2017-et vagy újabb verziót futtatja.

Diagram comparing the layers of software required to run VMs versus Containers.

A gazdaszámítógépen olyan szoftvereket kell telepítenie, mint a Hyper-V vagy a VirtualBox a virtuális gépek üzemeltetéséhez. Tárolók esetén használhatja a Docker-rendszert, a CRI-O-t, az rkt-t és más tároló gazdagépeket.

A virtuális gépek használatának okai

Vannak még olyan helyzetek, amikor a tárolók nem a legjobb megoldás. Mivel a tárolók egyetlen operációs rendszeren futnak, és rendszererőforrásokat osztanak meg, a biztonság aggodalomra ad okot. Ha egy támadó szuperfelhasználói jogosultságokat szerez, egyes vektorok hozzáféréshez vezethetnek az alkalmazásokhoz. A tárolókban az alkalmazásoknak ugyanazon az operációs rendszeren kell futniuk, mint a gazdaszámítógépnek. Windows rendszeren nem futtathat Linux-alapú alkalmazásokat tárolókban. A virtuális gépeken linuxos vagy macOS rendszerű Windows rendszerű gépet üzemeltet, nagyobb rugalmasságot biztosítva. A virtuális gépek lehetővé teszik több, szoros integrációval rendelkező alkalmazás üzemeltetését egyetlen virtuális gépen. A tárolók hagyományosan csak egyetlen alkalmazásokat üzemeltetnek.

A virtuális gépek kevésbé hatékonyak, mint a tárolók. Egy adott hardverkészleten legalább kétszer annyi alkalmazást futtathat tárolókban, mint a virtuális gépek esetében. A virtuális gépek több erőforrást használnak, mert az operációs rendszer teljes másolatára és az összes hardver virtualizált verziójára van szükség a vendég operációs rendszer támogatásához.

A tárolók használatának okai

A tárolók egyszerűbbek összehasonlításban, és lehetővé teszik az alkalmazások kisebb méretre való csomagolását. Mivel egyetlen operációs rendszer üzemelteti a tárolókat, kevesebb felügyelet szükséges. Az egyes virtuális gépeken lévő összes vendég operációs rendszer helyett csak egyetlen operációs rendszert kell javítania és frissítenie. A tárolók kisebbek és egyszerűbbek, így másodpercek alatt elindíthatók a virtuális gép indításához szükséges percek helyett.

Vezénylés

A Tárolók vezényléséhez használhatja a Docker Swarmot, a Kubernetes-t és más megoldásokat. A vezénylők figyelik és teszik lehetővé az alkalmazások tárolók használatával történő skálázását, valamint a vészhelyreállítás szintjét. A Microsoft eszközöket és példákat kínál a Kubernetes használatára, ezért jó választás az SQL Server Linuxon történő tárolózásához. A Kuberneteshez elérhető egy SQL Server linuxos tárolórendszerkép.

Tárolóalapú SQL Server Linuxon

A tárolókban futó adatbázisok egyik problémája az állandó tárolás. Meg kell adnia egy tárolón kívüli tárolóhelyet, ahol az adatbázis tárolhatja az adatbázisfájlokat. A módosítások ezután elérhetők a fürt összes tárolója számára. Ha Kubernetes-t használ, állandó kötetet is használhat ehhez a helyhez.

Diagram of the a Kubernetes cluster running SQL Server and the relationship between nodes, pods, storage, replica sets, and the service.

Először hozzon létre egy állandó kötetet, majd adjon hozzá egy állandó mennyiségi jogcímet (PVC). Hozzon létre egy üzembehelyezési jegyzékfájlt linuxos SQL Serverhez, amely a Microsoft által létrehozott mssql-server-linux tárolórendszerképet használja. A jegyzék a PVC-hez és a szolgáltatás terheléselosztójának definícióit is tartalmazza a konzisztens IP-cím biztosításához. Hozza létre az üzembe helyezést, és ellenőrizze, hogy az SQL Server fut-e egy podon belül. Ha a telepítés befejeződött, a Kubernetes elindít egy új példányt, ha a csomópont meghibásodik. Egy egyszerű teszt a pod törlése és annak ellenőrzése, hogy egy új automatikusan elindul-e.

Tesztelje tudását

1.

Mikor lenne a legjobb választás egy virtuális gép egy alkalmazás üzemeltetésére?