Megosztás:


Megosztott SLES-lemezfürt konfigurálása AZ SQL Serverhez

A következőkre vonatkozik:SQL Server Linux rendszeren

Ez az útmutató útmutatást nyújt egy kétcsomópontos megosztott lemezfürt létrehozásához az SQL Serverhez a SUSE Linux Enterprise Serveren (SLES). A fürtözési réteg A SUSE High Availability Extension (HAE) alapul, Pacemaker.

Jegyzet

Az SQL Server 2025 -től (17.x) kezdődően a SUSE Linux Enterprise Server (SLES) nem támogatott.

A fürtkonfigurációról, az erőforrás-ügynök beállításairól, a felügyeletről, az ajánlott eljárásokról és a javaslatokról további információt SUSE Linux Enterprise High Availability Extension 12 SP5című témakörben talál.

Előfeltételek

A következő teljes körű forgatókönyv végrehajtásához két gépre van szükség a két csomópontfürt és egy másik kiszolgáló üzembe helyezéséhez az NFS-megosztás konfigurálásához. Az alábbi lépések a kiszolgálók konfigurálását ismertetik.

Az operációs rendszer beállítása és konfigurálása az egyes fürtcsomópontokon

Az első lépés az operációs rendszer konfigurálása a fürtcsomópontokon. Ehhez a bemutatóhoz használja az SLES-t, amelynek van érvényes előfizetése a HA-bővítményre.

Sql Server telepítése és konfigurálása minden fürtcsomóponton

  1. Telepítse és állítsa be az SQL Servert mindkét csomóponton. Részletes útmutatásért tekintse meg LinuxSQL Server telepítési útmutatóját.

  2. Konfigurálás céljából jelöljön ki egy csomópontot elsődlegesként, a másikat pedig másodlagosként. Ezeket a kifejezéseket használja az útmutató követése során.

  3. A másodlagos csomóponton állítsa le és tiltsa le az SQL Servert. Az alábbi példa leállítja és letiltja az SQL Servert:

    sudo systemctl stop mssql-server
    sudo systemctl disable mssql-server
    

    Jegyzet

    A beállításkor a rendszer létrehoz egy kiszolgálói főkulcsot (SMK) az SQL Server-példányhoz, és a következő helyen /var/opt/mssql/secrets/machine-keyhelyezi el: . Linux rendszeren az SQL Server mindig helyi fiókként fut, mssql. Mivel ez egy helyi fiók, az identitása nem oszlik meg a csomópontok között. Az elsődleges csomópont titkosítási kulcsát minden másodlagos csomópontra át kell másolnia, hogy minden helyi mssql fiók hozzáférhessen az SMK visszafejtéséhez.

  4. Az elsődleges csomóponton hozzon létre egy SQL Server-bejelentkezést a Pacemakerhez, és adja meg a bejelentkezési engedélyt a sp_server_diagnosticsfuttatásához. A Pacemaker ezzel a fiókkal ellenőrzi, hogy melyik csomópont futtatja az SQL Servert.

    sudo systemctl start mssql-server
    

    Csatlakozzon az SQL Server-adatbázishoz master a sa fiókkal, és futtassa a következő szkriptet:

    USE [master];
    GO
    
    CREATE LOGIN [<loginName>] with PASSWORD = N'<password>';
    GRANT VIEW SERVER STATE TO <loginName>;
    

    Vigyázat

    A jelszónak az SQL Server alapértelmezett jelszóházirendetkell követnie. Alapértelmezés szerint a jelszónak legalább nyolc karakter hosszúnak kell lennie, és a következő négy készletből három karakterből kell állnia: nagybetűk, kisbetűk, 10 számjegyből és szimbólumokból. A jelszavak legfeljebb 128 karakter hosszúak lehetnek. Használjon olyan jelszavakat, amelyek a lehető legkomplexebbek és hosszúak.

  5. Az elsődleges csomóponton állítsa le és tiltsa le az SQL Servert.

  6. Kövesse a SUSE dokumentációjában található utasításokat a csomópontok gazdagépfájljának konfigurálásához és frissítéséhez. A hosts fájlnak tartalmaznia kell minden fürtcsomópont IP-címét és nevét.

    Az aktuális csomópont IP-címének ellenőrzéséhez futtassa a következőt:

    sudo ip addr show
    

    Állítsa be a számítógép nevét az egyes csomópontokon. Adjon minden csomópontnak egy 15 karakteres vagy annál kisebb egyedi nevet. A számítógép neve úgy állítható be, hogy /etc/hostname hozzáadja a YAST használatával vagy kézzel .

    A következő példa bemutatja a /etc/hosts csomópontot SLES1 és SLES2nevű két csomóponttal együtt.

    127.0.0.1      localhost
    10.128.18.128  SLES1
    10.128.16.77   SLES2
    

    Minden fürtcsomópontnak jelszó nélküli SSH-hozzáféréssel kell rendelkeznie egymáshoz. Ellenkező esetben az olyan eszközök, mint hb_reportaz , crm_reportés a Hawk's History Explorer, csak a helyi csomópontról gyűjthetnek adatokat. Ha nem szabványos SSH-portot használ, használja a -X lehetőséget (lásd : Egyéb követelmények és javaslatok). Ha például az SSH-port 3479, hívja meg crm_report a következővel:

    crm_report -X "-p 3479" [...]
    

    További információ: felügyeleti útmutató.

A következő szakaszban konfigurálja a megosztott tárterületet, és áthelyezi az adatbázisfájlokat az adott tárolóba.

Megosztott tárterület konfigurálása és adatbázisfájlok áthelyezése

A megosztott tárterület biztosításához különböző megoldásokat használhat. Ez az útmutató bemutatja a megosztott tárterület NFS-szel való konfigurálását. Kövesse az ajánlott eljárásokat, és használja a Kerberost az NFS biztonságossá tételéhez:

Ha nem követi ezt az útmutatást, bárki, aki hozzáfér a hálózathoz, és meghamisítást alkalmaz egy SQL-csomópont IP-címére, hozzáférhet az adatfájlokhoz. Mint mindig, az éles környezetben való használat előtt végezze el a fenyegetésmodellezést a rendszeren.

Egy másik tárolási lehetőség az SMB-fájlmegosztás használata:

NFS-kiszolgáló konfigurálása

Az NFS-kiszolgáló konfigurálásához tekintse meg a következő lépéseket a SUSE dokumentációjában: Az NFS-kiszolgálókonfigurálása.

Az összes fürtcsomópont konfigurálása az NFS megosztott tárolóhoz való csatlakozáshoz

Mielőtt konfigurálja az ügyfél NFS-t az SQL Server-adatbázisfájlok elérési útjának a megosztott tárolóhelyre való csatlakoztatásához, mentse az adatbázisfájlokat egy ideiglenes helyre, hogy később a megosztásba másolhassa őket:

  1. Csak az elsődleges csomópontonmentse az adatbázisfájlokat egy ideiglenes helyre. A következő szkript létrehoz egy új ideiglenes könyvtárat, átmásolja az adatbázisfájlokat az új könyvtárba, és eltávolítja a régi adatbázisfájlokat. Mivel az SQL Server helyi felhasználóként mssqlfut, meg kell győződnie arról, hogy a csatlakoztatott megosztásra való adatátvitel után a helyi felhasználó olvasási-írási hozzáféréssel rendelkezik a megosztáshoz.

    su mssql
    mkdir /var/opt/mssql/tmp
    cp /var/opt/mssql/data/* /var/opt/mssql/tmp
    rm /var/opt/mssql/data/*
    exit
    

    Konfigurálja az NFS klienst minden fürtcsomóponton.

    Jegyzet

    A magas rendelkezésre állású NFS-tárolókkal kapcsolatos ajánlott SUSE-eljárásokért és javaslatokért lásd: Magas rendelkezésre állású NFS Storage a DRBD-vel és a Pacemakerrel.

  2. Minden csomóponton ellenőrizze, hogy az SQL Server sikeresen elindul-e az új fájl elérési útjával. Jelenleg egyszerre csak egy csomópont futtassa az SQL Servert. Nem futtathatók egyszerre, mert mindketten egyszerre próbálják elérni az adatfájlokat.

    Ha meg szeretné akadályozni, hogy az SQL Server mindkét csomóponton elinduljon, használjon fájlrendszer fürterőforrást annak biztosítására, hogy a megosztás egyszerre csak egy csomópont által legyen csatolva.

    Az alábbi parancsok elindítják az SQL Servert, ellenőrzik az állapotot, majd leállítja az SQL Servert.

    sudo systemctl start mssql-server
    sudo systemctl status mssql-server
    sudo systemctl stop mssql-server
    

Ezen a ponton az SQL Server mindkét példánya úgy van konfigurálva, hogy a megosztott tárolóban lévő adatbázisfájlokkal fusson. A következő lépés az SQL Server pacemakerhez való konfigurálása.

A Pacemaker telepítése és konfigurálása minden fürtcsomóponton

  1. Mindkét fürtcsomóponton hozzon létre egy fájlt, amely az SQL Server felhasználónév és jelszó tárolására szolgál a Pacemaker bejelentkezéshez. A következő parancs létrehozza és feltölti ezt a fájlt:

    sudo touch /var/opt/mssql/secrets/passwd
    sudo echo '<loginName>' >> /var/opt/mssql/secrets/passwd
    sudo echo '<password>' >> /var/opt/mssql/secrets/passwd
    sudo chown root:root /var/opt/mssql/secrets/passwd
    sudo chmod 600 /var/opt/mssql/secrets/passwd
    

    Vigyázat

    A jelszónak az SQL Server alapértelmezett jelszóházirendetkell követnie. Alapértelmezés szerint a jelszónak legalább nyolc karakter hosszúnak kell lennie, és a következő négy készletből három karakterből kell állnia: nagybetűk, kisbetűk, 10 számjegyből és szimbólumokból. A jelszavak legfeljebb 128 karakter hosszúak lehetnek. Használjon olyan jelszavakat, amelyek a lehető legkomplexebbek és hosszúak.

  2. Minden fürtcsomópontnak SSH-n keresztül kell hozzáférnie egymáshoz. Az olyan eszközökhöz, mint a hb_report vagy a crm_report (hibaelhárításhoz), valamint a Hawk's History Explorer, jelszó nélküli SSH-hozzáférés szükséges a csomópontok között. Ellenkező esetben csak az aktuális csomópontról gyűjthetnek adatokat. Ha nem szabványos SSH-portot használ, használja a -X opciót (lásd az man oldalt). Ha például az SSH-port 3479, hívja meg a hb_report következőt:

    crm_report -X "-p 3479" [...]
    

    További információ: rendszerkövetelmények és javaslatok a SUSE dokumentációjában.

  3. Telepítse a magas rendelkezésre állású bővítményt. A bővítmény telepítéséhez kövesse az alábbi SUSE-cikkben ismertetett lépéseket:

    Telepítés és beállítás – gyors kezdés

  4. Az SQL ServerFCI-erőforrásügynökének telepítése. Futtassa a következő parancsokat mindkét csomóponton:

    sudo zypper addrepo -fc https://packages.microsoft.com/config/sles/12/mssql-server-2017.repo
    sudo zypper --gpg-auto-import-keys refresh
    sudo zypper install mssql-server-ha
    
  5. Az első csomópontautomatikus beállítása. A következő lépés egy egycsomópontos futó fürt beállítása az első csomópont, az SLES1 konfigurálásával. Kövesse a SUSE-cikkben található utasításokat, Az első csomópontbeállítása.

    Ha elkészült, ellenőrizze a klaszter állapotát a crm statussegítségével:

    crm status
    

    Azt mutatja, hogy egy csomópont, az SLES1 van konfigurálva.

  6. Csomópontok hozzáadása meglévő fürthöz. Ezután csatlakoztassa az SLES2 csomópontot a fürthöz. Kövesse a SUSE-cikkben található utasításokat, Második csomópont hozzáadása.

    Ha végzett, ellenőrizze a klaszter állapotát a crm statusparanccsal. Ha sikeresen felvett egy második csomópontot, a kimenet az alábbi példához hasonlóan néz ki:

    2 nodes configured
    1 resource configured
    Online: [ SLES1 SLES2 ]
    Full list of resources:
    admin_addr     (ocf::heartbeat:IPaddr2):       Started SLES1
    

    Jegyzet

    admin_addr a kezdeti egycsomópontos fürtbeállítás során konfigurált virtuális IP-fürterőforrás.

  7. Eltávolítási eljárások. Ha el kell távolítania egy csomópontot a fürtből, használja a ha-cluster-remove bootstrap szkriptet. További információ: Bootstrap-szkriptek áttekintése.

Az SQL Server fürterőforrásainak konfigurálása

Az alábbi lépések bemutatják, hogyan konfigurálhatja a fürterőforrást az SQL Serverhez. Szabja testre a következő két beállítást:

  • SQL Server-erőforrás neve: A fürtözött SQL Server-erőforrás neve.
  • időtúllépési érték: Az időtúllépési érték az az idő, amíg a fürt várakozik, hogy egy erőforrás elérhetővé váljon online. Az SQL Server esetében ez az érték azt az időt jelenti, amelyet az SQL Server elvár az master adatbázis online állapotba helyezéséhez.

Frissítse a környezetéhez tartozó alábbi szkript értékeit. Futtassa a szkriptet egy csomóponton a fürtözött szolgáltatás konfigurálásához és elindításához.

sudo crm configure
primitive <sqlServerResourceName> ocf:mssql:fci op start timeout=<timeout_in_seconds>
colocation <constraintName> inf: <virtualIPResourceName> <sqlServerResourceName>
show
commit
exit

Az alábbi szkript például létrehoz egy mssqlhanevű SQL Server-fürtözött erőforrást.

sudo crm configure
primitive mssqlha ocf:mssql:fci op start timeout=60s
colocation admin_addr_mssqlha inf: admin_addr mssqlha
show
commit
exit

A konfiguráció véglegesítése után az SQL Server ugyanazon a csomóponton indul el, mint a virtuális IP-erőforrás.

További információért lásd: Klasztererőforrások konfigurálása és kezelése (parancssori).

Ellenőrizze, hogy az SQL Server elindult-e

Az SQL Server indításának ellenőrzéséhez futtassa a CRM-állapot parancsot:

crm status

Az alábbi példa azokat az eredményeket mutatja be, amikor a Pacemaker sikeresen fürtözött erőforrásként indul el.

2 nodes configured
2 resources configured

Online: [ SLES1 SLES2 ]

Full list of resources:

 admin_addr     (ocf::heartbeat:IPaddr2):       Started SLES1
 mssqlha        (ocf::mssql:fci):       Started SLES1

Klaszter erőforrások kezelése

A fürterőforrások kezeléséhez tekintse meg a következő SUSE-cikket: Fürterőforrások kezelése

Kézi átváltás

Bár az erőforrások úgy vannak konfigurálva, hogy hardver- vagy szoftverhiba esetén automatikusan feladatátvételt vagy áttelepítést végezzenek el más fürtcsomópontokra, manuálisan is áthelyezheti őket a Pacemaker grafikus felhasználói felületével vagy a parancssorból.

Ehhez a feladathoz használja a migrate parancsot. Ha például az SQL-erőforrást egy nevű SLES2fürtcsomópontra szeretné migrálni, futtassa a következőt:

crm resource
migrate mssqlha SLES2