Opmantek's Virtual Operator can be used to help create jobs comprised of commands sets to be run on various nodes, reporting to see job results and troubleshooting to diagnoses nodes which raise conditions through opConfig's plugin system.
Quick actions are virtual operator templates which can save you time from creating commonly run jobs. Or give operators easy access to run commands on remote systems.
New Virtual Operator Job
To create a new virtual operator job go to Virtual Operator and click new Virtual Operator Job.
You will need to select which nodes you are wanting to run commands on, these is auto-completed from the list of currently activated nodes in opConfig.
Next you can select which command sets should be run on the nodes, this is auto-completed from all command sets which opConfig has loaded.
You can also use tags to select which command sets should be run.
Schedule can be run Now or Later and selecting later will bring a time-picker to schedule when this job shall be run.
The name is auto generated from data you are already inputted but can be anything you decide.
Details is a free text field for keeping notes about this job.
Clicking schedule will add the Job to opConfig's queue and take you to the report schedule.
Creating a new virtual operator job
Virtual Operator Report
A Virtual Operator Report is and aggregation of all data collected from your virtual operator job.
On the left panel you have meta data about the job, how it was created who whom and when its going to be or when it was run.
Commands panel is a paginated table of the successful commands which were run for the current job. If the command set is using a plugin to show derived data or report conditions these results are shown inline by clicking the expand icon in the derived column.
If the condition has a tag this can be used to help filter down command sets for creating linked virtual operator jobs off these conditions.
All operations for the current job are shown to help diagnose connection or command issue which have been run.
Virtual Operator Job Report
Virtual Operator Troubleshooting
If you have clicked troubleshoot from a report condition are taken to the new virtual operator job but there are a couple of key differences.
The node has already been filled out and the command sets have been filtered down using a tag, in this example we have three command sets with the tag disk.
This can help to create workflows where conditions are tagged to limit what the operator can select for the next steps.
When this job is created the parents job ID is also recorded and the parents job name is is shown in the newly created report.
Creating a new linked job from a report which has conditions.
Virtual Operator Results & Schedules
Under troubleshooting there are two pages which have scheduled virtual operator jobs and completed virtual operator jobs.
Scheduled shows user created running jobs and ones which are scheduled in the future.
Results shows all the completed jobs which were user created and cli run.
Results from user created virtual operator jobs and opConfig jobs created from the command line.
Quick actions are templates for new Virtual Operator jobs, we have shipped four sample jobs but you can create your own. The default four jobs are defined in the file: /usr/local/omk/lib/json/opConfig/table_schemas/opConfig_action-elements.json
Clicking the quick action button will take you too a new virtual operator screen and fill out the specified fields.
You can create your own Quick Actions by copying the /usr/local/omk/lib/json/opConfig/table_schemas/opConfig_action-elements.json file to /usr/local/omk/conf/table_schemas/ (you may need to create the table_schemas folder if it does not exist) and then editing it. Available field options are described below.
|name||string||Name which is shown at the top of the quick action element|
|description||string||Text shown under the quick action name, useful to describe what the action does|
|command_sets||array of strings||Command set keys which you wish to be run|
|nodes||array of strings||Names of nodes which you wish the command sets to be run against|
|buttonLabel||string||Text of the run button|
Css class applied to the button to colour it.