Megosztás:


Az SQL Server rendelkezésre állási alapjai Linux-üzemelő példányokhoz

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

Az SQL Server 2017 -től (14.x) kezdve az SQL Server linuxos és Windows rendszeren is támogatott. A Windows-alapú SQL Server-környezetekhez hasonlóan az SQL Server-adatbázisoknak és -példányoknak magas rendelkezésre állásúnak kell lenniük Linux alatt.

Ez a cikk a magas rendelkezésre állású Linux-alapú SQL Server-példányok és -adatbázisok tervezésének és üzembe helyezésének technikai szempontjait ismerteti, és kiemeli a Windows-alapú telepítésekkel kapcsolatos főbb különbségeket. Mivel az SQL Server vagy a Linux új lehet Önnél, ez a cikk olyan fogalmakat ismertet, amelyek már ismerősek lehetnek Önnek.

SQL Server rendelkezésre állási lehetőségek Linux-üzemelő példányokhoz

A biztonsági mentés és a visszaállítás mellett ugyanaz a három rendelkezésre állási funkció érhető el Linuxon, mint a Windows-alapú üzemelő példányok esetében:

Windows rendszeren az FCI-knek mindig szükségük van egy alapjául szolgáló Windows Server feladatátvevő fürtre (WSFC). Az üzembe helyezési forgatókönyvtől függően az AG-nek általában egy mögöttes WSFC-t kell használnia, kivételt képez az SQL Server 2017 új None változata (14.x). A WSFC nem létezik Linuxon. A linuxos fürtözés implementálását a Pacemaker ismerteti a rendelkezésre állási csoportok és a linuxos feladatátvevő fürtpéldányok esetében.

Gyors Linux-alapozó

Bár néhány Linux-telepítés tartalmaz egy felületet, a legtöbb nem. A parancssort szinte mindenhez használhatja az operációs rendszer rétegében. Ennek a parancssornak a linuxos világban a közös megnevezése a shell, a leggyakoribb a bash.

Linux rendszeren emelt szintű jogosultságokra van szükség számos parancs futtatásához, hasonlóan a Windows Server rendszergazdai jogosultságaihoz. Az emelt szintű jogosultságokkal rendelkező parancsokat kétféleképpen futtathatja:

  1. Futtassa a parancsot megfelelő felhasználóként. Ha másik felhasználóra szeretne váltani, használja a su parancsot. Ha felhasználónév nélkül futtatja a su-t, úgy léphet be a rendszerhéjba, ha ismeri a jelszót.

  2. Használja sudo a parancs előtt. Ez a módszer gyakoribb és biztonságosabb. Ebben a cikkben számos példa használ sudo.

Íme néhány gyakori parancs. Minden parancs különböző kapcsolókkal és lehetőségekkel rendelkezik, amelyeket online is megvizsgálhat:

  • cd - a könyvtár módosítása
  • chmod - fájl vagy könyvtár engedélyeinek módosítása
  • chown - fájl vagy könyvtár tulajdonjogának módosítása
  • ls - könyvtár tartalmának megjelenítése
  • mkdir - mappa (könyvtár) létrehozása egy meghajtón
  • mv – fájl áthelyezése egyik helyről a másikra
  • ps - az összes munkafolyamat megjelenítése
  • rm - fájl törlése egy szerveren helyileg
  • rmdir - mappa törlése (könyvtár)
  • systemctl - szolgáltatások indítása, leállítása vagy engedélyezése
  • Szövegszerkesztő parancsok. Linuxon különböző szövegszerkesztő lehetőségek állnak rendelkezésre, például vi és emacs.

A Linuxon futó SQL Server rendelkezésre állási konfigurációinak gyakori feladatai

Ez a szakasz az összes Linux-alapú SQL Server-üzemelő példányra jellemző feladatokat ismerteti.

Győződjön meg arról, hogy fájlokat másolhat

Bárki, aki Linuxon felügyeli az SQL Servert, képesnek kell lennie fájlok másolására az egyik kiszolgálóról a másikra. Ez a feladat elengedhetetlen az AG-konfigurációkhoz.

Az engedélyekkel kapcsolatos problémák linuxos és Windows-alapú telepítések esetén is fennállhatnak. Előfordulhat azonban, hogy a Windows-felhasználók ismerik a fájlok kiszolgálóról kiszolgálóra másolását, és nem biztos, hogy ismerik a Linuxon végzett munkát. Gyakori módszer a parancssori scpsegédprogram használata, amely a biztonságos másolást jelenti. A háttérben a scp az OpenSSH-t használja. Az SSH a biztonságos shellt jelenti. A Linux-disztribúciótól függően előfordulhat, hogy maga az OpenSSH nincs telepítve. Ha nem, telepítenie kell az OpenSSH-t.

Az OpenSSH Linux-disztribúcióhoz való konfigurálásáról további információt a következő témakörben talál:

Megjegyzés:

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

Ha a scp-t használja, meg kell adnia a szerver hitelesítő adatait, ha az nem a forrás vagy a célállomás. A következő parancs például a fájlt MyAGCert.cer a másik kiszolgálón megadott mappába másolja:

scp MyAGCert.cer username@servername:/folder/subfolder

A másoláshoz rendelkeznie kell a fájl engedélyével és esetleges tulajdonjogával, ezért előfordulhat, hogy a másolás előtt használnia chown kell. Hasonlóképpen, a fogadó oldalon a megfelelő felhasználónak hozzáférésre van szüksége a fájl kezeléséhez. A tanúsítványfájl visszaállításához például a mssql felhasználónak hozzá kell tudnia férni.

A Samba, amely a kiszolgálói üzenetblokk (SMB) Linux-változata, az UNC-elérési utakon elérhető megosztások létrehozására is használható, például \\SERVERNAME\SHARE. A Samba konfigurálásával kapcsolatos további információkért tekintse meg az egyes disztribúciókra vonatkozó alábbi hivatkozásokat:

Megjegyzés:

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

Windows-alapú SMB-megosztásokat is használhat. Az SMB-megosztásoknak nem kell Linux-alapúnak lenniük, ha a Samba ügyfélrésze megfelelően van konfigurálva az SQL Servert futtató Linux-kiszolgálón, és a megosztás megfelelő hozzáféréssel rendelkezik. A vegyes környezetben lévő ügyfelek számára ez a megközelítés lehetővé teszi a meglévő infrastruktúra használatát Linux-alapú SQL Server-környezetekhez.

Az üzembe helyezendő Samba verziójának SMB 3.0-nak kell lennie. Amikor az SQL Server 2012-ben (11.x) SMB-támogatást adtak hozzá, az SMB 3.0 támogatásához minden megosztásra szükség volt. Ha a megosztáshoz a Samba-t használja, és nem a Windows Servert, a Samba-alapú megosztásnak a Samba 4.0-s vagy újabb verzióját kell használnia, és ideális esetben a 4.3-at vagy újabb verziót, amely támogatja az SMB 3.1.1-et. Az SMB-ről és Linuxról jó információforrás a Samba SMB3-a.

Végül egy hálózati fájlrendszer -megosztás (NFS) használata egy lehetőség. Az NFS nem használható az SQL Server Windows-alapú üzemelő példányain, és csak Linux-alapú üzemelő példányokhoz használható.

A tűzfal konfigurálása

A Windowshoz hasonlóan a Linux-disztribúciók beépített tűzfallal rendelkeznek. Ha a szervezet külső tűzfalat használ a kiszolgálókhoz, lehetséges, hogy letilthatja a tűzfalakat Linuxon. Függetlenül attól, hogy hol engedélyezi a tűzfalat, meg kell nyitnia a portokat. Az alábbi táblázat felsorolja a Linuxon elérhető, magas rendelkezésre állású SQL Server-telepítésekhez szükséges gyakori portokat.

Portszám Típus Leírás
111 TCP/UDP NFS- rpcbind/sunrpc
135 TCP Samba (ha alkalmazzák) – Endpoint Mapper
137 Felhasználói Datagram Protokoll (UDP) Samba (ha használják) – NetBIOS névszolgáltatás
138 Felhasználói Datagram Protokoll (UDP) Samba (ha használatban van) - NetBIOS Datagram
139 TCP Samba (ha használják) – NetBIOS-munkamenet
445 TCP Samba (ha használják) – SMB TCP-n keresztül
1433 TCP SQL Server – alapértelmezett port; ha szükséges, a mssql-conf set network.tcpport <portnumber> segítségével módosítható.
2049 TCP, UDP NFS (ha használják)
2224 TCP Pacemaker - használja pcsd
3121 TCP Pacemaker – Szükséges, amennyiben vannak Pacemaker Remote távoli csomópontok
3260 TCP iSCSI-kezdeményező (ha használják) – Módosítható /etc/iscsi/iscsid.config RHEL alatt, de meg kell egyeznie az iSCSI-célpont portjával
5022 TCP SQL Server – AG-végponthoz használt alapértelmezett port; a végpont létrehozásakor módosítható
5403 TCP Szívritmus-szabályozó
5404 Felhasználói Datagram Protokoll (UDP) Pacemaker – A Corosync megköveteli csoportos küldésű UDP használata esetén
5405 Felhasználói Datagram Protokoll (UDP) Pacemaker – A Corosync megköveteli
21064 TCP Pacemaker – A DLM-et használó erőforrások megkövetelik
Változó TCP AG-végpont port; alapértelmezett értéke 5022
Változó TCP NFS – LOCKD_TCPPORT portja (megtalálható az /etc/sysconfig/nfs RHEL-en)
Változó Felhasználói Datagram Protokoll (UDP) NFS – LOCKD_UDPPORT portja (megtalálható az /etc/sysconfig/nfs RHEL-en)
Változó TCP/UDP NFS – MOUNTD_PORT portja (megtalálható az /etc/sysconfig/nfs RHEL-en)
Változó TCP/UDP NFS – STATD_PORT portja (megtalálható az /etc/sysconfig/nfs RHEL-en)

A Samba által használt egyéb portokért lásd a Samba porthasználatát.

Ezzel szemben a szolgáltatás nevét a port helyett a Linux alatt is hozzáadhatja kivételként. Használja például high-availability a Pacemakerhez. A megfelelő nevekért tekintse meg a disztribúciót. Az RHEL-en például a Pacemakerben hozzáadni kívánt parancs a következő:

sudo firewall-cmd --permanent --add-service=high-availability

Tűzfal dokumentációja

Megjegyzés:

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

SQL Server-csomagok telepítése rendelkezésre álláshoz

Windows-alapú SQL Server-telepítés esetén néhány összetevő még egy alapmotor-telepítésben is telepítve van, míg mások nem. Linux alatt csak az SQL Server-motor van telepítve a telepítési folyamat részeként. Minden más nem kötelező. A Linux alatt magas rendelkezésre állású SQL Server-példányok esetében két csomagot kell telepíteni az SQL Serverrel:

  • SQL Server Agent (mssql-server-agent)
  • a magas rendelkezésre állású (HA) csomag (mssql-server-ha)

Bár az SQL Server Agent technikailag nem kötelező, ez az SQL Server-feladatok alapértelmezett ütemezője, és a naplók szállításához szükséges, ezért a telepítés ajánlott.

Az SQL Server 2017 -en (14.x) a CU 4 és újabb verzióival az SQL Server Agent szerepel az adatbázismotor csomagjában, de továbbra is engedélyeznie kell. Windows-alapú telepítések esetén az SQL Server-ügynök nem választható.

Megjegyzés:

Az SQL Server Agent az SQL Server beépített feladatütemezője. Olyan feladatok ütemezésére szolgál, mint a biztonsági mentések és a rutinszerű karbantartás. Windows rendszeren az SQL Server-ügynök külön szolgáltatásként fut. Linuxon az SQL Server környezetében fut.

Ha Windows-alapú rendszerben konfigurálja az AG-ket vagy az FCI-ket, azok klasztertudatosak. A fürttudatosság azt jelenti, hogy az SQL Server rendelkezik azokkal az erőforrás-DLL-ekkel, amelyeket a WSFC ismer (az FCI-k esetében sqagtres.dll és sqsrvres.dll, az AG-k esetében hadrres.dll), és amelyeket a WSFC használ annak biztosítására, hogy az SQL Server fürtözött funkciói megfelelően működjenek.

Mivel a fürtözés nem csak az SQL Servertől, hanem a Linuxtól is független, a Microsoftnak a Linux-alapú AG- és FCI-telepítésekhez egy erőforrás DLL-nek megfelelő kódot kellett fejlesztenie. Ez az erőforrás a mssql-server-ha csomag, más néven a Pacemaker Sql Server erőforrásügynöke. A mssql-server-ha csomag telepítéséhez lásd: Pacemaker-fürt üzembe helyezése SQL Serverhez Linuxon.

Linuxon a Full-Text Search (mssql-server-fts) és az Integration Services (mssql-server-is) opcionális SQL Server-csomagok, és nem szükségesek FCI-hez vagy AG-hez.

SQL Server magas rendelkezésre állású és vészhelyreállítási partnerek

Az SQL Server-szolgáltatások magas rendelkezésre állásának és vészhelyreállításának biztosításához válasszon az iparágvezető eszközök széles választékából. Ez a szakasz az SQL Servert támogató magas rendelkezésre állású és vészhelyreállítási megoldásokkal rendelkező Microsoft-partnervállalatokat emeli ki.

Üzlettárs Leírás
DH2i A DxEnterprise egy rendelkezésre álláskezelési megoldás Windows, Linux és tárolókörnyezetekhez. Támogatja a magas rendelkezésre állást, csökkenti a tervezett és a nem tervezett állásidőt, valamint leegyszerűsíti a fizikai és logikai erőforrások kezelését.

- Rendelkezésre állási csoportok üzembe helyezése a DH2i DxEnterprise használatával a Kubernetesen
- Oktatóanyag: Három csomópont Always On rendelkezésre állási csoport beállítása a DH2i DxEnterprise használatával
HPE Serviceguard Az HPE SGLX kontextusfüggő monitorozási és helyreállítási lehetőségeket kínál a Feladatátvevő Fürtpéldány és az Always On rendelkezésre állási csoportok számára. Maximalizálhatja az üzemidőt a HPE SGLX-lel anélkül, hogy veszélyeztetné az adatintegritást és a teljesítményt.

- Oktatóanyag: Állítson be egy három csomópontos Always On rendelkezésre állási csoportot a Linuxhoz készült HPE Serviceguard használatával.
Pacemaker A Pacemaker egy nyílt forráskódú, magas rendelkezésre állású fürterőforrás-kezelő. A Corosync nyílt forráskódú csoportkommunikációs rendszerével a Pacemaker képes észlelni az összetevők hibáit, és összehangolni a szükséges feladatátvételi eljárásokat az alkalmazások megszakításainak minimalizálása érdekében.

- Pacemaker rendelkezésre állási csoportokhoz és kieséses fürtpéldányokhoz Linuxon
- Pacemaker-klaszter üzembe helyezése a SQL Server számára Linuxon