Nodes as VMs in VMAN and ICMP nodes

We would like to know when a VM monitored through VMAN is not accessible. Since we couldn't find a good metric for this via vCenter, we are going to setup all the nodes and poll them via ICMP. 

I have the PowerShell code to add the nodes from a CSV file. (I've still been doing this one at a time to troubleshoot.) After viewing the node in the Web console the Node Details section is empty. If I click on "Edit Node" and then change the Node Category to "Server," then the Node Details section is displayed. (I don't know if this is important or not, should I even care?)

I would like to set the category to be "server" through the SDK. Is there a way to do that?

  • Set-SwisObject -SwisConnection $SwisConnection -Uri "<UriOfTheNode>" -Properties @{ Category = 2 }

  • Thanks for the reply . When trying your suggested code I get this error message--

    Set-SwisObject : The column "EffectiveCategory" cannot be modified because it is either a computed column or is the
    result of a UNION operator.
    At .\Add-HCONode.ps1:61 char:2
    + Set-SwisObject -SwisConnection $SwisConnection -Uri $newNodeUri - ...
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo : InvalidOperation: (:) [Set-SwisObject], FaultException`1
    + FullyQualifiedErrorId : SwisError,SwisPowerShell.SetSwisObject


    BTW, before opening this question I tried adding Category to my NodeProps and got the same error. This is what I used to create the node(s).

    $ip="$($entry.IP)"
    $newNodeProps = @{
            IPAddress = $ip;
            EngineID = 2;
            ObjectSubType = "ICMP";
            DNS = "$($entry.DNS)";
            isServer = 'true'
            External = 'FALSE'
            Caption = "$($entry.Node)"
            PollInterval = 120
            # === default values ===
            # EntityType = 'Orion.Nodes'
            # DynamicIP = false
            # RediscoveryInterval = 30
            # StatCollection = 10  
        }
    
        $newNodeUri = New-SwisObject $SwisConnection -EntityType "Orion.Nodes" -Properties $newNodeProps
  • Bug - as far as I'm concerned.  I don't know where that "union" would come from.