目次
Rundeckについて
Rundeckとは、OSSのジョブ管理ツールで、よくあるcron処理などをGUIを使って管理出来る高機能ツールです。
時間設定はもちろんのこと、ジョブによって渡したいパラメータなどの管理から、Webhookなどを使って通知設定なども出来たりと、まだ使い切れてない機能があるほど高機能なジョブ管理ツールになっています。
今回は、そんなRundeckをUbuntuサーバーに導入したので、設定方法を書き留めておきたいと思います。
Rundeckの導入
まずは、Rundeckの導入ですが、Enterprise向けとCommunity向けのパッケージがあり、無料で使用したいので、Communityのパッケージを選択して導入します。
導入方法はこちらを参考にすると簡単です。
署名鍵のインポート
curl -L https://packages.rundeck.com/pagerduty/rundeck/gpgkey | sudo apt-key add -
aptのソースリスト書き換え
/etc/apt/sources.list.d/rundeck.list に以下を書き換えて入れます。
deb https://packages.rundeck.com/pagerduty/rundeck/any/ any main deb-src https://packages.rundeck.com/pagerduty/rundeck/any/ any main
Rundeckをインストール
sudo apt-get update sudo apt-get install rundeck
Rundeckを起動
導入が完了したら、実際に起動して試してみます。
serviceからrundeckdをスタート
sudo service rundeckd start
自動起動設定追加
ドキュメントには入っていませんが、自動起動設定をしておいた方が良いかと思います。
sudo systemctl enable rundeckd
tailで起動が出来ているかログ確認
tail -f /var/log/rundeck/service.log
以下のような文言が出てきたら、起動が出来た状態になります。起動までは30秒くらいは掛かります。
Grails application running at http://localhost:4440 in environment: production
ここまで出来たらブラウザを開いて、http://localhost:4440 でRundeckが立ち上がっているか確認してみましょう。
独自ドメイン設定
続いて、独自ドメインを設定していきたいと思います。
Elastic IP
まずは、Elastic IPを使用して、Rundeckを導入したEC2に固定IPを割り振っておきましょう。
Route53からドメインをAレコードで入れる
続いて、Rundeckで使用したいドメイン名を、Route53、またはドメインサービスで、Aレコードとして、上記でElastic IPで割り振った固定IPを登録しておきます。
EC2のセキュリティのinboundルール追加
セキュリティのinboundルールにRundeckのポートを開けておく必要があります。
Rundeckでは、普通のhttpであれば4440、SSLであれば4443を使用する為、これらを追加しておきましょう。
Rundeckのconfigファイルにドメイン設定
ここまで出来たら、サーバー側の/etc/rundeck/rundeck-config.propertiesファイルの以下の部分を書き換えます。
grails.serverURL=http://rundeck.sample.com:4440
Rundeckのリスタート
最後にRundeckをリスタートして、終了です。設定したドメインでアクセス出来るか試してみましょう。
sudo systemctl restart rundeckd
こんな簡単にRundeckって導入出来るんですね。
これで定期的に動かしたいjobは、ここにセットしてしまえば楽でいいですね。