Friday, September 22, 2017

Study note on RunDeck


  • Opensource tool to help automate repetitive tasks;  help orgnized commands into workflow and run it agaist pre-configured list of hosts,  using ssh (key based login) to remote execute these workflows;
  • http://rundeck.org  for document, admin guide and videos;
  • Java-Json based application, run from Rundeck server or admin node,  ssh trust established between rundeck servers to remote hosts;  Can create project/jobs in Web GUI or CLI;  the nodes(hosts) are in resources.xml in each project;  RunDeck stores job definition and history on configured database,
  • Some basic terminology:
    • Job:  sequence of steps to run, a.k.a workflow
    • Node: remote host
    • Project: logical group of jobs/nodes to orgnize work better;
    • Resources : collection of nodes
  • Resource Tagging in resources.xml:
    • best practice to assign tags to nodes, thus can group them dynamically;
    • For example:
      • <node name="dc1sittom01" description="DC1 SIT Envrionment TomCat server01" tags="ALL,DC1,SIT,TOMCAT,TEST" hostname="dc1sittom01" osArch"amd64" osFamily="unix" osName="Linux">
      • Above TAGS described the different groups this host could be in, thus a job could be target all hosts in those particular TAGs (or combination of TAGs)
      • Filter:  for example:  tags:TOMCAT !hostname: dc1prodtom01 *!tags:UAT
  • Jobs/workflows can be used repeatedly to help automation routine work

No comments:

Post a Comment