Overview

Rundeck 설치하기

What is Rundeck

Rundeck 이란 오픈 소스 자동화 툴로써 Web API 를 통해 손쉽게 자동화 태스크를 실행할 수 있는 기능을 제공합니다. 각 태스크(Job)는 Rundeck 에서 추상화된 인터페이스를 제공하여 다양한 플렛폼에서도 해당 플렛폼에 맞 실행되도록 할 수있습니다.

Features

Rundeck은 다음과 같은 다양한 특징을 가지고 있습니다.

  • 분산 명령 실행
  • 다양한 work 플로우 정의
  • 스케줄링 지원
  • 다양한 Pluggable 라이브러리 지원
  • 보안
  • 로그 기록
  • 모든 스크립트 언어 지원

Essential Concepts

Rundeck 은 다음과 같은 기본 시스템을 기반으로 구성됩니다.

  • Role-based Access Control Policies
  • Projects
  • Jobs
  • Nodes
  • Commands
  • Executions
  • Plugins

Install

Rundeck 은 java 8 이상 지원합니다. 하지만 java 13 환경에서 제가 테스트 해본 결과 오류가 발생해서 꽤 삽질한 경험이 있습니다. 다른 버전은 테스트해보지 않아 잘 모르겠네요.

Download

아래 링크에서 바이너리 링크를 다운받습니다. 저는 war 파일을 다운받아 설치했습니다.

Download binary

설치

적당한 디렉터리를 생성 후 다운받은 rundeck-3.2.3-20200221.war 파일을 옮겨 놓습니다. 특별히 설치랄것 없이 그냥 war 파일만 복사해 놓으면 됩니다. java 로 만들어져서 이런건 참 편하네요.

실행

설치된 폴더에서 아래와 같이 실행합니다.

java -jar rundeck-3.2.3-20200221.war

실행이 완료가 되었다는 다음 메시지 확인 후

[2020-03-01 14:18:54.594]  WARN BootStrap --- [           main] [Development Mode] Usage of H2 database is recommended only for development and testing
[2020-03-01 14:18:54.753]  INFO BootStrap --- [           main] Rundeck startup finished in 914ms
Grails application running at http://localhost:4440 in environment: production

실행이 완료된 후 웹브라우저에서 httt://localhost:4440을 입력해 봅니다.

Login

최초 로그인 시 아이디와 패스워드는 admin/admin 입니다. 로그인 후 localhost 가 내 호스트명으로 자동으로 변경되는 현상이 있는데, 이때 Rundeck을 종료하고 설치 디렉토리로 갑니다. 처음에 없던 폴더가 생겼네요.

 ~/Desktop/Dev/rundeck  ls
etc                        projects                   rundeck-3.2.3-20200221.war tools                      var
libext                     repository                 server                     user-assets

config 설정 폴더로 이동합니다.

cd server/config

rundeck-config.properties 파일을 편집기로 엽니다.

  • server.addresslocalhost로 변경합니다.
  • grails.serverURLlocalhost로 변경합니다.
    #rss.enabled if set to true enables RSS feeds that are public (non-authenticated)
    rss.enabled=false
    server.address=localhost
    grails.serverURL=http://localhost:4440
    dataSource.dbCreate = update
    dataSource.url = jdbc:h2:file:/Users/user/Desktop/Dev/rundeck/server/data/grailsdb;MVCC=true
    

그리고 어플리케이션을 다시 실행합니다. 다시 로그인하면 호스트명 변경없이 메인화면을 볼 수 있습니다.

Login

Reference