Files
vmcreate/README1.md
2025-10-28 08:48:37 +00:00

2.7 KiB
Raw Blame History

Срипт для создания нескольких виртуальных машин одновременно.

Имеется 2 версии скрипта: универсальный vmcreate.sh и специальный для gfx-машин Юры gfxcheate.sh

#№ GFX-скрипт Скрипт парсит файл gfx_hosts создаёт и запускает на кластере виртуальные машины с заданным IP и hostname в 35 сети.

Синтаксис: ip-адрес, точка с запятой, hostname.

  • XXX.XXX.XXX.XX1;HOSTNAME1
  • XXX.XXX.XXX.XX2;HOSTNAME2

VMID формируется на основе последних двух октетов IP адреса, пример для ip=10.10.35.21 > VMID=3521

Создание и запуск

git -C /root/ clone https://git.tvstart.ru/dbadovsky/vmcreate.git
cd /root/vmcreate/
bash gfxcreate.sh

ВНИМАНИЕ! Нельзя закрывать консоль Proxmox до заершения работы скрипта! Либо отправлять его работу в фоновый режим:

bash vmcreate.sh &

Но в этом случае скрипт не будет выводить в консоль свои действия и результат.

Ключ

Публичный ключ вшит в файл gfx.yaml.

Пакеты, устанавливаемые автоматически

  • qemu-guest-agent
  • git
  • net-tools
  • python3
  • python3-pip
  • python3-venv

Также в gfx.yaml вшита команда, которая подтягивает и разворачивает python-скрипт Юры.

В качестве списка используются аргументы либо файл. В случае использования аргументов необходимо передать список IPv4-адресов в диапазоне 10.10.0.0/16.

bash vmcreate 10.10.MMM.XXX 10.10.NNN.YYY

В этом случае имена хостов сгенерируются автоматически. Например, для 10.10.35.99, hostname="vm035099". Либо передать с флагом -h файл со списком в следующем формате:

10.10.MMM.XXX hostnameX
10.10.NNN.YYY hostnameY

В этом случае имена хостов будут браться из второго столбца. Если флаг -f присутствует, но файл не указан, скрипт будет использовать файл ./hosts. VMID созданных ВМ также будет сгенегирован автоматически. Например для 10.10.35.99,