Az LVM és a RAID konfigurálása titkosított eszközökön
A következőkre vonatkozik: ✔️ Linux rendszerű virtuális gépek rugalmas méretezési ✔️ csoportjai
Ez a cikk lépésről lépésre bemutatja, hogyan hajthat végre logikai kötetkezelést (LVM) és RAID-et titkosított eszközökön. A folyamat a következő környezetekre vonatkozik:
- Linux-disztribúciók
- RHEL 7.6+
- Ubuntu 18.04+
- SUSE 12+
- Azure Disk Encryption egyátadásos bővítmény
- Kétáteresztős Azure Disk Encryption-bővítmény
Forgatókönyvek
A cikkben szereplő eljárások a következő forgatókönyveket támogatják:
- Az LVM konfigurálása a titkosított eszközökre (LVM-on-crypt)
- RAID konfigurálása titkosított eszközökön (RAID-on-crypt)
A mögöttes eszköz vagy eszközök titkosítása után létrehozhatja az LVM- vagy RAID-struktúrákat a titkosított rétegen.
A fizikai kötetek (PV-k) a titkosított réteg tetején jönnek létre. A fizikai kötetek a kötetcsoport létrehozásához használatosak. Hozza létre a köteteket, és adja hozzá a szükséges bejegyzéseket az /etc/fstab fájlhoz.
Hasonló módon a RAID-eszköz a lemezeken lévő titkosított réteg tetején jön létre. A RENDSZER a RAID-eszköz tetején hoz létre egy fájlrendszert, és normál eszközként hozzáadja az /etc/fstab fájlhoz.
Megfontolandó szempontok
Javasoljuk, hogy használja az LVM-on-crypt parancsot. A RAID lehetőség, ha az LVM adott alkalmazás- vagy környezeti korlátozások miatt nem használható.
Az EncryptFormatAll lehetőséget fogja használni. További információ erről a beállításról: A EncryptFormatAll funkció használata Linux rendszerű virtuális gépek adatlemezeihez.
Bár ezt a módszert akkor is használhatja, ha az operációs rendszert is titkosítja, mi csak az adatmeghajtókat titkosítjuk.
Az eljárások feltételezik, hogy már áttekintette a Linux rendszerű virtuális gépekEn futó Azure Disk Encryption-forgatókönyvekben és a Linux rendszerű virtuális gépek Azure CLI-vel történő létrehozását és titkosítását ismertető rövid útmutatóban szereplő előfeltételeket.
Az Azure Disk Encryption kettős továbbítású verziója elavult, és már nem használható új titkosításokon.
Általános lépések
Az "on-crypt" konfigurációk használatakor használja az alábbi eljárásokban ismertetett folyamatot.
Megjegyzés
A cikk során változókat használunk. Cserélje le az értékeket ennek megfelelően.
Virtuális gép üzembe helyezése
A következő parancsok nem kötelezőek, de javasoljuk, hogy alkalmazza őket egy újonnan üzembe helyezett virtuális gépen (VM).
PowerShell:
New-AzVm -ResourceGroupName ${RGNAME} `
-Name ${VMNAME} `
-Location ${LOCATION} `
-Size ${VMSIZE} `
-Image ${OSIMAGE} `
-Credential ${creds} `
-Verbose
Azure CLI:
az vm create \
-n ${VMNAME} \
-g ${RGNAME} \
--image ${OSIMAGE} \
--admin-username ${username} \
--admin-password ${password} \
-l ${LOCATION} \
--size ${VMSIZE} \
-o table
Lemezek csatolása a virtuális géphez
Ismételje meg a következő parancsokat $N
a virtuális géphez csatolni kívánt új lemezek számához.
PowerShell:
$storageType = 'Standard_LRS'
$dataDiskName = ${VMNAME} + '_datadisk0'
$diskConfig = New-AzDiskConfig -SkuName $storageType -Location $LOCATION -CreateOption Empty -DiskSizeGB 5
$dataDisk1 = New-AzDisk -DiskName $dataDiskName -Disk $diskConfig -ResourceGroupName ${RGNAME}
$vm = Get-AzVM -Name ${VMNAME} -ResourceGroupName ${RGNAME}
$vm = Add-AzVMDataDisk -VM $vm -Name $dataDiskName -CreateOption Attach -ManagedDiskId $dataDisk1.Id -Lun 0
Update-AzVM -VM ${VM} -ResourceGroupName ${RGNAME}
Azure CLI:
az vm disk attach \
-g ${RGNAME} \
--vm-name ${VMNAME} \
--name ${VMNAME}datadisk1 \
--size-gb 5 \
--new \
-o table
Ellenőrizze, hogy a lemezek csatlakoztatva vannak-e a virtuális géphez
PowerShell:
$VM = Get-AzVM -ResourceGroupName ${RGNAME} -Name ${VMNAME}
$VM.StorageProfile.DataDisks | Select-Object Lun,Name,DiskSizeGB
Azure CLI:
az vm show -g ${RGNAME} -n ${VMNAME} --query storageProfile.dataDisks -o table
Portál:
Operációs rendszer:
lsblk
A titkosítandó lemezek konfigurálása
Ez a konfiguráció az operációs rendszer szintjén történik. A megfelelő lemezek hagyományos titkosításhoz vannak konfigurálva az Azure Disk Encryption használatával:
- A fájlrendszerek a lemezek tetején jönnek létre.
- Ideiglenes csatlakoztatási pontok jönnek létre a fájlrendszerek csatlakoztatásához.
- A fájlrendszerek a /etc/fstab rendszeren vannak konfigurálva a rendszerindításkor való csatlakoztatáshoz.
Ellenőrizze az új lemezekhez rendelt eszközbetűjelet. Ebben a példában négy adatlemezt használunk.
lsblk
Fájlrendszer létrehozása minden lemezen
Ez a parancs iterálja az ext4 fájlrendszer létrehozását minden lemezen, amely a "for" ciklus "in" részében van meghatározva.
for disk in c d e f; do echo mkfs.ext4 -F /dev/sd${disk}; done |bash
Keresse meg a nemrég létrehozott fájlrendszerek univerzálisan egyedi azonosítóját (UUID), hozzon létre egy ideiglenes mappát, adja hozzá a megfelelő bejegyzéseket az /etc/fstab fájlhoz, és csatlakoztassa az összes fájlrendszert.
Ez a parancs a "for" ciklus "in" részében meghatározott lemezeken is iterál:
for disk in c d e f; do diskuuid="$(blkid -s UUID -o value /dev/sd${disk})"; \
mkdir /tempdata${disk}; \
echo "UUID=${diskuuid} /tempdata${disk} ext4 defaults,nofail 0 0" >> /etc/fstab; \
mount -a; \
done
Ellenőrizze, hogy a lemezek megfelelően vannak-e csatlakoztatva
lsblk
Ellenőrizze azt is, hogy a lemezek konfigurálva vannak-e:
cat /etc/fstab
Az adatlemezek titkosítása
PowerShell kulcstitkosítási kulcs (KEK) használatával:
$sequenceVersion = [Guid]::NewGuid()
Set-AzVMDiskEncryptionExtension -ResourceGroupName $RGNAME `
-VMName ${VMNAME} `
-DiskEncryptionKeyVaultUrl $diskEncryptionKeyVaultUrl `
-DiskEncryptionKeyVaultId $KeyVaultResourceId `
-KeyEncryptionKeyUrl $keyEncryptionKeyUrl `
-KeyEncryptionKeyVaultId $KeyVaultResourceId `
-VolumeType 'DATA' `
-EncryptFormatAll `
-SequenceVersion $sequenceVersion `
-skipVmBackup;
Azure CLI KEK használatával:
az vm encryption enable \
--resource-group ${RGNAME} \
--name ${VMNAME} \
--disk-encryption-keyvault ${KEYVAULTNAME} \
--key-encryption-key ${KEYNAME} \
--key-encryption-keyvault ${KEYVAULTNAME} \
--volume-type "DATA" \
--encrypt-format-all \
-o table
A titkosítás állapotának ellenőrzése
Csak akkor folytassa a következő lépésekkel, ha az összes lemez titkosítva van.
PowerShell:
Get-AzVmDiskEncryptionStatus -ResourceGroupName ${RGNAME} -VMName ${VMNAME}
Azure CLI:
az vm encryption show -n ${VMNAME} -g ${RGNAME} -o table
Portál:
Operációs rendszer szintje:
lsblk
A bővítmény hozzáadja a fájlrendszereket a /var/lib/azure_disk_encryption_config/azure_crypt_mount (régi titkosítás) vagy az /etc/crypttab (új titkosítások) fájlhoz.
Megjegyzés
Ne módosítsa ezeket a fájlokat.
Ez a fájl gondoskodik a lemezek aktiválásáról a rendszerindítási folyamat során, hogy az LVM vagy a RAID később használhassa őket.
Ne aggódjon a fájl csatlakoztatási pontjai miatt. Az Azure Disk Encryption nem tudja normál fájlrendszerként csatlakoztatni a lemezeket, miután fizikai kötetet vagy RAID-eszközt hoztunk létre ezekre a titkosított eszközökre. (Ezzel eltávolítja az előkészítési folyamat során használt fájlrendszer-formátumot.)
Az ideiglenes mappák és az ideiglenes fstab-bejegyzések eltávolítása
Leválasztja az LVM részeként használt lemezek fájlrendszereit.
for disk in c d e f; do umount /tempdata${disk}; done
És távolítsa el az /etc/fstab bejegyzéseket:
vi /etc/fstab
Ellenőrizze, hogy a lemezek nincsenek-e csatlakoztatva, és hogy az /etc/fstab bejegyzései el lettek-e távolítva
lsblk
Ellenőrizze, hogy a lemezek konfigurálva vannak-e:
cat /etc/fstab
Az LVM titkosításon belüli lépései
Most, hogy a mögöttes lemezek titkosítva vannak, létrehozhatja az LVM-struktúrákat.
Az eszköznév használata helyett használja az egyes lemezek /dev/mapper elérési útjait egy fizikai kötet létrehozásához (a lemez tetején lévő titkosítási rétegen, nem a lemezen).
LVM konfigurálása a titkosított rétegek tetején
A fizikai kötetek létrehozása
Megjelenik egy figyelmeztetés, amely megkérdezi, hogy rendben van-e a fájlrendszer aláírásának törlése. Folytassa az y beírásával, vagy használja az echo "y" kifejezést az ábrán látható módon:
echo "y" | pvcreate /dev/mapper/c49ff535-1df9-45ad-9dad-f0846509f052
echo "y" | pvcreate /dev/mapper/6712ad6f-65ce-487b-aa52-462f381611a1
echo "y" | pvcreate /dev/mapper/ea607dfd-c396-48d6-bc54-603cf741bc2a
echo "y" | pvcreate /dev/mapper/4159c60a-a546-455b-985f-92865d51158c
Megjegyzés
Az itt található /dev/mapper/device neveket az lsblk kimenete alapján kell lecserélni a tényleges értékekre.
Fizikai kötetek adatainak ellenőrzése
pvs
A kötetcsoport létrehozása
Hozza létre a kötetcsoportot ugyanazokkal az eszközökkel, amelyeket már inicializált:
vgcreate vgdata /dev/mapper/
A kötetcsoport adatainak ellenőrzése
vgdisplay -v vgdata
pvs
Logikai kötetek létrehozása
lvcreate -L 10G -n lvdata1 vgdata
lvcreate -L 7G -n lvdata2 vgdata
A létrehozott logikai kötetek ellenőrzése
lvdisplay
lvdisplay vgdata/lvdata1
lvdisplay vgdata/lvdata2
Fájlrendszerek létrehozása a logikai kötetek struktúráinak tetején
echo "yes" | mkfs.ext4 /dev/vgdata/lvdata1
echo "yes" | mkfs.ext4 /dev/vgdata/lvdata2
Az új fájlrendszer csatlakoztatási pontjainak létrehozása
mkdir /data0
mkdir /data1
Adja hozzá az új fájlrendszereket a /etc/fstab fájlhoz, és csatlakoztassa őket
echo "/dev/mapper/vgdata-lvdata1 /data0 ext4 defaults,nofail 0 0" >>/etc/fstab
echo "/dev/mapper/vgdata-lvdata2 /data1 ext4 defaults,nofail 0 0" >>/etc/fstab
mount -a
Ellenőrizze, hogy az új fájlrendszerek csatlakoztatva vannak-e
lsblk -fs
df -h
Az lsblk ezen változatában azokat az eszközöket soroljuk fel, amelyek a függőségeket fordított sorrendben jelenítik meg. Ez a beállítás segít azonosítani a logikai kötet szerint csoportosított eszközöket az eredeti /dev/sd[disk] eszköznevek helyett.
Fontos, hogy a nofail beállítás hozzá legyen adva az Azure Disk Encryption által titkosított eszköz tetején létrehozott LVM-kötetek csatlakoztatási pontbeállításaihoz. Megakadályozza, hogy az operációs rendszer elakadjon a rendszerindítási folyamat során (vagy karbantartási módban).
Ha nem használja a nofail lehetőséget:
- Az operációs rendszer soha nem kerül abba a fázisba, ahol az Azure Disk Encryption elindul, és az adatlemezek zárolása feloldva és csatlakoztatva van.
- A titkosított lemezek zárolása a rendszerindítási folyamat végén lesz feloldva. Az LVM-kötetek és fájlrendszerek automatikusan csatlakoztatva lesznek, amíg az Azure Disk Encryption fel nem oldja őket.
Tesztelheti a virtuális gép újraindítását, és ellenőrizheti, hogy a fájlrendszerek a rendszerindítás után is automatikusan csatlakoztatva vannak-e. Ez a folyamat több percet is igénybe vehet a fájlrendszerek számától és méretétől függően.
Indítsa újra a virtuális gépet, és ellenőrizze az újraindítást követően
shutdown -r now
lsblk
df -h
A RAID-on-crypt lépései
Most, hogy a mögöttes lemezek titkosítva vannak, továbbra is létrehozhatja a RAID-struktúrákat. A folyamat megegyezik az LVM-hez használt folyamattal, de az eszköznév használata helyett használja az egyes lemezek /dev/mapper elérési útját.
RAID konfigurálása a lemezek titkosított rétegén
mdadm --create /dev/md10 \
--level 0 \
--raid-devices=4 \
/dev/mapper/c49ff535-1df9-45ad-9dad-f0846509f052 \
/dev/mapper/6712ad6f-65ce-487b-aa52-462f381611a1 \
/dev/mapper/ea607dfd-c396-48d6-bc54-603cf741bc2a \
/dev/mapper/4159c60a-a546-455b-985f-92865d51158c
Megjegyzés
Az itt található /dev/mapper/device neveket az lsblk kimenete alapján a tényleges értékekkel kell helyettesíteni.
RAID-létrehozás ellenőrzése/monitorozása
watch -n1 cat /proc/mdstat
mdadm --examine /dev/mapper/[]
mdadm --detail /dev/md10
Fájlrendszer létrehozása az új RAID-eszköz tetején
mkfs.ext4 /dev/md10
Hozzon létre egy új csatlakoztatási pontot a fájlrendszerhez, adja hozzá az új fájlrendszert a /etc/fstab fájlhoz, és csatlakoztassa:
Megjegyzés
Ez a ciklus csak egy eszközön iterál ehhez a példához, így több md-eszközhöz is használható, ha szükséges.
for device in md10; do diskuuid="$(blkid -s UUID -o value /dev/${device})"; \
mkdir /raiddata; \
echo "UUID=${diskuuid} /raiddata ext4 defaults,nofail 0 0" >> /etc/fstab; \
mount -a; \
done
Ellenőrizze, hogy az új fájlrendszer csatlakoztatva van-e:
lsblk -fs
df -h
Fontos, hogy a nofail beállítás hozzá legyen adva az Azure Disk Encryption használatával titkosított eszköz tetején létrehozott RAID-kötetek csatlakoztatási pontbeállításaihoz. Megakadályozza, hogy az operációs rendszer elakadjon a rendszerindítási folyamat során (vagy karbantartási módban).
Ha nem használja a nofail lehetőséget:
- Az operációs rendszer soha nem kerül abba a fázisba, ahol az Azure Disk Encryption elindul, és az adatlemezek zárolása feloldva és csatlakoztatva van.
- A titkosított lemezek zárolása a rendszerindítási folyamat végén lesz feloldva. A RAID-kötetek és fájlrendszerek automatikusan csatlakoztatva lesznek, amíg az Azure Disk Encryption fel nem oldja őket.
Tesztelheti a virtuális gép újraindítását, és ellenőrizheti, hogy a fájlrendszerek a rendszerindítás után is automatikusan csatlakoztatva vannak-e. Ez a folyamat több percet is igénybe vehet a fájlrendszerek számától és méretétől függően.
shutdown -r now
És ha be tud jelentkezni:
lsblk
df -h