Назад | Перейти на главную страницу

Установка VMware ESXi CentOS 6.4 кикстарт

Я пытался выполнить кикстарт-установку CentOS 6.4, но он всегда показывает мне предупреждение о повторной инициализации жесткого диска, поскольку он может содержать недопустимую таблицу разделов или виртуальный диск. Ниже я добавил снимок файла кикстарта, который я пытаюсь использовать.

# System bootloader configuration
bootloader --append="crashkernel=auto rhgb quiet" --location=mbr --driveorder="sda"
autopart
# Clear the Master Boot Record
zerombr
# Partition clearing information
clearpart --all --initlabel --drives=sda
part /boot --fstype ext4 --size=300
part / --fstype="ext4" --grow --size=1 --asprimary

Даже я создал разделы, чтобы попробовать как обходной путь, но без средства. Есть мысли, как убрать это предупреждение. Я пытаюсь сделать это с помощью Packer-tools для хоста ESXI (имеющего версию 5.5). Ниже представлен шаблон JSON, который я использую.

# cat base-packer.json
{
  "builders": [
    {
      "vm_name": "Centos6.5",
      "type": "vmware-iso",
      "iso_url": "http://127.0.0.1:8000/CentOS-6.5-x86_64-minimal.iso",
      "iso_checksum": "0d9dc37b5dd4befa1c440d2174e88a87",
      "iso_checksum_type": "md5",
      "disk_size": "20480",
      "disk_type_id": "thin",
      "http_directory": "~/packertemplatebuilding",
      "remote_host": "191.168.42.3",
      "remote_datastore": "52dfe32b-a996d262-9b46-2c4138a85a23/Centos6.5",
      "remote_username": "root",
      "remote_password": "rootpass",
      "remote_type": "esx5",
      "ssh_username": "vagrant",
      "ssh_password": "vagrant",
      "ssh_port": 22,
      "ssh_wait_timeout": "250s",
      "shutdown_command": "echo 'vagrant'|sudo -S shutdown -P now",
      "headless": "false",
      "boot_command": [
        "<tab> text ks=http://148.147.206.152:8000/ks_new.cfg<enter><wait>"
      ],
      "boot_wait": "20s",
      "vmx_data": {
        "ethernet0.virtualDev": "vmxnet3",
        "ethernet0.networkName": "VM Network",
        "ethernet0.addressType": "generated",
        "ethernet0.present": "TRUE",
        "ethernet1.virtualDev": "vmxnet3",
        "ethernet1.networkName": "VM Network 2",
        "ethernet1.addressType": "generated",
        "ethernet1.present": "TRUE",
        "ide0:0.fileName": "disk.vmdk",
        "ide0:0.present": "TRUE",
        "ide0:0.redo": "",
        "scsi0:0.present": "FALSE",
        "memsize": "2048",
        "numvcpus": "2",
        "cpuid.coresPerSocket": "1"
      }
    }
  ],
"provisioners": [
    {
      "type": "shell",
      "script": "ssh-commands.sh"
    }
  ]
}

Ниже приведен снимок получаемой мной ошибки.

PS Образ, который я использую, является кастомным от CentOS 6.4. Но я не думаю, что конфигурация кикстарта должна влиять на то же самое.

Если вы получаете сообщение об ошибке, подобное приведенному ниже, в кикстарте EL6, вам необходимо добавить zerombr в набор команд кикстарта.

У вас также должно быть это:

zerombr
clearpart --all --initlabel

Из документация:

zerombr: Если указано zerombr, инициализируются любые недопустимые таблицы разделов, обнаруженные на дисках. Это уничтожает все содержимое дисков с недопустимыми таблицами разделов. Эта команда требуется при выполнении автоматической установки в системе с ранее инициализированными дисками.

Редактировать:

Я только что попробовал это на новой виртуальной машине CentOS EL6.5, работающей на платформе vSphere 5.5 ... Следующее сработало три раза подряд без проблем, включая переустановку на тех же дисках:

zerombr
clearpart --all --initlabel
part /boot --fstype ext4 --size=300
part /usr --fstype ext4 --size=10240 --asprimary
part / --fstype ext4 --size=20480 --asprimary
part /var --fstype ext4 --size=6144
part swap --size=8192
part /tmp --fstype ext4 --size=2048

Я обнаружил потенциальную проблему:

      "iso_url": "http://127.0.0.1:8000/CentOS-6.5-x86_64-minimal.iso",

«Минимальный» диск CentOS настраивается и может делать неожиданные вещи, поскольку он был предназначен и настроен только для установки одного набора пакетов. Его не следует использовать при кикстарт-установке; используйте вместо этого netinstall или образы DVD.

Но, как я уже сказал, ISO вращается с использованием базы CentOS 6.4, и это не должно влиять на установку кикстарта.

Вам необходимо это проверить. Попробуйте со стандартным ISO.


Если он все еще выдает ошибку, вы сказали ему только очистить sda:

# Partition clearing information
clearpart --all --initlabel --drives=sda

Изменить на:

clearpart --all --initlabel

и попробуй еще раз.