systemDisk.setSize(systemDisk.getSize() + (memCapa + 1023) / 1024);
systemDisk.setDiskType(DiskType.SYSTEM_DISK);
systemDisk.setSeparable(false);
disks.add(systemDisk);
AllocationType diskAllocType = null;
if (nodeGroup.getStorage().getAllocType() != null) {
diskAllocType =
AllocationType.valueOf(nodeGroup.getStorage().getAllocType());
} else {
// THICK as by default
diskAllocType = AllocationType.THICK;
}
// swap disk
int swapDisk =
(((int) Math.ceil(nodeGroup.getMemCapacityMB()
* nodeGroup.getSwapRatio()) + 1023) / 1024);
disks.add(new DiskSpec(DiskType.SWAP_DISK.getDiskName(), swapDisk, node
.getVmName(), false, DiskType.SWAP_DISK,
DiskScsiControllerType.LSI_CONTROLLER, null, diskAllocType
.toString(), null, null, null));
// data disks
if (!DatastoreType.TEMPFS.name().equalsIgnoreCase(
nodeGroup.getStorage().getType())) {
// no need to add data disk for storage type tempfs
disks.add(new DiskSpec(DiskType.DATA_DISK.getDiskName(), nodeGroup
.getStorage().getSizeGB(), node.getVmName(), true,
DiskType.DATA_DISK, nodeGroup.getStorage().getControllerType(),
nodeGroup.getStorage().getSplitPolicy(), diskAllocType
.toString(), null, null, null));
}
node.setDisks(disks);
// target vm folder