Welcome to the Rundeck user manual. This manual was written to help you quickly become productive with the Rundeck service and tools.
Rundeck is open source software that helps you automate ad-hoc and routine procedures in data center or cloud environments. Rundeck provides a number of features that will alleviate time-consuming grunt work and make it easy for you to scale up your automation efforts.
Rundeck allows you to run tasks on any number of nodes from a web-based or command-line interface. Rundeck also includes other features that make it easy to scale up your automation efforts including: access control, workflow building, scheduling, logging, and integration with external sources for node and option data.
Already itching to install it? Jump ahead to Installing Rundeck.
Rundeck is developed on GitHub as a project called dtolabs/rundeck. Many ideas for Rundeck come from DTO Solutions consultants working in the field, however all are welcome to join the project and contribute.
Rundeck is free software and is public under the Apache Software License.
man -k rundeck
Rundeck is meant to compliment the tools you already use (including frameworks like Puppet, Chef, and Jenkins, Cloud, VM) and is geared towards helping you automate actions across them. If you currently manage your servers by running commands from the terminal or through scripts, Rundeck is a more user friendly alternative. Instead of managing node lists in a spreadsheet or wiki page and then having to transcribe the list to where you execute commands, Rundeck acts as a command and control portal that lets you execute commands using features like node filtering and parallel execution.
Rundeck also works well for managing virtual servers, be they from a cloud provider or from locally hosted virtualization software. The node abstraction enabled by the Rundeck command dispatcher helps you cope with managing dynamic environments.
Many automation tasks cross the tool boundaries. For example, deploying software or maintaining an application often involves using tools up and down the management tool chain. Rundeck has a simple to use interface to create multi-step workflows that might call a package manager, configuration management tool, system utilities, or your own scripts. Rundeck is really meant to help automate tasks across tools and in return enable a push button interface you can hand off to others.
Rundeck is a server application you host on a system you designate a central administrative control point. Internally, Rundeck stores job definitions and execution history in a relational database. Output from command and job executions is saved on disk.
Rundeck distributed command execution is performed using a pluggable node execution layer but defaults to SSH. Rundeck server configuration includes settings to define the outbound user allowed by the remote hosts. Remote machines are not required to make connections back to the server.
The Rundeck application itself is a Java-based webapp that runs in its own embedded servlet container. The application provides both graphical interface and network interfaces used by the Rundeck shell tools.
Access to the Rundeck application requires a login and password. The default Rundeck installation uses a flat file user directory containing a set of default logins. Logins are defined in terms of a username and password as well as one or more user groups. An alternative configuration to the flat file user directory, is LDAP (e.g., ActiveDirectory) but Rundeck authentication and authorization is customizable via JAAS. Users must also be authorized to perform actions like define a job or execute one. This is controlled by an access control facility that reads policy files defined by the Rundeck administrator. Privilege is granted if a user's group membership meets the requirements of the policy.
Two installation methods are supported:
RPM: The RPM is intended for managed installation and provides robust tools that integrate with your environment, man pages, shell tool set in your path, init.d startup and shutdown
Launcher: The launcher is intended for quick setup, to get you running right away. Perfect for bootstrapping a project or trying a new feature.
If you find problems with Rundeck, or if you have questions, remarks, or ideas about it, please send an email to the Rundeck mailing list, .
The remainder of the manual will give you a quick conceptual overview, and take you through installation and setup. After you are set up, you will learn about the distributed command dispatcher and how to use it to run ad-hoc commands. From there, you will learn about Jobs, defining multi-step procedures with Job workflows and how to parameterize them with options.