Handle Permissions in vCenter with vCO Workflow

Hello

I'm changing the permissions of users and roles in vCenter with workflows.

For example, I want to copy permissions from one folder to another. I found the correct object and method: VcAuthorizationManager.setEntityPermissions ().

The problem is that I can't find a way to access the Manager. AuthorisationManager is access through the content property of the ServiceContent object and this object is returned by the method "RetrieveServiceInstance" according to the documentation: http://www.vmware.com/support/developer/vc-sdk/visdk400pubs/ReferenceGuide/vim.ServiceInstanceContent.html#field_detail ".

How to call this process? The documentation makes no sense to me because there is no object ServiceInstance in vCO and the ServiceContent object has none of these methods.

I have an example on how to use these objects.

Thank you

Irene

Hi Irene

You can use the SdkConnection.authorizationManager (that represents the permissions for you handler vCenter)

SdkConnection represents a connection to a specific Server vCenter server. You can get all SdkConnection for vCenter servers registered using VcPlugin.allSdkConnections. (VcPlugin is an object that contains a script with static methods)

Hope this helps.

Tags: VMware

Similar Questions

  • Remove objects from the AD when a virtual machine is removed from the vCenter with vCO

    All,

    I am new to vCenter Orchestrator and have bad getting started with him.  I'm trying to figure out how to automatically remove the Active Directory from the computer object when it is deleted in vCenter.  My idea is when the virtual machine is removed, it starts a workflow that deletes the object.  I don't know how to call that or if it is still possible.

    The problem I am trying to solve, is that our developers are self provisioning of servers Windows and Linux through vCAC in the realm of 50 + per day.  They also remove most of them in 5 or 6 days causing much left on objects cluttering up AD.   So I try to find a way to have the deleted object when they destroy their vCAC provisioned machines.  My original idea was to make based on the GUID and UUID but I not figure out how to actually call with vRO.  I'm open to other ideas that can adapt to this task better, no need to force this idea of the solution to the problem if someone already knows a way to do that.

    Little background information is that I'm under vCenter 5.5 Update 2, 6.1 and vCO 5.5.2 vCAC.  The objects being deleted are Windows 2008 R2, Windows 2012 R2 and CentOS 6.5 servers.

    Thank you in advance, I think that once I get more of an idea on how it works, I'll be able to deploy more ideas.

    This can be achieved by simply adding following some custom properties in your Machine Blueprint or group of companies in VCAC.

    Plugin.AdMachineCleanup.UserName-

    Plugin.AdMachineCleanup.Password-

    Plugin.AdMachineCleanup.Execute

    Plugin.AdMachineCleanup.Delete

    Otherwise, create a profile to build using above set of custom properties, this way it will be easy for you to add in several plans in your environment vCAC.

  • Permissions in vCenter AD during the upgrade with SSO

    I have an existing vCenter 4.1 with many existing permissions based on AD users and groups, which is member of a domain that trusts the domain where users and groups reside. As a result, SSO Setup does not add the trusted domain as a Source of identity during installation, only the domain of the server vCenter himself. Nobody knows what will happen to the existing permissions in vCenter during an upgrade? If not, is it possible to connect SSO before vCenter is updated and add the AD domain approved as a source of identity?

    Thank you

    John

    What I've been through, if users/groups defined in 4.1 installation are not in the defined identity sources, they will be deleted (the installation program creates a file deleted_vc_users with a list of these users that you can then view them later) from the database.

    After installing SSO, install the Web Client and use it to manually add your domain (s) and then go back and install the other components.

    http://KB.VMware.com/selfservice/documentLinkInt.do?micrositeID=&popup=true&LanguageID=&externalID=2034374

  • VCo workflow to clone a virtual machine of centos. Network interface problem

    Hello

    I use vco workflows to clone a virtual machine of vcenter. The virtual machine is running centos 6.0. When cloning is complete. I see the network eth0 and eth1 interfaces set correctly the static gateway ip and address information I provided. I deleted the 70 - persistent - net .rules on the basic vm form which I clone. So, I get the correct interface names. But when vm powers on and I run "ifconfig eth0" I don't see the IP address of this interface has all the details.  same for the other interface also.

    But if I do a system restart network without changes to networking and then do an ifconfig I see the IP with the previous information.   I don't know why the service network restart is necessary so that he can recognize the ip address.

    Any ideas what I could do wrong. or to avoid this manual step of the execution of the service network restart command on the creation of the vm.

    Thank you

    Kiran

    Yes I'm restarting after after the application of customization.

    Has been able to solve the problem... In CentOS, the network service does not work by default. This is why it does not have network interfaces at startup. So now the machine instant, I started the network services and stop the Network Manager service

    using chkconfig network on

    chkconfig NetworkManager off

    and then cloned from this virtual machine... and apply the customization settings. during the start now it shows the interfaces properly without needing a service restart

  • vCO workflow: create a virtual machine from a model and then ask the user about the CPU, memory size...

    Hi guys,.

    I am trying to create a workflow with vCO that can do the job for me:

    -Create a virtual machine (or maybe a several virtual machines) from a model (the model is in vCenter, of course)

    -L' user who is running the workflow has the thr right to say what he wants for the CPU, the memorysize, the disksize

    Any help?

    I found some workflows in the library can seem to do something similar to what I want, but since I'm a beginner I'd rather have your advice

    Hello there and welcome to vCenter Orchestrator

    Take a look at this series of tutorials to get an idea of how start:

    Create a vCO simple self-service VM Provisioning Portal - part 1

    Create a vCO simple self-service VM Provisioning Portal - part 2

    Create a Simple Self Service VM Provisioning Portal vCO - part 3

    The general approach to take would be to determine which of the clone (or clone and customize) workflows adapts to your nearest need (see your customer vCO: workflows\Library\vCenter\Virtual Machine management\Clone\)

    Then, create a NEW WORKFLOW that calls this one... after that your clone operation is complete, keep the computer turned off virtual and add feeds of extra work from the library to your new workflow that do things like change the amount of Ram, adds disks, change CPU, etc...

    Be sure to watch the videos on http://www.vmwarelearning.com/orchestrator to get a basic understanding of the use of vCO.

  • VMSnapshot age VCO Workflow

    I'm deleting snapshots of a certain age in a certain folder via a VCO workflow. I watched the workflow that comes standard with the library and other examples. Comes with those that they loop through every snapshot of each VM in each folder. In my environment that is literally thousands of snapshots (snapshots are used incorrectly in this environment - but that's another story for another forum) and it takes a lot of time to go through loops. My workflow now crosses all virtual machines in a specifc VC:VMFolder and gets all the VC:VirtualMachineSnapshot object for each virtual computer. I need a way to find the age of individuals VC:VirtualMachineSnapshot. Y at - it an easy/fast way to do it rather than brute force through each snapshot in the system?


    created var = thisSnapshot.creationTime ();? It would be great.

    Thank you all.

    By using com.vmware.library.vc.vm.snapshot.getAllSnapshotsOfVM () as a base action script code, here's how to enumerate all the snapshots of your virtual machine and print their identity papers and the moment where they have been taken:

    // 'vm' is the input parameter - the virtual machine object
    var snapshots = new Array();
    if (vm.snapshot) {
        var snapshotTrees = vm.snapshot.rootSnapshotList;
        for (i in snapshotTrees) {
            getSnapshotsOfVM(snapshotTrees[i]);
        }
    }
    
    function getSnapshotsOfVM(tree) {
        snapshots.push([tree.snapshot, tree.createTime]); // store a tupple of the snapshot and its creation time
        var trees = tree.childSnapshotList;
        if (trees != null) {
            for (index in trees) {
                if (trees[index] != null)
                    getSnapshotsOfVM(trees[index]);
            }
        }
    }
    
    // Print the results
    for each (var s in snapshots) {
        System.log("Snapshot: '" + s[0].id + "' created on: '" + s[1] + "'");
    }
    

    If you do not want to collect the creation time for all snapshots of your virtual machine, but the only moment in the creation of a given snapshot, then just add a single cheque to add line 11 to compare the attribute id of your snapshot with the attribute id of the snapshot processing tree.snapshot.

  • Basic operations with vCO

    Hi all

    Our team of db generates a txt file and I have this zip file and send a few ftp site... This recurring transaction and I repeat every day.

    I need a workflow to move the file, copy the file, zip file, and send to the ftp site...
    Is possible this operation with vco...

    Thank you

    I see quite a few ways that you can do with vCO.  In my environment, we use vCO installed on windows hosts.  Windows hosts where is installed the vCO slightly contain other software we have created wrappers around workflow.  Among the software we have created wrappers of vco for various windows of the cli-based the eggs/ovf VMwares management tools, commands Windows AD, etc..  You can very easily run local commands that could be batch, or powershell scripts that you created.  We wrap also tricks of powershell.  If you have the device or a linux-based install of course you will need to shell script or whatever you prefer in this environment.

    There is also the ssh plugin we use pretty heavily in our environment for various tasks.  I have a general purpose host script to make calls to various utils, we have developed in-house and based on linux cli for a few different packaging products.

    There is also another great utility which is posted here as a bunch of comments script manager to run scripts on a virtual machine.  We use this a little utility for new deployments and other configuration after commissioning management tasks.

    You will also find this vCO has capabilities of management very simple file so if you just need to move files or open one up a process you can do if the text or xml.

    I hope this helps. Don't forget there are also REST and SOAP plugin to take advantage of all the products that have one of these APIs.

    Paul

  • Blog post "vCO Workflow to automate certificate generation process.

    In this post we'll take a look in a workflow that can help to automate the generation of certificate. Certificates that are generated from the vCO/vRO workflow are standard certificates that can be used with the VMware products or for any other use or software. Here are some files that can be produced by the workflow

    file Setup - openssl.cfg - OpenSSL

    -rui.crt - CRT certificate

    -rui.csr - Certificate Signing Request.

    certificate - rui.key - private key from an individual (PEM formatted)

    -rui.p12 - PKCS12 package containing the private key and CRT.

    -rui.p7b - PKCS7 package containing CRT

    -rui.pem - PEM certificate with the private key

    -rui orig.key - private key of a specific certificate


    Most aspects of certificate and properties, such as subject alternative names (SAN) are customizable during execution.

    We will take a peek into little opportunities that offer the workflow in this package:

    Use case 1: create the certificate request file - in the first use case, we will use the workflow in the package to create the certificate request (.) CSR file). This file can then be used by administrators to generate an internal enterprise CA certificate form or send to external public certificate authorities that will generate the certificate instead.

    Use case 2: convert a certificate in the PEM - in the second case, we will use the workflow in the package to convert an existing certificate. Certificate PEM. Let's say that you have received a certificate, you must use on your device to VMware. To use this certificate, you must convert to PEM Format to be used by the device. It can be a certificate .cer or a PKCS12 (P12) or the PKCS7 (P7B) certificate package containing the certificate.

    Use case 3: using the "generate certificate: WF to automate the end-to-end process - in the third case we will use a workflow to automate the process of generation of certificate to - end of use.» Since the creation of the OpenSSL configuration file, create a certificate request file, this submission to a certification authority, on receipt of the generated certificate, converting to usable Linux PEM format and finally export the certificate package.


    Best regards

    Kaloferov spas

    ... and here is the link

    vCO Workflow to automate certificate generation process

    vCO Workflow to automate certificate generation process. Kaloferov spas & #039; s Blog

    BR, Spas

  • How to obtain the list of the vCAC host attached to the VCO in the VCO workflow

    Is it possible to get a list of all host vCAC attached to vCenter Orchestrator in the VCO workflow?

    Yes:

    vcacHosts = Server.findAllForType("VCACCAFE:VCACHost");
    
  • Different Dates expires in overview of the order of the day and display detailed elements having extended the term of the lease (through the vCO Workflow)

    Hello

    I have two different points of view for the field due Date for a virtual machine.

    In the Overview of the agenda , I have the correct expires date of (in DB) as you can see in photo 1.

    Photo 2 shows the detailed view of the elements that one here is a date old expires before I extended the lease on this point.

    I extend the term of the lease without the vCAC process "extend Lease Time.

    I created a workflow to allow only 30 days to expand and write directly through the entity Expiration Date in the DB.

    Is there another DB-field to be updated with the new Expiredate?

    Is this a mistake?

    expires01.PNG

    expires02.PNG

    I solved this by myself once I discovered how this view of retail.

    See the solution here http://vautomate.wordpress.com/2014/04/17/extend-leasetime-in-vcac-with-vco/

  • Create a tree of directories VMS in vCenter (with file check)

    Hello

    I continued with this workflow to create a directory of folder VM on vCenter.  I'm having a problem with the function, on the:

    var found = subfolders.indexOf(folderName);
            if (found == -1) {
                System.log("Building folder " + folderName);
                var newFolder = parentFolderObj.createFolder(folderName);
                System.log("Built directory: " + folderName);
                return newFolder;
                }
            else {
                return;
                }
            }
    

    If the folder does not exist, the script runs as expected and creates the directory correctly.  When the folder does not exist, I want to ignore and move on to the next value.  The error message I get is:

    [18:16:18.782 2013-07-03] [I] subfolder name: Prod
    [18:16:18.784 2013-07-03] [I] subfolder name: UAT
    [18:16:18.786 2013-07-03] [I] subfolder name: DMZ
    [18:16:18.788 2013-07-03] [I] subfolder name: Dev
    [18:16:18.790 2013-07-03] [I] allSubFolders table: Prod, UAT, DMZ, Dev
    [18:16:18.792 2013-07-03] [I] Dev folder already exist. Continue with the order of the day
    [18:16:18.794 2013-07-03] [I] TypeError: cannot read property 'childEntity' of undefined (Workflow: TEST_TNG_New_Site_Folder_Structure / BuildFolderTree (item2) #54)

    Here's the complete code:

    //////////////////////////////////////////////////////////////////////////////
    // CODE: Javascript                                                            //
    // TITLE: BuildFolderTree                                                    //
    // AUTHOR: Brandt Winchell                                                    //
    // COLLABORATOR: robrtb12                                                    //
    // VERSION: 2.0                                                                //
    // DATE MODIFIED: July 3, 2013                                                //
    // PURPOSE:  Build a directory tree in vCenter VM & Template section        //
    // ADDITIONAL INFO: !!Root folder must be created manually before            //
    // running this code!!                                                        //
    //////////////////////////////////////////////////////////////////////////////
    
    //////////////////////////////////////////////////////////////////////////////
    // DECLARE VARIABLES
    var folderBase = ["Dev","DMZ","Prod","UAT"];//base folders
    var folderT1 = ["Servers","Workstations"]; //sub-folders of $folderBase
    var folderT2 = ["Windows","Linux"]; //sub-folders of $folderT1
    var folderT3 = ["Repo1","Repo2","Repo3","Repo4"]; //sub-folders of $folderT2
    var folderT4 = ["T1","T2","T3"]; //sub-folder of $folderT3
    //////////////////////////////////////////////////////////////////////////////
    // GLOBAL EXCEPTION CATCH FOR NULL INPUT VARIABLES
    if (parentFolder == null) {
        throw "REFERENCE ERROR: $parentFolder IS NULL!!";
        }
    //////////////////////////////////////////////////////////////////////////////
    // BUILD THE DIRECTORY TREE
    // create the $folderBase level of directory
    for (var a=0; a<folderBase.length; a++) {
        var newBaseFolder = buildFolderTree(parentFolder, folderBase[a]);
        var parentFolderObj = newBaseFolder;
          // Create the $folderT1 level of folders
        for (var b=0; b<folderT1.length; b++) {
               var newT1Folder = buildFolderTree(newBaseFolder, folderT1[b]);
            var parentFolderObj = newT1Folder;
            // Create the $folderT2 level of folders
            for (var c=0; c<folderT2.length; c++) {
                var newT2Folder = buildFolderTree(newT1Folder, folderT2[c]);
                var parentFolderObj = newT2Folder;
                // Create the $folderT3 level of folders
                  for (var d=0; d<folderT3.length; d++) {
                       var newT3Folder = buildFolderTree(newT2Folder, folderT3[d]);
                    var parentFolderObj = newT3Folder;
                    // Create the $folderT4 level of folders
                    for (var e=0; e<folderT4.length; e++) {
                         var newT4Folder = buildFolderTree(newT3Folder, folderT4[e]);
                        }
                      }
                } 
              }
        }
    //////////////////////////////////////////////////////////////////////////////
    // BUILD FUNCTION $buildFolderTree
    function buildFolderTree(parentFolderObj, folderName) {
        //Get a list of sublfolders
        var children = parentFolderObj.childEntity;;
        var allSubFolders = new Array();
        for (var i in children) {
            if (children[i] instanceof VcFolder) {
                var subfolderParent = children[i];
                var subName = subfolderParent.name; //Get only the folder name
                System.log("subfolder Name: " + subName);
                allSubFolders.push(subName); //Create an array of all subfolder names
                }
            }
            System.log("allSubFolders array: " + allSubFolders);
        //Create folder if the folder does not already exists
        var found = allSubFolders.indexOf(folderName); //Does $folderName exists in array.  False = -1
            if (found != -1) {
                System.log("Folder " + folderName + " already exists. Continue with next item");
                return;
                }
            if (found == -1) {
                System.log("Building folder " + folderName);
                var newFolder = parentFolderObj.createFolder(folderName);
                System.log("Built directory: " + parentFolderObj.name + "/" + folderName);
                return newFolder;
                }
            }
    //////////////////////////////////////////////////////////////////////////////
    

    Fact the kata of Workflow:

    You can find the new version so far best below...

    See you soon,.

    Joerg

    //////////////////////////////////////////////////////////////////////////////
    // BUILD FUNCTION $buildFolderTree
    function buildFolderTree(parentFolderObj, folderName) {
      //Get a list of sublfolders
      var children = parentFolderObj.childEntity;;
      var allSubFolders = new Properties();
      for (var i in children) {
      if (children[i] instanceof VcFolder) {
      var subfolderParent = children[i];
      var subName = subfolderParent.name; //Get only the folder name
      System.log("subfolder Name: " + subName);
      allSubFolders.put(subName,subfolderParent); //Create an array of all subfolder names
      }
      }
      System.log("allSubFolders array: " + allSubFolders);
      //Create folder if the folder does not already exists
      var found = allSubFolders.keys.indexOf(folderName); //Does $folderName exists in array.  False = -1
      if (found != -1) {
      System.log("Folder " + folderName + " already exists. Continue with next item");
      return allSubFolders.get(folderName);
      }
      if (found == -1) {
      System.log("Building folder " + folderName);
      var newFolder = parentFolderObj.createFolder(folderName);
      System.log("Built directory: " + parentFolderObj.name + "/" + folderName);
      return newFolder;
      }
      }
    //////////////////////////////////////////////////////////////////////////////
    
  • POST CURL with vCO 5.1 REST API

    I am trying to invoke a vco workflow by using the 5.1 REST API through curl. I could do GET without any issue; but POST always gives me the 400 bad request error below. I want to use json instead of xml, so I passed in "Content-Type: application/json". I am using windows curl.

    Initially I tried to create a settings file to json with "-d @filename"; It gives the same error.

    If someone could tell what is wrong with my syntax? Thank you.

    curl-i k - vcoadmin:vcoadmin of the user x POST h ' Content-Type: application / json ' https://192.168.1.7:8281 / api/stream/dec0e608 - 8 b 8
    3 4e32-8825-3e77ef31c4d7/presentation/instances - d '{} '.

    HTTP/1.1 400 Bad Request
    Content-Type: text/html; charset = utf-8

    Content-Length: 965
    Date: Tuesday, March 5, 2013 02:31:19 GMT
    Connection: close
    Server: vCO Server

    < html > < head > < title > JBossWeb/2.0.1.GA - error report < / title > < style > <!-H1 {make-f
    amily:Tahoma, Arial, without serif; color: white; background-color: # 525-76; font-size: 22 p
    x ;} H2 {do-family: Tahoma, Arial, without serif; color: white; background-color: # 525 76}
    do-size: 16px ;} H3 {do-family: Tahoma, Arial, without serif; color: white; background}
    -color: # 525 76; do-size: 14px ;} BODY {do-family: Tahoma, Arial, without serif; color:}
    Black; background-color: white ;} B {do-family: Tahoma, Arial, without serif; color: whit}
    e; background-color: # 525 76 ;} P {do-family: Tahoma, Arial, without serif; background: w}
    Hite; color: black; do-size: 12px ;} A {color: black ;}} B.SID {color: black ;}} HR {co
    Lor: # 525 76 ;} --> < / style > < / head > < body > < h1 > State HTTP 400 - < / h1 > < HR size = "1".
    NoShade = "noshade" > < p > < b > enter < /b > < /p > < p > < b > report message < /b > < u > < / u > < / p > <
    p > < b > description < /b > < u > the request sent by the client was syntactically incorr
    (CT). < /u > < /p > < HR size = "1" noshade "noshade" = > < h3 JBossWeb/2.0.1.GA > < / h3 > < body / > < /.
    HTML >

    Hi jiang.

    Could you try without the quotes around the parameter d data?

    curl-i k - vcoadmin:vcoadmin of the user x POST h ' Content-Type: application / json ' https://192.168.1.7:8281 / api/stream/dec0e608 - 8 b 8
    3 4e32-8825-3e77ef31c4d7/presentation/instances - d {}

    -Ilian

  • Get the answer from a url - vCO workflow

    Hello

    Is possible to get the answer to a url if a vCO workflow? I want to check the status of keepalive on a Web server to see if the instance is running or not. All I want is to hit the url, say ""https://webserverfqdn:port/keepalive.html/"and analysis the answer to understand the Web server is running." I don't want SSH to the Server Web query status. It is very before starlight in javascript using xmlHTTPRequest. But, how can I do this using vRO?

    Thank you

    Here you go:

    var website = new URL("https://webserverfqdn:port/keepalive.html");
    var content = website.getContent();
    

    Now 'content' is a string that contains your Web site content that you can now analyze as you wish.

  • vCAC 6 - How to add users to a group of commissioning of a vCO workflow?

    I'm trying to drop users into roles in a group of Provisioning (Business Group) in a vCO workflow. Does anyone have advice on how I can achieve this?

    I'm already reading/add/update custom fields, but the action of logEntityDetails() shows not all entries under 'Complex properties', users.

    Examples of VMware how to create PG, but not how to add users.

    Just to answer my own question, since I posted it the vCAC 6.0.1 for vCO plugin was released, which introduced a whole new bunch of features through vCACCAFE, including the manipulation of Provisioning groups (company) members.

  • Best practice help to spend again vCenter with linked Clones

    Hello everyone

    I searched for days, but couldn't find a way clear of hover over our view 5.2 installation of a new vCenter.  The equipment was aging, and we decided to upgrade and move to 5.5.

    We have rebuilt and forwarded via our guests not VDI to the new vCenter 5.5 environment. I found a few documents, but nothing that tells us if it can be done actually.

    We tried to go in the service of the composer initially to the new instance of vCenter and maintenance, we do the DB on the old Victoria Cross, if it worked I émigrerait the DB above the new Victoria Cross

    We first tried these steps however VMware Documentation Library after removing the old VC service composer and installed on VC New (with ODBC connections mapped to the old VC) it wouldn't work.  We were moving to the VC 5.1 leaving guests ESXi running VDI attached to 5.1

    Then I did more research and discovered the related clones are all related to the database of the old VC and moving them is not possible per this KB KB VMware: workstations managed by moving between servers view vCenter is not supported

    I saw an article here that suggested dumping a bunch of DB and rebuild the new VC with the same name and IP address, but I can't do so because the new instance is already upwards and on a new host name / IP migrate view VCenter (with linked Clones) to new hardware

    I also found this where someone is in the same boat and suggested to recreate pools.  The discussion is not in the details so I wonder if someone can clarify this: migration View Composer and vCenter

    I have about 20 people on VDI in a combination of clones using 3 connected pools and personal drives.  Given that all the info from linked clone was linked to the former base of VC, it doesn't seem wise to move it to the wire.  This would be possible: I still have the base image with all the snapshots for each pool.

    • Persistent backup drives
    • Note the configuration of each pool
    • Disable the commissioning
    • Create DB on VC 55 composer vacuum
    • Create the ODBC connection for composer on VC 55
    • **
    • Do more ESXi hosts to 55 VC
    • Remove existing VMs (will be not able to connect to them at this point anyway)
    • Remove the old VC entry admin view / delete existing pools
    • Install the composer on 55, and then tap new ODBC
    • Create new instance vCenter in Admin 55-pointing mode
    • Recreate pools
    • Import and attach persistent disks (http://pubs.vmware.com/view-50/index.jsp?topic=/com.vmware.view.administration.doc/GUID-BDFCCEC8-682F-4421-8810-06108CBE8D20.html)
    • Recreate events empty DB on 55
    • Reconfigure the parameter DB events in Admin mode

    Any help would be greatly appreciated as I can't find an exact way to do

    Well, I'm pleased to say it worked! I had a few problems by removing existing pools. View repeated deletion but nothing happened. In the end I had to use ADSIedit to connect to the server to manually remove all the old discs VM and pool

    After the installation of the composer on the VC 5.5, I was able to create a login in admin mode and then start to re - create the pools.

    We were able to successfully reattach each disc persistent owners planned.  Did some spot checks and desktop users, bookmarks etc. all worked

    It is a tedious process, but it does not work. I hope that VMware can create an article for it.  God knows that I searched for days, I had to read a lot of things just for this plan.

Maybe you are looking for