Using the AgentServer utility to test agents

The AgentServer utility enables you to test agents without running the HAD process. The utility is part of the product package and is installed in the directory

UNIX: $VCS_HOME/bin.

Run the AgentServer utility on any node when the engine process is not running.

To start the AgentServer and access help (UNIX)

  1. Type the following command to start AgentServer:

    $VCS_HOME/bin/AgentServer

    The AgentServer utility monitors a TCP port for messages from the agents. Configure this port by setting the following string in the /etc/services file to the port number.

    vcstest <port number>/tcp

    If you do not specify this value, AgentServer uses the default value 14142.

  2. When AgentServer is started, a message prompts you to enter a command/ For a complete list of the AgentServer commands, type:
    > help

    Output resembles:

            The following commands are supported.(Use help for more
            information on using any command.)
    
            addattr
            addres
            addstaticattr
            addtype
            debughash
            debugmemory
            debugtime
            delete
            deleteres
            modifyres
            modifytype
            offlineres
            onlineres
            print
            proberes
            startagent
            stopagent
            quit
  3. For help on a specific command, type help command_name at the AgentServer prompt (>). For example, for information on how to bring a resource online, type:
    > help onlineres

    The output resembles:

        Sends a message to an agent to online a resource.
        Usage: onlineres <agentid> <resname>
        where <agentid> is id for the agent - usually same as
        the resource type name.
        where <resname> is the name of the resource.

To test the FileOnOff agent (UNIX)

  1. Start the agent for the resource type:
    >startagent FileOnOff /opt/VRTSvcs/bin/FileOnOff/FileOnOffAgent

    You receive the following messages:

    Agent (FileOnOff) has connected.
    Agent (FileOnOff) is ready to accept commands.
  2. The following are examples of types.cf and main.cf configuration files that can be referred to when testing the FileOnOff agent:
    • Example types.cf definition for the FileOnOff agent:

                type FileOnOff (
                        str PathName
                        static str ArgList[] = { PathName }
                )
    • Example main.cf definition for a FileOnOff resource:

                ...
                group ga (
                ...
                )                  FileOnOff file1 (
                   Enabled = 1
                   PathName = "/tmp/VRTSvcsfile001"
                )

    The sample configuration is set up using AgentServer commands.

  3. Refer to the types.xml and main.xml configuration files when testing the FileOnOff agent. In step 4, the sample configuration is set up using AgentServer commands.
  4. Complete the following steps to pass this sample configuration to the agent.
    • Add a type:

      >addtype FileOnOff FileOnOff
    • Add attributes of the type:

      >addattr FileOnOff FileOnOff PathName str ""
      >addattr FileOnOff FileOnOff Enabled int 0
    • Add the static attributes to the FileOnOff resource type:

      >addstaticattr FileOnOff FileOnOff ArgList vector PathName
    • Add the LogLevel attribute to see the debug messages from the agent:

      >addstaticattr FileOnOff FileOnOff LogLevel str info
    • Add a resource:

      >addres FileOnOff file1 FileOnOff
    • Set the resource attributes:

      >modifyres FileOnOff file1 PathName str /tmp/VRTSvcsfile001
      >modifyres FileOnOff file1 Enabled int 1

  5. After adding and modifying resources, type the following command to obtain the status of a resource:
    >proberes FileOnOff file1

    This calls the monitor entry point of the FileOnOff agent.

    You will receive the following messages indicating the resource status:

    Resource(file1) is OFFLINE
    Resource(file1) confidence level is 0
    • To bring a resource online:

      >onlineres FileOnOff file1

      This calls the online entry point of the FileOnOff agent. The following message is displayed when file1 is brought online:

      Resource(file1) is ONLINE
      Resource(file1) confidence level is 100
    • To take a resource offline:

      >offlineres FileOnOff file1

      This calls the offline entry point of the FileOnOff agent.

  6. View the list of agents started by the AgentServer process:
    >print

    Output resembles:

    Following Agents are started:
    FileOnOff
  7. Stop the agent:
    >stopagent FileOnOff
  8. Exit from the AgentServer:
    >quit