# On-Premise

Suitable for clients with on-premise data centers who would like to launch Imagizer in their own environment. Imagizer On-Premise provides flexibility to utilize Imagizer features without changing your current workflow. Support for many virtualization platforms.

Please contact us for more information.

# Getting Started

Nventify will provide a virtual machine disk image in the requested format, typically a VMDK or QCOW2. You must then create a VM from the given disk image. Since creating a VM will depend on the hypervisor, please refer to your hypervisor's documentation. As a guideline, use the following settings when creating the VM.

  • Type: Centos 7 or Redhat (64 bit)
  • CPU: Intel
  • Cores: >= 4
  • Memory: >= 2GB per core
  • Disk Controller: virtio or scsi

TIP

Imagizer will default to a DHCP network. See Cloud Init below for custom networks.

WARNING

The provided VMDK may need to be converted for use on VMWare ESXi. See https://kb.vmware.com/s/article/1028943 (opens new window).

Example QEMU KVM VM creation

virt-install --import --noautoconsole \
    --virt-type=kvm \
    --name imagizer \
    --memory 4096 \
    --vcpus=2 \
    --os-variant=centos7.0 \
    --network=bridge=bridge0,model=virtio \
    --disk path=./imagizer-enterprise-13.1-82.5.qcow2,size=20,bus=virtio

# Cloud Init

Use Cloud Init (opens new window) to configure a custom network or pass Imagizer JSON config.

Imagizer comes with Cloud-init v19.4 installed and supports many different data sources (opens new window). Below is an example of a NoCloud (opens new window) configuration, which can be used with any hypervisor.

TIP

See the Cloud-Init network config documentation (opens new window) for detailed network configs. Imagizer supports the Networking Config Version 1.

# Generate a unique instance id.
echo 'instance-id: i-imagizer1' > meta-data

# Generate a network config.
# The mac address should match your network interface.
# Use lowercase letters!
echo '
version: 1
config:
  - type: physical
    name: eth0
    mac_address: "00:0c:29:81:40:ab"
    subnets:
    - type: static
      address: "192.168.5.45"
      netmask: "255.255.255.0"
      gateway: "192.168.5.1"
  - type: nameserver
    address:
    - "192.168.5.1"
' > network-config

# Optionally, pass some Imagizer JSON config as user data.
# Note: Any non-imagizer config will be ignored.
# See: https://docs.imagizer.com/config_reference/
echo '"backend": "images.example.com"}' > user-data 

# genisoimage may also be used
mkisofs -output seed.iso -volid cidata -joliet -rock {user-data,meta-data,network-config}

WARNING

The instance-id provided (i-imagizer1 above) is what is used to determine if this is “first boot”. So if you are making updates to network-config you will also have to change that or start the disk fresh.

Example QEMU KVM VM creation with Cloud Init

virt-install --import --noautoconsole \
    --virt-type=kvm \
    --name imagizer \
    --memory 4096 \
    --vcpus=2 \
    --os-variant=centos7.0 \
    --network=bridge=bridge0,model=virtio,mac=00:0c:29:81:40:ab \
    --disk path=./imagizer-enterprise-13.1-82.5.qcow2,size=20,bus=virtio \
    --disk path=./seed.iso

#