IBM Usecase - UMKCNSF/UMKC--HACKATHON GitHub Wiki

Create a tool to facilitate the update of multiple nodes in a cluster application

Features

  • The tool must provide an interface using which we can trigger updates to multiple nodes.

  • The nodes can be spread across multiple data centers.

  • The tool should allow us to organize the set of nodes according to the data centers and select a subset of them to update.

  • The backend should comprise of a script that would take the list of selected nodes as input and an input file (provided through the tool) containing the update steps.

  • The input file must then be run against all the selected nodes.

  • The tool must provide us the result and errors if any of the logs once the script has been executed on all nodes with the capability to differentiate the result/logs of one node from another.

  • You can leverage existing automation tools, like, Jenkins, as your UI or create your own. You are free to use any programming or scripting language for the backend code, though, Ansible or bash, would be the recommended one.

Guidelines:-

  • The script must be executed in parallel across all nodes

  • Errors should display clearly

  • Should be able to execute the scripts in any flavor of Unix platform

  • Should demonstrate the use-case execution with 2 or more machines in the cluster

  • an additional point will be given for simplicity of UI and properly formatted output result

References:

Jenkins https://jenkins.io/Ansible

https://www.ansible.com/