先日の記事で、ChefでTomcatをパッケージインストールしましたが今回はバイナリでインストールしてみたいと思います。
大きな作業として以下を考えました。
・Tomcatアーカイブファイルの転送
・アーカイブファイルの展開と配置
・Tomcatグループ、ユーザーの作成
・起動ファイルの作成
・サービスへの登録&起動
それぞれどのようにして実現すればいいか調べました。
Tomcatアーカイブファイルの転送
Cookbook内のファイルを転送するリソースはcookbook_fileだと思いますので、ファイルをCookbookに配置したファイルを転送することにしました。
アーカイブ・ファイルの展開と配置
これを行ってくれるリソースが見つからなかったのでシェルファイルを起動するなどして自分で実行しなければならないのかと思います。
scriptリソースで任意のコマンドを実行できそうなので今回はこれを使ってみようと思います。
しかしながら、Chefでの管理を離れ諸刃の剣のようなので注意が必要。
Tomcatユーザー、グループの作成
userリソース、groupリソースを使って対応します。
起動ファイルの作成
これは事前に用意した起動ファイルをrc.d以下に配置しようと思います。
なのでcookbook_fileリソースを使ってみようと思います。
サービスへの追加、起動
サービスの操作はserviceリソースを使って行ってみます。今回パッケージインストールするわけではないので、なんとなく起動ファイルの配置の前にserviceの登録が行われると登録に失敗しそうなので、その辺りも試してみたいと思います。
結びに
一応、なんとなく出来そうな感じはあるのですが、正常に動く自信が全くありません。
おそらく、うまくいかないと思いますので、試行錯誤も踏まえて成功編?を書いてみたいと思います。
※追記
ChefでTomcatをバイナリインストールする(とりあえず動いた編)を書きました。