zoukankan      html  css  js  c++  java
  • vRO Extend VirtualDisk Workflow

    https://vbombarded.wordpress.com/2015/02/20/vrealize-orchestrator-extend-virtual-disk-workflow/

    var devices = vm.config.hardware.device;
    System.log(devices)
    
    for (i in devices){
        if (devices[i].deviceInfo.label == diskString){
            var disk = devices[i]
            System.log("Disk = " + disk.deviceInfo.label)
        }
    }
    
    var newSizeKB = disk.capacityInKB + (increaseSizeGB * 1024 * 1024)
    System.log("New Size KB = " + newSizeKB)
    
    var spec = new VcVirtualMachineConfigSpec();
    spec.changeVersion = vm.config.changeVersion;
    spec.deviceChange = System.getModule("com.vmware.onyx").array(VcVirtualDeviceConfigSpec, 1);
    spec.deviceChange[0] = new VcVirtualDeviceConfigSpec();
    spec.deviceChange[0].operation = VcVirtualDeviceConfigSpecOperation.edit;
    spec.deviceChange[0].device = new VcVirtualDisk();
    spec.deviceChange[0].device.key = disk.key;
    spec.deviceChange[0].device.deviceInfo = new VcDescription();
    spec.deviceChange[0].device.deviceInfo.label = disk.deviceInfo.label;
    spec.deviceChange[0].device.deviceInfo.summary = disk.deviceInfo.summary;
    spec.deviceChange[0].device.backing = new VcVirtualDiskFlatVer2BackingInfo();
    spec.deviceChange[0].device.backing.fileName = disk.backing.fileName;
    spec.deviceChange[0].device.backing.diskMode = disk.backing.diskMode;
    spec.deviceChange[0].device.backing.split = disk.backing.split;
    spec.deviceChange[0].device.backing.writeThrough = disk.backing.writeThrough;
    spec.deviceChange[0].device.backing.thinProvisioned = disk.backing.thinProvisioned;
    spec.deviceChange[0].device.backing.uuid = disk.backing.uuid;
    spec.deviceChange[0].device.backing.contentId = disk.backing.contentId;
    spec.deviceChange[0].device.backing.digestEnabled = disk.backing.digestEnabled;
    spec.deviceChange[0].device.controllerKey = disk.controllerKey;
    spec.deviceChange[0].device.unitNumber = disk.unitNumber;
    spec.deviceChange[0].device.capacityInKB = newSizeKB;
    spec.deviceChange[0].device.shares = new VcSharesInfo();
    spec.deviceChange[0].device.shares.shares = disk.shares.shares;
    spec.deviceChange[0].device.shares.level = disk.shares.level;
    spec.deviceChange[0].device.storageIOAllocation = new VcStorageIOAllocationInfo();
    spec.deviceChange[0].device.storageIOAllocation.limit = disk.storageIOAllocation.limit;
    spec.deviceChange[0].device.storageIOAllocation.shares = new VcSharesInfo();
    spec.deviceChange[0].device.storageIOAllocation.shares.shares = disk.storageIOAllocation.shares.shares;
    spec.deviceChange[0].device.storageIOAllocation.shares.level = disk.storageIOAllocation.shares.level;
    
    return vm.reconfigVM_Task(spec);
  • 相关阅读:
    正则表达式
    文件上传例子
    如何做好数字化体验管理,了解一下?
    云原生背景下故障演练体系建设的思考与实践—云原生混沌工程系列之指南篇
    OpenKruise v1.0:云原生应用自动化达到新的高峰
    Spring Boot Serverless 实战系列“部署篇” | Mall 应用
    阿里云实时数仓Hologres年度发布,解读数仓新趋势
    基于 ASK + EB 构建容器事件驱动服务
    各位 PHPer,Serverless 正当时
    如何在零停机的情况下迁移 Kubernetes 集群
  • 原文地址:https://www.cnblogs.com/vincenshen/p/9554537.html
Copyright © 2011-2022 走看看