Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Controller instances are assigned a Controller ID on installation. When registering the Controller then it will be registered with the given Controller ID is used to identify the Controller.

Users can register a Controller from its URL. Users can check if the connection between JOC Cockpit and Controller can be established.

Code Block
languagebash
titleExample for Registering, Checking and Unregistering Standalone Controller
linenumberstrue
# common options for connection to JS7 REST API
request_options=(--url=http://localhost:4446 --user=root --password=root)  

# register Standalone Controller
./manage-controller.sh register ${request_options[@]} \
    --primary-url=http://localhost:4444 --primary-title="Standalone Controller"

# check Standalone Controller Connection
./manage-controller.sh check ${request_options[@]} --controller-url=http://localhost:4444

# unregister Standalone Controller
./manage-controller.sh unregister ${request_options[@]} --controller-id=controller


In a Controller Cluster both Controller instances are installed using the same Controller ID.

Code Block
languagebash
titleExample for Registering, Checking and Unregistering Controller Cluster
linenumberstrue
# common options for connection to JS7 REST API
request_options=(--url=http://localhost:4446 --user=root --password=root)  

# register Controller Cluster
./manage-controller.sh register ${request_options[@]} \
    --primary-url=http://localhost:4544   --primary-title="Primary Controller" \
    --secondary-url=http://localhost:4644 --secondary-title="Secondary Controller"

# check Controller Cluster Connections
./manage-controller.sh check ${request_options[@]} --controller-url=http://localhost:4544
./manage-controller.sh check ${request_options[@]} --controller-url=http://localhost:4644

# unregister Controller Cluster
./manage-controller.sh unregister ${request_options[@]} \
    --controller-id=controller --controller-url=http://localhost:4544

...

When Agents are deployed, then the Agent configuration will be made available to the Controller that which connects to the related Agent. As a prerequisite for deployment the Agent must be up & running and must be reachable for the Controller to establish a connection.

Code Block
languagebash
titleExample for Storing and Deploying Standalone AgentsAgent
linenumberstrue
# common options for connection to JS7 REST API
request_options=(--url=http://localhost:4446 --user=root --password=root --controller-id=controller)

# store Standalone Agent
./manage-controller.sh store-agent ${request_options[@]} \
    --agent-id=StandaloneAgent --agent-name=StandaloneAgent \
    --agent-url="http://localhost:4445" --title="Standalone Agent"

# deploy Standalone Agent
./manage-controller.sh deploy-agent ${request_options[@]} \
    --agent-id=StandaloneAgent


An Agent Cluster includes the Primary and Secondary Director Agents. As a prerequisite for deployment the Director Agents must be up & running and must be reachable for the Controller to establish a connection.

Code Block
languagebash
titleExample for Storing and Deploying Agent ClustersCluster
linenumberstrue
# common options for connection to JS7 REST API
request_options=(--url=http://localhost:4446 --user=root --password=root --controller-id=controller)

# store Agent Cluster usingwith Primary/Secondary Director Agent
./manage-controller.sh store-agent ${request_options[@]} \
    --agent-id=AgentCluster --agent-name=AgentCluster --title="Agent Cluster" \
    --primary-subagent-id=primary-director     --primary-url=http://localhost:4545   --primary-title="Primary Director" \
    --secondary-subagent-id=secondary-director --secondary-url=http://localhost:4645 --secondary-title="Secondary Director"title="Secondary Director"

# deploy Agent Cluster
./manage-controller.sh deploy-agent ${request_options[@]} --agent-id=AgentCluster --cluster

Revoking and Deleting Agents

...

Code Block
languagebash
titleExamples Example for Revoking and Deleting Standalone Agent
linenumberstrue
# common options for connection to JS7 REST API
request_options=(--url=http://localhost:4446 --user=root --password=root --controller-id=controller)

# revoke Standalone Agent
./manage-controller.sh revoke-agent ${request_options[@]} --agent-id=StandaloneAgent

# delete Standalone Agent
./manage-controller.sh delete-agent ${request_options[@]} --agent-id=StandaloneAgentHttpIdStandaloneAgent


Revoking an Agent Cluster includes to revoke the Subagents and Subagent Clusters from the Controller using a single operation.

...

When Subagents are deployed, then they are made available to the Agent Cluster that which connects to the related Subagent. As a prerequisite for deployment the Subagent must be up & running and must be reachable for the Agent Cluster to establish a connection.

Code Block
languagebash
titleExample for Storing and Deleting SubagentSubagents
linenumberstrue
# common options for connection to JS7 REST API
request_options=(--url=http://localhost:4446 --user=root --password=root --controller-id=controller)

# store SubagentSubagents
./manage-controller.sh store-subagent ${request_options[@]} \
    --agent-id=AgentCluster --subagent-id=Subagent_01 \
    --subagent-url=http://localhost:4745 --title="Subagent 01"

# store Subagent
./manage-controller.sh store-subagent ${request_options[@]} \
    --agent-id=AgentCluster --subagent-id=Subagent_02 \
    --subagent-url=http://localhost:4845 --title="Subagent 02"

# delete Subagents
./manage-controller.sh delete-subagent ${request_options[@]} --subagent-id=Subagent_01
./manage-controller.sh delete-subagent ${request_options[@]} --subagent-id=Subagent_0102

Storing, Deploying, Revoking and Deleting Subagent Clusters

...

When Subagent Clusters are revoked, then they are deleted from the Agent Cluster. The cluster configuration remains in place with the inventory and will be set to the not deployed status.

When Subagent Clusters are deleted, then they are deleted from the Agent Cluster and from the inventory.

Code Block
languagebash
titleExample for Revoking and Deleting Subagent Clusters
linenumberstrue
# common options for connection to JS7 REST API
request_options=(--url=http://localhost:4446 --user=root --password=root --controller-id=controller)

# revoke Subagent Clusters
./manage-controller.sh revoke-cluster ${request_options[@]} --cluster-id=active-passive
./manage-controller.sh revoke-cluster ${request_options[@]} --cluster-id=active-active

# delete Subagent Clusters
./manage-controller.sh delete-cluster ${request_options[@]} --cluster-id=active-passive
./manage-controller.sh delete-cluster ${request_options[@]} --cluster-id=active-active

...

Code Block
languagebash
titleExamples Example for Exporting and Importing Agents
linenumberstrue
# common options for connection to JS7 REST API
request_options=(--url=http://localhost:4446 --user=root --password=root --controller-id=controller)

# export Agents from their Agent ID
./manage-controller.sh export-agent ${request_options[@]} \
    --file=export_agents.zip --agent-id=StandaloneAgent,AgentCluster

# import Agents
./manage-controller.sh import-agent ${request_options[@]} \
  --file=export_agents.zip

Resources

...