How to use yum-cron?

(なんとなく英語でタイトルつけてみたけど...)ということで、yum-cronというCentOSのパッケージを使っています。個人で運用しているサーバーであればどちらかと言うとなるべく新しいものを使っていたほうがいいと思うので紹介します。ちなみに、Movable TypeのAMIなどではこれを使ってもほとんど意味がないので使わなくていいと思います。(詳細は最後に)

yum-cronとは?

一言で言うと、自動でアプリケーション(Apacheとか)をアップデートするプログラムのことです。別名、Nightly Updatedと言うみたいです。夜の間にアップデートするみたいです。ただ、Azureなど一部環境ではUTCや時間帯がずれている場合があるので必ず日本時間ではないということも注意しなければいけません。

インストール方法

yum-cronといってるぐらいなのでyumでインストールします。

sudo yum install yum-cron -y

その後、サービスを起動します。その後、再起動しても勝手に起動するように設定します。

sudo service yum-cron start
sudo chkconfig yum-cron on

こんな感じです。後はlogwatchなどで報告されるのでメールを確認すればいいと思います。

Movable TypeのAMIでは使ってもあまり意味が無い

冒頭にも記載した通りですが、以前アドベントカレンダーなどでも少し取り上げていて気がつく人は気がついたとは思います。php 5.3系が入っていました。2014年2月27日現在phpの最新版は5.5.8です。Movable TypeのAMIはyumなどを利用してインストールされたものではありません。

設定ファイルも通常のnginxやApache、phpなどであれば/etc/以下にあると思います。しかし、Movable TypeのAMIの場合、/app/以下にあると思います。(詳しいことは今使ってないのもあって忘れました)

また、yum updateコマンドを実行してもnginxなどがアップデートされませんし、nginxを導入するとhttpd(Apache)もアプリケーションに依存するパッケージがあるためだと思われますが、同時にインストールされます。

Movable TypeのAMIに使われているnginxなどはmake install(ソースコードからインストールする時に使うコマンド)でインストールされている可能性が高いため、アップデートなども安易ではありません。アプリケーションのある場所なども指定しないといけないため初心者には難しい作業だと思います。

アプリケーションのインストール方法(CentOS 6系の場合)

私が知っている限りでは、以下の3つだと思います。

  1. yumからインストールする
  2. rpmコマンドを使ってインストールする
  3. make installする

一番簡単な方法はyumでインストールする方法です。逆に、make installはFreeBSDなどのOSで採用されている方法ですが、Linux系ならmake installという方法も使えます。”こんな方法がある”ということだけでも知っておいてもらえればなと思います。

(Movable TypeのAMIに関することが記事本文より長いという…)