PagerDuty Runbook Automationとは
RunDeck
まずRundeckが何なのかについて紹介します。
RundeckはOSSのジョブ管理ツールです。定期的に行う作業や処理を自動化して、定時実行やwebhookを通して実行などが出来ます。2020年ごろにPagerDuty社がRundeckを買収しています。
ジョブ管理ツールを使うことでそれらを解決できます。
Rundeckでは、
- Web GUI, CLI, APIを使ったジョブの実行、管理
- Pluginsにより他のサービスと連携
- ジョブの実行ログ、ユーザー認証やロール管理、アクセスコントロール、シークレット鍵の管理
など、他にも多くの機能があります。
- エラーが発生したサーバーの再起動、キャッシュの削除
- 負荷が高くなるとサーバーを自動でプロビジョニング
- エラー発生時にフェイルオーバー
- サーバーのエラーログを取得する作業
- エラー発生時にチケット管理ツールで起票、解決したらクローズ
Rundeckの種類
- Rundeck Community
- OSS、無料、セルフマネージド
- PagerDuty® Runbook Automation (旧称:Rundeck Cloud)
- 高機能、Cloud版、SaaS
- フルマネージド
- 主にクラウド上のサーバー運用などを管理
- PagerDuty® Process Automation On-Prem (旧称:Rundeck Enterprise)
- 高機能、Enterprise版
- セルフマネージド
- 主にオンプレサーバーの運用などを管理
Rundeck Communityは無料ですが、有料版に比べると機能は少なくなっています。以下のページで機能の違いは確認できます。
セルフマネージドなので自分でpcやサーバーにインストールして利用します。EC2などにRundeckをインストールして、社内の人たちで使うといったことも出来ます。 企業利用する場合であってもRundeck Communityを使って良いみたいですが、企業サポートを受けることは出来ません。社内での利用規模が大きい場合は一度PageDuty社に確認した方が良いかもしれません。
PagerDuty® Runbook AutomationはSaaSとして提供されている、有料の高機能なRundeckです。自分でインストールなどしなくても、ブラウザからログインするだけで利用できます。
PagerDuty Process Automationはセルフマネージドで、有料の高機能なRundeckです。主にオンプレ環境の管理などをしたい場合に、自分でインストールして利用します。
有料のRundeckは、名前がRunbook AutomationやProcess Automationとなっており、Rundeckと別物に思うかもしれませんが基本は同じもので、より高機能なRundeckで企業サポートも付いてきます。
PagerDuty Runbook Automationとは
- Dashboard
- 情報(ジョブの実行履歴、実行中のインスタンス、スケジュールされたジョブの一覧、Readme)を確認できます。
- ジョブ
- ジョブの一覧がカテゴリ分けされて表示され、ジョブの実行、管理ができます。
- ノード
- ジョブを実行するサーバーがノードとして表示されます。PROJECT SETTINGS > EDIT NODESからノードを追加できます。
- コマンド
- ノードを選択してコマンド入力すると実行できます。
- アクティビティ
- ジョブの実行履歴(実行日時、実行時間、実行したアカウント名、ノード名など)
- WEBHOOKS
- webhookを使ってジョブを実行できます。aws snsやdataDog, github, pagerDutyなどからwebhookを呼び出してジョブを実行できます。
- SCHEDULE
- 時間とジョブを指定して定期実行できます。
- CALENDARS
- 日時を指定してジョブを実行できます。実行する期間、実行しない期間の指定もできます。