boulder dev ops-meetup-11-2012-rundeck

17
Introduction to RunDeck November 2012 Boulder DevOps Meetup Will Sterling DevOps Engineer @ Datalogix [email protected]

Upload: will-sterling

Post on 14-Jun-2015

806 views

Category:

Technology


0 download

DESCRIPTION

My intro to Rundeck slide stack from the November 2012 Boudler DevOps Meetup.

TRANSCRIPT

Page 1: Boulder dev ops-meetup-11-2012-rundeck

Introduction to RunDeck November 2012 Boulder DevOps Meetup Will Sterling DevOps Engineer @ Datalogix [email protected]

Page 2: Boulder dev ops-meetup-11-2012-rundeck

What is Rundeck?

2

!   Command Orchestration

!   Process Automation

!   Web-UI

!   REST API

!   CLI

!   Nodes dynamically added and removed

!   Target nodes using rich metadata instead of hostnames!

Page 3: Boulder dev ops-meetup-11-2012-rundeck

Rundeck

3

!   Command Orchestration

Page 4: Boulder dev ops-meetup-11-2012-rundeck

Rundeck

4

!   Command Orchestration

–  output

Page 5: Boulder dev ops-meetup-11-2012-rundeck

Rundeck

5

!   Command Orchestration

–  history

Page 6: Boulder dev ops-meetup-11-2012-rundeck

Rundeck

6

!   Projects

Page 7: Boulder dev ops-meetup-11-2012-rundeck

Rundeck

7

!   Process Automation

Page 8: Boulder dev ops-meetup-11-2012-rundeck

Rundeck

8

!   REST API

Page 9: Boulder dev ops-meetup-11-2012-rundeck

Rundeck

9

!   CLI

–  dispatch

Execute ad hoc commands and scripts

–  rd-queue

Query the dispatcher for currently running Jobs and possibly kill them

–  rd-jobs

List defined jobs as well as load them from text file definitions

–  run

Invoke the execution of a stored Job

–  rd-project

Setup a new Rundeck project

–  rd-setup

(Re-)configure an instance of Rundeck

Page 10: Boulder dev ops-meetup-11-2012-rundeck

Rundeck

10

!   Node Selection (filter)

–  Hostname(s)

–  Hostname Regular Expression

–  OS, Version, Arch

–  Tags

Page 11: Boulder dev ops-meetup-11-2012-rundeck

Rundeck

11

!   Filters

Page 12: Boulder dev ops-meetup-11-2012-rundeck

Rundeck

12

!   Node Definition (Resource Model)

–  Static

•  YAML File

–  Dynamic

•  URL

•  Script

Page 13: Boulder dev ops-meetup-11-2012-rundeck

Rundeck

13

!   Resource Model example

Venkman.local:

description: Rundeck server node

hostname: Venkman.local

nodename: Venkman.local

osArch: x86_64

osFamily: unix

osName: Mac OS X

osVersion: 10.6.6

tags: ‘rundeck’

username: greg

Page 14: Boulder dev ops-meetup-11-2012-rundeck

Rundeck

14

!   Data Store Backend

–  HSQLDB - default

•  JAVA based RDBMS, stores data locally in script

–  Any RDBMS with JDBC

Page 15: Boulder dev ops-meetup-11-2012-rundeck

Rundeck

15

!   Installation – RHEL

–  Install Rundeck Repository

•  rpm –I http://rundeck.org/latest.rpm

–  Install Rundeck RPM

•  yum install rundeck

–  Enable & start service

•  chkconfig rundeckd on;service rundeckd start

–  Log in

•  http://hostname:4440

–  User: admin

–  Password: admin

Page 16: Boulder dev ops-meetup-11-2012-rundeck

Rundeck

16

!   Configuration Artifacts of Interest

–  /etc/rundeck

–  /var/lib/rundeck/data

–  /var/rundeck/projects/projectname

–  /var/log/rundeck/

Page 17: Boulder dev ops-meetup-11-2012-rundeck

Rundeck

17

!   Resources

–  Project Home

http://rundeck.org/index.html

–  Screen Casts & Tutorials

http://rundeck.org/about.html

–  Documentation

http://rundeck.org/docs/index.html

–  Mailing List

http://groups.google.com/group/rundeck-discuss

–  Me

[email protected]