Como configurar partições no meu disco de inicialização com o cloud-config?

1

Eu tento inicializar um servidor do Ubuntu 16.04 via cloud-init. Ao inicializar o servidor pela primeira vez, quero criar as seguintes partições:

  • root-fs (sistema de arquivos ext4 do ubuntu)
  • disco de dados (partição formatada xfs)
  • disco de troca (4gb)

quando inicializo a máquina regularmente (sem qualquer cloud-init) tenho um sda e sda1 (acho sda1 é o swap).

  • Alguém pode me ajudar com um exemplo "válido" ou "útil" ou me ajudar a corrigir minha abordagem?

  • Ou é impossível fazer partições no disco em que estou sentado?

btw. meu host é Hetzner

Esta é a minha abordagem atual:

#cloud-config
device_aliases: {'root-disk': '/dev/sda'}
resize_rootfs: true

disk_setup:
  root-disk:
    table_type: 'gpt'
    layout:
      - 75
      - [25, 82]
    overwrite: true

fs_setup:
  - label: root-fs
    device: 'root-disk'
    filesystem: 'ext4'
  - label: data-disk
    device: root-disk
    filesystem: 'xfs'
    
por Jan 27.03.2018 / 22:38

1 resposta

1

Para fechar essa tarefa, posto aqui a minha resposta: Importante saber é que resize_rootfs tem que ser false Eu também acabei usando mbr em vez de gpt apenas porque não consegui descobrir como evoluir com o gpt. Talvez alguém possa postar esse exemplo também.

#cloud-config
resize_rootfs: false

disk_setup:
  /dev/sda:
    table_type: 'mbr'
    layout:
      - 25
      - 75
    overwrite: true

fs_setup:
  - label: root_fs
    filesystem: 'ext4'
    device: /dev/sda
    partition: sda1
    overwrite: true
  - label: data_disk
    filesystem: 'xfs'
    device: /dev/sda
    partition: sda2
    overwrite: true

# now we attach the settings
runcmd:
  - [ partx, --update, /dev/sda ]
  - [ mkfs.xfs, /dev/sda2 ]
  - [ partprobe ]
  - parted /dev/sda set 1 boot on p

mounts:
  - ["/dev/sda1", "/"]
  - ["/dev/sda2", "/data-disk"]
    
por Jan 18.05.2018 / 17:54