Rundeckをjarでインストール

# これは何？

Rundeckをjarファイルを使って、centos7にインストールした時のメモです。
本格利用する場合は色々設定があるようですが、最低限これだけやれば動く的な**お試しな簡易インストール方法です**。※jarでインストールする以外は、既存の投稿とかぶっている部分もあるので、参考程度に。

Rundeckについては、下記ドキュメント参照。
http://rundeck.org/docs/jp/manual/01-introduction.html

> Rundeck はデータセンターやクラウド環境におけるその場限りの作業やルーチンワークを自動化してくれる OSS です。これまで時間を浪費してきた単純作業を軽減したり、スクリプト化したものを簡単にスケールするための沢山の機能があります。

# バージョン
インストールに使ったjarは
　rundeck-launcher-2.6.2.jar
です。

OSとJavaのバージョンです。

```
# cat /etc/centos-release
CentOS Linux release 7.2.1511 (Core) 

# java -version
openjdk version "1.8.0_71"
OpenJDK Runtime Environment (build 1.8.0_71-b15)
OpenJDK 64-Bit Server VM (build 25.71-b15, mixed mode)
```

# インストール

## jarファイルダウンロード
jarのダウンロードは下記リンク先から。

http://rundeck.org/downloads.html

Self Contained Launcher Install下のjarファイル名をクリックすると、ダウンロードできます。

![スクリーンショット 2016-02-10 23.33.29.png](https://qiita-image-store.s3.amazonaws.com/0/95528/5655d677-b9ca-89da-4000-7cfd6fd6a08d.png)

## 事前準備

### ポート設定
Rundeckはデフォルトだと、4440番ポートでListenしているので、リモートから接続する場合、firewalldやiptablesなどでの許可設定が必要です。また、Dockerなどで動かす場合、必要に応じてポートフォワード設定してください。

### Javaインストール
jarファイルを実行するとき、JAVAが必要なのでjavaをインストールします。しばらくアップデートしていないと、依存パッケージが更新できなかったりするのでインストール前にアップデートをしてからインストールします。

```
# yum check-update
# yum update
# yum install java-1.8.0-openjdk
```

## Rundeckインストール

jarを使ってRundeckをインストールすると、jarと同じディレクトリ内にファイルが展開されるので、任意のディレクトリを作ってそこにダウンロードしたjarファイルをおきます。

今回は、/opt/rundeckにしています。

```
# mkdir /opt/rundeck
# ls -ld /opt/rundeck                                       
drwxr-xr-x 2 root root 4096 Feb 10 14:18 /opt/rundeck
```

ダウンロードしたrundeck-launcher-2.6.2.jarを、作ったディレクトリ配下におきます。

```
# ls -l /opt/rundeck                                        
total 84140
-rw-r--r-- 1 root root 86155030 Feb 10 14:18 rundeck-launcher-2.6.2.jar
```

jarファイルをjavaコマンドで実行します。しばらく待って、

```
Started SelectChannelConnector@0.0.0.0:4440
```

がでたら起動完了です。

```
# cd /opt/rundeck/
# java -jar rundeck-launcher-2.6.2.jar
WARNING: HTTPS is not enabled, specify -Drundeck.ssl.config=/opt/rundeck/server/config/ssl.properties to enable.
(省略)
2016-02-10 14:20:42.691:INFO:oejs.AbstractConnector:Started SelectChannelConnector@0.0.0.0:4440
```

## Rundeckにアクセスする

起動後の初期設定では、http://ホスト名:4440で接続できます。
ただし、Rundeckログイン後、設定ファイルに記載されているURLにリダイレクトされるので、Proxyとか(dockerとかで)ポートフォワードしている場合は、ログイン後のページが見れないです。

その場合、jarファイルを置いていたディレクトリの配下の
server/config/rundeck-config.properties
のgrails.serverURLがリダイレクト先のURL設定になっているようなので、その設定を変更します。**インストール方法によって、設定ファイルの格納パスが違うので注意です**。rpmで入れるか、jarで入れるかでパスが結構違います。

下記の例では、/opt/rundeckにjarを置いていた場合で、ホスト名がconsoleのサーバ上で起動した例です。今回は、docker-machine上のdockerコンテナを使っていて、コンテナの4440ポートにつなぐためにdocker-machineのホスト(192.168.99.100)の14440ポートにつなぐような設定でdocker runしているため、その状態に合うように設定をしています。

```/opt/rundeck/server/config/rundeck-config.properties
#loglevel.default is the default log level for jobs: ERROR,WARN,INFO,VERBOSE,DEBUG
loglevel.default=INFO
rdeck.base=/opt/rundeck

#rss.enabled if set to true enables RSS feeds that are public (non-authenticated)
rss.enabled=false
#grails.serverURL=http://console:4440
grails.serverURL=http://192.168.99.100:14440
dataSource.dbCreate = update
dataSource.url = jdbc:h2:file:/opt/rundeck/server/data/grailsdb;MVCC=true;TRACE_LEVEL_FILE=4
```

Rundeckが実行中のターミナルで、Ctrl+Cで一旦Rundeckを止めて、再度

```
# java -jar rundeck-launcher-2.6.2.jar
```

で起動します。
起動後は、

- Username : admin
- Password : admin

でログインできます。

![スクリーンショット 2016-02-10 23.52.54.png](https://qiita-image-store.s3.amazonaws.com/0/95528/cdfe53d7-1f08-de2c-b1e9-f3ab1e5d517d.png)

ログインできると、下記のような画面になります。grails.serverURLの設定が間違っているとログイン画面から進まないので、その場合はブラウザのURL欄でリダイレクト先のURLが正しいか確認してください。

![スクリーンショット 2016-02-10 23.53.20.png](https://qiita-image-store.s3.amazonaws.com/0/95528/29142930-279a-57ed-785f-c25fe50a01be.png)