You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

42 lines
2.0 KiB

2 years ago
# Geco-cloudbase-init
2 years ago
2 years ago
This is a Proxmox patch that allows us to use Cloudbase-init with windows hosts.
What can you do with this patch?
Use Cloudbase-Init with Windows VMs to:
* Create a new user with username or enable administrator.
* Set a password on the new user or administrator.
* Set static ip or dhcp on network adapters.
* Set machine hostname.
* Insert public ssh keys to "user/.ssh/authorized_keys" file of created/enabled user.
* Expand partition volumes automatically when there's a resized disk.
You can do all below on system startup with the data provided by the cloud-init section of the proxmox gui.
There is two files that we need to modify Qemu.pm and Cloudinit.pm.
* Qemu.pm to get password as cleartext in meta_data drive when it is a Windows VM.
* Cloudinit.pm to generate a metadata json file with variables that are compatible with Cloudbase-Init.
2 years ago
If you want to apply the patch manually you can follow these steps: [Manual Patching](https://git.geco-it.net/c.soylu/Geco-cloudbase-init/src/branch/master/MANUALPATCH.md)
2 years ago
## Scripts
We have two scripts that do some fonctionality that we needed; enabling administrator user and enabling dhcp
You need to move those scripts into Cloudbase Solutions\Cloudbase-Init\LocalScripts\ in your program files.
## Powershell Script
This powershell script has a few uses.
* Deletes the "cloudbase-init" user, delegates "cloudbase-init" service to local Systeme user and modifies execution path of the script also to use local system user.
* Installs OpenSSH-Server from optional features of Windows.
* Removes a store language package that causes an error when generelazing for sysprep.
You need to run this script after installing Cloudbase-Init Continous Build. We need continous build to use Username fonctionality of openstack service.
When everythin is installed simply run below in powershell to launch sysprep:
```
cd C:\Program Files\Cloudbase Solutions\Cloudbase-Init\conf
C:\Windows\System32\sysprep\sysprep.exe /generalize /oobe /unattend:Unattend.xml
```