適当にMroongaを入れようとしては駄目な話 乂(゚д゚`)


7回目の投稿となります。
NHNテコラスの遠藤と申します。よろしくお願いいたします┏○

前回の記事でKUSANAGIのバージョンアップについて触れました。

当社のKUSANAGI導入サービスを利用しているお客様からも手順に従って更新してみた、とかKUSANAGIの機能拡張があんなに行われているのは知らなかったのでやってみた等のお話しをいただく機会がありました。

しかし、何か分からないけど最新にしておけば良いものだと思い、KUSANAGI新着情報に書かれてるコマンドをそのまま入力して動作不良になってしまいました・・・との問い合わせも同時期に立て続けにいただいてしまいました。

共通したエラー(お問い合わせ内容)はDBに繋がらなくなってしまったことΣ(゜Д゜)

KUSANAGIはMroongaをサポートしました

Mroonga(ムルンガ)とは全文検索機能を良い感じ(ハイライトとかスコア順とか※カスタマイズにより色々あります)にしてくれるものです。しかも高速。
WordPressでも標準で全文検索は機能としてありますが、Mroongaや他の手段により検索機能は高速にしたり機能が加わったものに置き換えることも出来ます。

ただ、対象としては記事が数千~とかの規模サイトじゃないと通常の検索でも事足りるので、手間を考えるとあまり導入する必要は無いかもしれません。

MySQL(mariaDB)が削除される!?

MroongaがサポートされたKUSANAGIバージョン8.1.2-2の紹介記事にある手順で導入をしてみます。
(前提として古くにプロビジョニングした環境です)

# kusanagi upgrade mariadb
Upgrade MariaDB.

読み込んだプラグイン:fastestmirror
リポジトリーを清掃しています: base epel extras kusanagi updates zabbix

一部省略

削除しました:
 MariaDB-Galera-server.x86_64 0:10.0.27-1.el7.centos
 MariaDB-client.x86_64 0:10.0.27-1.el7.centos
 MariaDB-common.x86_64 0:10.0.27-1.el7.centos
 MariaDB-devel.x86_64 0:10.0.27-1.el7.centos
 MariaDB-shared.x86_64 0:10.0.27-1.el7.centos
 galera.x86_64 0:25.3.17-1.rhel7.el7.centos

依存性の削除をしました:
 net-snmp.x86_64 1:5.7.2-28.el7_4.1 postfix.x86_64 2:2.10.1-6.el7

完了しました!

MariaDB関連のパッケージが削除されてしまったのでWordPressなど、データベースを使うサイトはアクセスしてもDB接続エラーが表示されるようになってしまいました。

ここで自己復旧が難しいとされるお客様からは多数お問い合わせを頂戴しました。

復旧方法

KUSANAGI バージョンアップ情報 8.1.2-5に書かれている手法(MariaDBの入れ直し)で復旧可能です。

1./etc/yum.repos.d/MariaDB.repoのファイルを確認。

baseurl = http://yum.mariadb.org/10.0/centos7-amd64
となっていた場合は、下記のように10.1に変更
baseurl = http://yum.mariadb.org/10.1/centos7-amd64

2./etc/yum.repos.d/MariaDB.repoファイルが無い場合はviなどで作成します。

作成したファイルには以下を記述します。

[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.1/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

3.yumでMariaDBをインストールする

# yum clean all
# yum install -y MariaDB-devel MariaDB-client MariaDB-server

4.インストールが終わったらmsqlを機動します

# systemctl restart mysql

KUSANAGIを採用しているプラットフォームでは仮想環境ごとバックアップやインスタンスイメージをスナップショットとして取得するものも多いので、”もしも”の起動しなかった場合を想定してアップデート前はそれらの実行も行うようにすると良さそうです(゜∇^*)


Post Author: 遠藤博樹(NHNテコラス株式会社)

遠藤博樹(NHNテコラス株式会社)
前職ではまだヒットチャート上位ランクインがステータスとなる2000年代に某女性3人組バンドのマネージャーを務めていてましたが、解散をきっかけに退社し、EX-CLOUDの前身サービスであるlivedoorレンタルサーバーのサービス開始と同時に2008年にNHNテコラス(旧社名ライブドア)に入社。以来、サポートスタッフとしてお客様対応を行っています。 最近では長年培ったお客様からの声を基に新サービスの企画なども担当していますが、ここでは主にKUSANAGI搭載ホスティングサービスを提供している中で、お客様からいただきましたお問い合わせをヒントに技術的な内容を書いていければと考えております。