# Срипт для создания нескольких виртуальных машин одновременно. Имеется 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` ### Создание и запуск ```shell git -C /root/ clone https://git.tvstart.ru/dbadovsky/vmcreate.git ``` ```shell cd /root/vmcreate/ ``` ```shell bash gfxcreate.sh ``` **ВНИМАНИЕ! Нельзя закрывать консоль Proxmox до заершения работы скрипта!** Либо отправлять его работу в фоновый режим: ```shell bash vmcreate.sh & ``` Но в этом случае скрипт не будет выводить в консоль свои действия и результат. ### Ключ Публичный ключ вшит в файл `user.yaml`. ### Пакеты, устанавливаемые автоматически - qemu-guest-agent - git - net-tools - python3 - python3-pip - python3-venv В качестве списка используются аргументы либо файл. В случае использования аргументов необходимо передать список 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,