隔週連載groonga

第9回 mroongaを広く使ってもらうために大事なこと - mroongaのパッケージング動向の紹介

この記事を読むのに必要な時間:およそ 3.5 分

mroongaのリリースマネージャをしている林です。

mroongaはMySQL用のストレージエンジンです。すべてのMySQLユーザーに高速な全文検索機能を提供するために開発されました。

前回は環境構築時のノウハウとしてCentOS6でのRPMパッケージを用いた MySQL 5.6 & mroonga & PHP 5.4 環境の作り方を紹介しました。mroongaはビルドしたときのMySQLのバージョンに依存しているため,特定のMySQLのバージョンに合わせた構成を独自に構築したいというときには非常に参考になったのではないでしょうか。

今回は,様々な環境で提供しているmroongaについて,リリースマネージャの観点から紹介します。

リリースマネージャというお仕事

そもそも,リリースマネージャってどんなことをやっているのか,と思うかも知れません。簡単に言うと,最新版のmroongaをみなさんがインストールして使えるようにお届けする作業をしています。もう少し具体的に書くと次のようなことをリリースのたびに実施しています。

  • 前回のリリースからの変更点をまとめる
  • 新機能に対応するドキュメントを作成する
  • リリース用のパッケージのビルドと動作確認をする
  • mroonga.orgで提供している独自リポジトリを更新する
  • Webサイトのドキュメントを更新する
  • リリースアナウンスをメーリングリストに投稿する
  • リリースをtwitterでアナウンスする
  • リリースをfreecodeでアナウンスする

mroongaは特定のMySQLのバージョンに依存していますので,いざリリースしようとしたときにうまくビルドできないこともあります。また,ビルドはできますが動作させてみると問題が発覚したりすることもあります。安心して使ってもらえるようにするのがリリースマネージャの役割です。リリースする日はアナウンスを流すだけでいいように準備をするため,前日にパッケージのアップロードまで完了してようやく一息つけるようになります。

mroongaのリリースで大事にしていること

mroongaでは毎月月末の肉の日(29日)にリリースをするというのを続けています。これには一部例外もあり,今年の肉の日(2月9日)にはmroonga 3.00へのメジャーバージョンアップを果しました。

毎月定期的にリリースすることで,継続して開発されている感があります。これを続けてきたことで,肉の日には新しいバージョンがリリースされるということを認知してもらえるようになりました。また,不具合があっても,すぐに対応版をリリースすることができるという強みもあります。

もうひとつ大事にしているのは,簡単に導入できることです。そのため,様々な環境に合わせてパッケージを提供しています。

  • Debian
  • Ubuntu
  • CentOS
  • Fedora
  • Windows

環境ごとに事情が異なるため,それぞれの環境ごとのパッケージングの動向を紹介します。

Debian/Ubuntu

Debian/Ubuntuでは今年に入っていくつかのリリースのサポート開始と打ち切りがありました。

Debianでは,Debian 7.0 (wheezy)がようやく安定版としてリリースされたので,Debian 8.0 (jessie)をサポートしはじめました。Ubuntuでは,Ubuntu 13.04 (Raring Ringtail)のサポートもはじめました。一方,EOLのためサポートを打ち切ったものもあります。Ubuntu 11.10 (Oneiric Ocelot)がこれに該当します。

そのため,現在公式でサポートしているのは次の環境となります。

  • Debian 6.0 (squeeze)
  • Debian 7.0 (wheezy)
  • Debian 8.0 (jessie)
  • Debian unstable
  • Ubuntu 10.04 (Lucid)
  • Ubuntu 12.04 (Precise)
  • Ubuntu 12.10 (Quantal)
  • Ubuntu 13.04 (Raring)

それぞれの環境で対応している,MySQLのバージョンは次の通りです。

リリース MySQLのバージョン
Debian 6.0 (squeeze) 5.1.66
Debian 7.0 (wheezy) 5.5.31
Debian 8.0 (jessie) 5.5.31
Debian unstable 5.5.31
Ubuntu 10.04 (Lucid) 5.1.69
Ubuntu 12.04 (Precise) 5.5.31
Ubuntu 12.10 (Quantal) 5.5.31
Ubuntu 13.04 (Raring) 5.5.31

上記からわかるように,Debian 6.0 (squeeze)とUbuntu 10.04 (Lucid)のみがMySQL 5.1系で,残りはすべてMySQL 5.5系です。Debian/Ubuntu以外の環境でも5.5系以降が大多数となりました。

複数のバージョンに対応したmroongaをメンテナンスし続けていくのもコストがかかるため,MySQL 5.1系であるDebian 6.0 (squeeze)やUbuntu 10.04 (Lucid)はmroongaで公式にサポートする対象としてはおそらく今年中にサポート打ち切りとなる見込みです。

MariaDBがFedoraで採用されたことが話題となりましたが,mroongaプロジェクトで提供しているリポジトリにおいて,MariaDB対応mroongaのパッケージのリリース予定はいまのところありません。Debian/UbuntuにはMariaDBのパッケージがまだないのがその理由です。

とはいえ,MariaDBでmroongaを試してみたいという需要もあるかも知れません。MariaDB公式サイトで提供されているdebパッケージと一緒に使うmroongaのパッケージを用意する方法についてはMariaDB + mroongaで全文検索を実現する環境をdebパッケージで管理するにはという記事もありますので,参考にしてみてください。

CentOS

CentOSの場合,それほど動きはなく,CentOS 5.9やCentOS 6.4に追従したくらいです。

CentOS 5,CentOS 6いずれも最新のリリースのみサポートするというのも変更ありません。

それぞれの環境で対応している,MySQLのバージョンは次の通りです。

リリース MySQLのバージョン
CentOS 5.9 5.6.12
CentOS 6.4 5.1.69

CentOS 5の標準のMySQLのバージョンが5.0系と古いため,CentOS 5ではMySQL 5.6系のパッケージをmroongaのリポジトリで提供する方針にも変更はありません。mroongaにおいてMySQL 5.1系のサポートをやめたときには,CentOS 6でもCentOS 5同様にMySQL 5.6系のパッケージを一緒に提供することになるでしょう。⁠ただし具体的な時期等については未定です。)

現時点で,CentOS 5/6においてMySQL 5.5もしくはMySQL 5.6,MariaDBなどでmroongaを使いたい場合には,有志のかたが提供しているリポジトリを利用されることをおすすめします。

著者プロフィール

HAYASHI Kentaro (kenhys)

株式会社クリアコード所属。毎月肉の日のgroongaやmroongaのリリースを担当。趣味であれこれSylpheed - 軽快で使いやすいオープンソースのメールソフトのプラグインを開発している。

Twitter:@kenhys

コメント

コメントの記入