Compartilhar via


Volumes de montagem

Ao especificar um volume, você anexa os dispositivos à sua instância, mas não monta ou formata o dispositivo. Para montar e formatar os volumes quando o nó for iniciado, defina o atributo Mount opcional como o nome da configuração do ponto de montagem que você quer usar com esse volume:

[[[volume reference-data]]]
Size = 100
Mount = data              # The name of the mountpoint to use with this volume

Defina na seção de configuração do nó o ponto de montagem chamado data.

[[[configuration cyclecloud.mounts.data]]]
mountpoint = /mount
fs_type = ext4

Essa configuração configura um cyclecloud.mountpoint nomeado data que usa todos os volumes com Mount = data. Quando você formata este volume com o ext4 sistema de arquivos, ele aparece em /mount.

Dispositivos

Quando você define volumes com um mountpoint atributo, o sistema atribui automaticamente nomes de dispositivo para cada ponto de montagem. No entanto, você pode personalizar um ponto de montagem com seus próprios nomes de dispositivos. Por exemplo:

[[node scheduler]]
  [[[configuration cyclecloud.mounts.data]]]
  mountpoint = /data
  Azure.LUN=0

No Azure, você atribui dispositivos usando LUN (Números de Unidade Lógica).

Na maioria dos casos, o Azure CycleCloud atribui automaticamente dispositivos para você. Especificar dispositivos manualmente é um uso avançado. É útil quando a imagem que você usa no seu nó inclui volumes que a imagem anexa automaticamente. Especificar dispositivos manualmente também é útil quando a ordem dos dispositivos é importante.

Observação

Use o nome boot reservado para modificar o volume de inicialização interno.

Uso avançado

O exemplo anterior é bem simples: montar um único instantâneo pré-formatado em um nó. No entanto, você pode usar técnicas de montagem mais avançadas, incluindo RAIDing vários dispositivos juntos, criptografar dispositivos e formatar novos sistemas de arquivos. Por exemplo, a configuração a seguir reúne vários volumes em RAID e os criptografa antes de montá-los como um único dispositivo em um nó:

[[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"

Este exemplo mostra que você vincula três volumes ao nó nomeado scheduler, e o ponto de montagem deles é nomeado giant. A configuração do ponto de montagem especifica que você deve criar um RAID com esses três volumes usando raid_level = 0 para RAID0, formatá-los usando o sistema de arquivos xfs, e montar o dispositivo resultante em /mnt/giant. Você também usa criptografia de nível de bloco com AES de 256 bits e define a chave de criptografia no modelo.

Criptografia do disco

O CycleCloud dá suporte à SSE (criptografia do lado do servidor) para volumes de sistema operacional e de disco de dados usando conjuntos de criptografia de disco do Azure. O Azure usa Chaves Gerenciadas pela Plataforma (PMK) por padrão. Para usar o CMK ( Chaves Gerenciadas pelo Cliente ), configure um Conjunto de Criptografia de Disco do Azure e um Key Vault com sua chave. Consulte a documentação para configurar o Conjunto de Criptografia de Disco.

Registre o Resource ID do Conjunto de Criptografia de Disco ao criá-lo. Você pode encontrar essa ID no portal do Azure em Propriedades na folha Conjuntos de Criptografia de Disco .

Para aplicar a SSE com o CMK seus volumes do nó do CycleCloud, adicione o seguinte código à sua definição [[[volume]]]:

DiskEncryptionSetId = /subscriptions/$SUBSCRIPTION-ID/resourceGroups/$RESOURCEGROUPNAME/providers/Microsoft.Compute/diskEncryptionSets/$DISK-ENCRYPTION-SET-NAME

Por exemplo:

[[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

Observação

O CycleCloud 8.5 introduziu a sintaxe simplificada. Para versões anteriores, use Azure.Encryption.DiskEncryptionSetId em vez disso:

Azure.Encryption.DiskEncryptionSetId = /subscriptions/$SUBSCRIPTION-ID/resourceGroups/$RESOURCEGROUPNAME/providers/Microsoft.Compute/diskEncryptionSets/$DISK-ENCRYPTION-SET-NAME. Você não precisa definir Azure.Encryption.Type.

O CycleCloud 8.5 também dá suporte à Criptografia de disco confidencial. Esse esquema protege todas as partições críticas do disco e torna o conteúdo protegido acessível apenas à VM. A criptografia de disco confidencial é por disco e exige que o Tipo de Criptografia de Segurança seja definido como .DiskWithVMGuestState

Por exemplo, para usar a criptografia confidencial no disco do sistema operacional:

[[node scheduler]]
  [[[volume boot]]]

  ConfidentialDiskEncryptionSetId = /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResouceGroup/providers/Microsoft.Compute/diskEncryptionSets/myCMKDiskEncryptionSet
  SecurityEncryptionType = DiskWithVMGuestState

Para obter mais informações, consulte a Referência de Configuração de Volume.

Opções de configuração de montagem

Opção Definição
mountpoint O local onde você monta os dispositivos depois de aplicar qualquer configuração extra. Se você não especificar um ponto de montagem, o nome da montagem se tornará parte do ponto de montagem. Por exemplo, se você nomear sua montagem data, o ponto de montagem usará como padrão /media/data.
options Quaisquer opções que não sejam padrão a serem usadas ao montar o dispositivo.
fs_type O sistema de arquivos a ser usado ao formatar e/ou montar. As opções disponíveis são: ext3, ext4, xfs.
size O tamanho do sistema de arquivos a ser criado ao formatar os dispositivos. Se você omitir esse parâmetro, o comando usará todo o espaço no dispositivo. Especifique o tamanho usando M para megabytes (por exemplo, 150M por 150 MB), G para gigabytes (por exemplo, 200G para 20 GB) ou percentuais (por exemplo, 100% para usar todo o espaço disponível).
desabilitado Se for verdadeiro, o ponto de montagem não será criado. Essa configuração é útil para alternar rapidamente montagens para teste e desabilitar a montagem efêmera automática. Padrão: false.
raid_level O tipo de configuração RAID a ser usado quando você usa vários dispositivos ou volumes. O valor padrão é 0, o que significa RAID0. Você pode usar outros níveis RAID, como 1 ou 10.
raid_device_symlink Ao criar um dispositivo RAID, especifique esse atributo para criar um link simbólico para o dispositivo RAID. Por padrão, esse atributo não é definido e nenhum symlink é criado. Defina esse atributo se precisar de acesso ao dispositivo RAID subjacente.
Dispositivos Lista de dispositivos que compõem o ponto de montagem. Em geral, você não precisa especificar esse parâmetro porque o CycleCloud o define para você com base nas seções [[[volume]]]. No entanto, você pode especificar manualmente os dispositivos, se desejar.
vg_name No Linux, você configura dispositivos usando o Gerenciador de Volume Lógico (LVM). O nome do grupo de volumes é atribuído automaticamente, mas você pode definir esse atributo se quiser usar um nome específico. O padrão é cyclecloud-vgX, em que X é um número atribuído automaticamente.
lv_name Os dispositivos são configurados no Linux usando o Gerenciador de Volume Lógico (LVM). O sistema atribui automaticamente esse valor, portanto, você não precisa especificá-lo. Se você quiser usar um nome de volume lógico personalizado, especifique-o com esse atributo. Usa lv0 como padrão.
ordem Ao especificar uma ordem, você pode controlar a ordem em que os pontos de montagem são montados. O valor de ordem padrão para todos os pontos de montagem é 1000, exceto para ephemeral o qual é 0 (ephemeral é sempre montado primeiro por padrão). Você pode substituir esse comportamento conforme necessário.
encryption.bits O número de bits que será usado ao criptografar o sistema de arquivos. Os valores padrão são criptografia AES de 128 ou 256 bits. Você deve fornecer esse valor se quiser criptografia.
encryption.key A chave de criptografia que será usada ao criptografar o sistema de arquivos. Se você omitir essa chave, o sistema gerará uma chave aleatória de 2.048 bits. A chave gerada automaticamente é útil quando você está criptografando discos que não persistem entre reinicializações (por exemplo, ao criptografar dispositivos efêmeros).
encryption.name O nome do sistema de arquivos criptografado, usado ao salvar chaves de criptografia. Padrão: cyclecloud_cryptX, onde X é um número gerado automaticamente.
encryption.key_path O local do arquivo em que a chave é gravada em disco. Padrão: /root/cyclecloud_cryptX.key, onde X é um número gerado automaticamente.

Padrões de configuração de montagem

Use essas opções para definir os padrões do sistema para pontos de montagem. O sistema usa esses padrões, a menos que você especifique o contrário:

Opções Definição
cyclecloud.mount_defaults.fs_type O tipo de sistema de arquivos a ser usado em montagens caso não especifique um. Padrão: ext3 ou ext4, dependendo da plataforma.
cyclecloud.mount_defaults.size O tamanho do sistema de arquivos padrão a ser usado se você não especificar um. Padrão: 50 GB.
cyclecloud.mount_defaults.raid_level O nível de ataque padrão a ser usado se você atribuir vários dispositivos ao ponto de montagem. Padrão: 0 (RAID0).
cyclecloud.mount_defaults.encryption.bits O nível de criptografia padrão se você não especificar um. Padrão: indefinido.