Installazione di volumi
Se si specifica un volume, i dispositivi vengono collegati all'istanza, ma non vengono montati e formattati. Se si preferisce che i volumi siano montati e formattati all'avvio del nodo, impostare l'attributo Mount
facoltativo sul nome della configurazione del punto di montaggio da usare con tale volume:
[[[volume reference-data]]]
Size = 100
Mount = data # The name of the mountpoint to use with this volume
Il punto di montaggio denominato data
viene quindi definito nella sezione di configurazione del nodo:
[[[configuration cyclecloud.mounts.data]]]
mountpoint = /mount
fs_type = ext4
La configurazione precedente specifica che si sta configurando un cyclecloud.mountpoint
oggetto denominato data
usando tutti i volumi che includono Mount = data
. Questo volume verrà formattato con il ext4
file system e verrà visualizzato in /mount
.
Dispositivi
Definendo i volumi con un mountpoint
attributo, i nomi dei dispositivi verranno assegnati automaticamente e usati per un determinato punto di montaggio. Tuttavia, è possibile personalizzare un punto di montaggio con i propri nomi di dispositivo. Ad esempio:
[[node scheduler]]
[[[configuration cyclecloud.mounts.data]]]
mountpoint = /data
Azure.LUN=0
In Azure i dispositivi vengono assegnati usando i numeri di unità logica (LUN)
Nella maggior parte dei casi, Azure CycleCloud assegnerà automaticamente i dispositivi. Specificare i dispositivi manualmente è un utilizzo avanzato e utile nei casi in cui l'immagine usata per il nodo include volumi che verranno collegati automaticamente perché l'allegato è stato inserito nell'immagine. Specificare i dispositivi manualmente può essere utile anche quando l'ordinamento dei dispositivi ha un significato speciale.
Nota
Il nome boot
riservato viene usato per modificare il volume di avvio predefinito.
Utilizzo avanzato
L'esempio precedente era piuttosto semplice: il montaggio di un singolo snapshot preformattato in un nodo. Tuttavia, può essere eseguito un montaggio più avanzato, tra cui l'inserimento di più dispositivi, la crittografia e la formattazione di nuovi file system. Ad esempio, di seguito viene descritto come eseguire raid di diversi volumi e crittografarli prima di montarli come singolo dispositivo in un nodo:
[[node scheduler]]
....
[[[volume vol1]]]
VolumeId = vol-1234abcd
Mount = giant
[[[volume vol2]]]
VolumeId = vol-5678abcd
Mount = giant
[[[volume vol3]]]
VolumeId = vol-abcd1234
Mount = giant
[[[configuration cyclecloud.mounts.giant]]]
mountpoint = /mnt/giant
fs_type = xfs
raid_level = 0
encryption.bits = 256
encryption.key = "0123456789abcdef9876543210"
L'esempio precedente mostra tre volumi che devono essere collegati al nodo denominato scheduler
e che il relativo punto di montaggio è denominato giant
. La configurazione per il punto di montaggio indica che questi tre volumi devono essere raggruppati con RAID usando raid_level = 0
RAID0, formattati usando il xfs
file system e il dispositivo risultante deve essere montato in /mnt/giant
. Il dispositivo deve avere anche la crittografia a livello di blocco usando AES a 256 bit con una chiave di crittografia definita nel modello.
Crittografia dischi
CycleCloud supporta la crittografia lato server per i volumi del sistema operativo e dei dischi dati usando set di crittografia dischi di Azure. Azure usa chiavi gestite dalla piattaforma (PMK) per impostazione predefinita. Tuttavia, per usare chiavi gestite dal cliente , è prima necessario configurare un set di crittografia dischi di Azure e un Key Vault con la chiave. Seguire la documentazione qui per configurare il set di crittografia dischi.
Registrare l'oggetto Resource ID
del set di crittografia dischi al momento della creazione. È possibile trovarla nel portale di Azure in Proprietà nel pannello Set di crittografia dischi .
Per applicare la crittografia del servizio di archiviazione con cmk ai volumi del nodo CycleCloud, aggiungere quanto segue alla [[[volume]]]
definizione:
DiskEncryptionSetId = /subscriptions/$SUBSCRIPTION-ID/resourceGroups/$RESOURCEGROUPNAME/providers/Microsoft.Compute/diskEncryptionSets/$DISK-ENCRYPTION-SET-NAME
Ad esempio:
[[node scheduler]]
....
[[[volume encryptedVolume]]]
VolumeId = vol-1234abcd
Mount = encrypted
# Insert your RESOURCE ID here:
DiskEncryptionSetId = /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResouceGroup/providers/Microsoft.Compute/diskEncryptionSets/myCMKDiskEncryptionSet
[[[configuration cyclecloud.mounts.encrypted]]]
mountpoint = /mnt/encrypted
fs_type = ext4
raid_level = 0
Nota
La sintassi semplificata precedente è stata introdotta in CycleCloud 8.5. Per le versioni precedenti, è invece necessario usare Azure.Encryption.DiskEncryptionSetId
:
Azure.Encryption.DiskEncryptionSetId = /subscriptions/$SUBSCRIPTION-ID/resourceGroups/$RESOURCEGROUPNAME/providers/Microsoft.Compute/diskEncryptionSets/$DISK-ENCRYPTION-SET-NAME
.
Non è tuttavia necessario impostare Azure.Encryption.Type
.
CycleCloud 8.5 supporta anche la crittografia dischi riservati. Questo schema protegge tutte le partizioni critiche del disco e rende il contenuto del disco protetto accessibile solo alla macchina virtuale. La crittografia dischi riservati è per disco e richiede che il tipo di crittografia di sicurezza sia impostato su DiskWithVMGuestState
.
Ad esempio, per usare la crittografia riservata nel disco del sistema operativo:
[[node scheduler]]
[[[volume boot]]]
ConfidentialDiskEncryptionSetId = /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResouceGroup/providers/Microsoft.Compute/diskEncryptionSets/myCMKDiskEncryptionSet
SecurityEncryptionType = DiskWithVMGuestState
Per informazioni dettagliate, vedere Informazioni di riferimento sulla configurazione del volume .
Opzioni di configurazione di montaggio
Opzione | Definizione |
---|---|
Mountpoint | Posizione in cui verranno montati i dispositivi dopo l'applicazione di eventuali configurazioni aggiuntive. Se non viene specificato un punto di montaggio, il nome del montaggio verrà utilizzato come parte del punto di montaggio. Ad esempio, se il montaggio è denominato "data", per impostazione predefinita il punto di montaggio sarà "/media/data". |
opzioni | Tutte le opzioni non predefinite da usare durante il montaggio del dispositivo. |
fs_type | File system da utilizzare per la formattazione e/o il montaggio. Le opzioni disponibili sono: ext3, ext4, xfs. |
size | Dimensioni del file system da creare durante la formattazione dei dispositivi. L'omissione di questo parametro userà tutto lo spazio nel dispositivo. È possibile specificare dimensioni usando M per megabyte (ad esempio 150M per 150 MB) G per gigabyte (ad esempio 200G per 20 GB) o percentuali (ad esempio, 100% per usare tutto lo spazio disponibile). |
disabled | Se true, il punto di montaggio non verrà creato. Utile per attivare o disattivare i montaggi automatici per i test e per disabilitare il montaggio temporaneo automatico. Valore predefinito: false. |
raid_level | Tipo di configurazione RAID da usare quando vengono usati più dispositivi/volumi. Il valore predefinito è 0, ovvero RAID0, ma è possibile usare altri livelli raid, ad esempio 1 o 10. |
raid_device_symlink | Quando viene creato un dispositivo raid, specificando questo attributo verrà creato un collegamento simbolico al dispositivo raid. Per impostazione predefinita, questo attributo non è impostato e pertanto non viene creato alcun collegamento simbolico. Questa impostazione deve essere impostata nei casi in cui è necessario accedere al dispositivo raid sottostante. |
devices | Questo è un elenco di dispositivi che devono comporre il punto di montaggio. In generale, questo parametro non deve essere specificato (poiché CycleCloud lo imposterà in base alle sezioni [[volume]]]), ma è possibile specificare manualmente i dispositivi, se necessario. |
vg_name | I dispositivi vengono configurati in Linux usando Gestione volumi logici (LVM). Il nome del gruppo di volumi verrà assegnato automaticamente, ma nei casi in cui viene usato un nome specifico, è possibile impostare questo attributo. Il valore predefinito è impostato su cyclecloud-vgX , dove X è un numero assegnato automaticamente. |
lv_name | I dispositivi vengono configurati in Linux usando Gestione volumi logici (LVM). Questo valore viene assegnato automaticamente e non richiede specifiche, ma se si vuole usare un nome di volume logico personalizzato, è possibile specificarlo usando questo attributo. Il valore predefinito è lv0 . |
order | Specificando un ordine, è possibile controllare l'ordine in cui vengono montati i punti di montaggio. Il valore predefinito dell'ordine per tutti i punti di montaggio è 1000, ad eccezione di 'effimero' che è 0 (l'effimero viene sempre montato per impostazione predefinita). È possibile ignorare questo comportamento caso per caso in base alle esigenze. |
encryption.bits | Numero di bit da utilizzare durante la crittografia del file system. I valori standard sono 128 o 256 bit crittografia AES. Questo valore è obbligatorio se si desidera la crittografia. |
encryption.key | Chiave di crittografia da usare per crittografare il file system. Se omesso, verrà generata una chiave a 2048 bit casuale. La chiave generata automaticamente è utile quando si crittografano i dischi che non vengono mantenuti tra i riavvii (ad esempio, la crittografia di dispositivi temporanei). |
encryption.name | Nome del file system crittografato, utilizzato durante il salvataggio delle chiavi di crittografia.
cyclecloud_cryptX Il valore predefinito è , dove X è un numero generato automaticamente. |
encryption.key_path | Il percorso del file in cui verrà scritta la chiave sul disco.
/root/cyclecloud_cryptX.key Il valore predefinito è , dove X è un numero generato automaticamente. |
Impostazioni predefinite della configurazione di montaggio
Usare queste opzioni per impostare le impostazioni predefinite di sistema per i punti di montaggio, che verranno usati a meno che non sia specificato altrimenti:
Opzioni | Definizione |
---|---|
cyclecloud.mount_defaults.fs_type | Tipo di file system da usare per i montaggi, se non specificato in caso contrario. Impostazione predefinita: ext3/ext4 (a seconda della piattaforma). |
cyclecloud.mount_defaults.size | Dimensioni predefinite del file system da usare, se non specificato in caso contrario. Impostazione predefinita: 50 GB. |
cyclecloud.mount_defaults.raid_level | Livello raid predefinito da usare se più dispositivi vengono assegnati al punto di montaggio. Impostazione predefinita: 0 (RAID0). |
cyclecloud.mount_defaults.encryption.bits | Livello di crittografia predefinito, a meno che non sia specificato in caso contrario. Impostazione predefinita: non definita. |