HEARTBEATS

MySQLの最近のブログ記事

          

マルチクラウド構成におけるMySQL Group Replicationの利用事例紹介

   

こんにちは、滝澤です。

前回の記事『WireGuardによるマルチクラウド構成VPNの事例紹介』に引き続き、社内事例を紹介します。

弊社ハートビーツではMSP(Managed Service Provider)サービスの可用性向上のために、社内基盤をマルチクラウド構成で運用しています。 複数のクラウド拠点のネットワーク間をWireGuardというVPNトンネルのソフトウェアで接続しています。 さらに、リレーショナルデータベース管理システムにはMySQLを利用しており、MySQLのレプリケーション機能の一つであるGroup Replicationを使って拠点内および拠点間における冗長化を行っています。

今回はこのMySQL Group Replicationの利用事例を紹介します。

行っていることをまとめると次のようになります。

  • マルチクラウド構成(Azure, AWS, GCP)において、MySQLサーバーの冗長化としてMySQL Group Replicationを利用している。
  • マルチプライマリーモード(multi-primary mode)で運用しており、アプリケーションからは同じ拠点内のMySQLサーバーをActive/Passive構成として利用している。
  • MySQL用の監視プラグインに対して、MySQL Group Replicationのステータス監視の機能を開発して追加した。
          

MySQL 5.6.10 以下に存在する レプリケーションのバグと詳細について

   

こんにちは。初めて会社のブログを書きます。吉川です。

先日、月に一度行われている社内勉強会(hbstyle)にて、下記の発表をしました。

MySQL 5.6.10 以下に存在する レプリケーションのバグと原因特定について (Heartbeats 社内勉強会 2014/12/11)

この件に関して、社内・外から反響がありましたので、詳細についてご紹介します。

          

MySQL を MHA + HAProxy で冗長化してみよう

   

斎藤です。こんにちは。

今日は、MySQLにてレプリケーション構成において、マスタサーバのフェイルオーバーを司るmysql-master-ha(以下、MHA)を用いる際、マスタサーバ接続先の切り替えにHAProxyを使ってみようというお話です。

※MHAは0.53.0(公式パッケージ)、MySQLは5.5.25a(Oracle公式パッケージ)、HAProxyは1.4.22(CentOS6標準パッケージ)、OSはCentOS 6.3 x86_64を用いました。

※MHAによる冗長化およびHAProxyによるMySQLの負荷分散の設定を経験された事がある前提で記述します。

          

「写経」から始めるChefクックブックの作成

   

斎藤です。こんにちは。

Chef の話題がアツくなっている今日この頃、みなさまいかがお過ごしでしょうか?Chefの解説本も出つつある今日この頃ではありますが、プログラミングそのものに慣れないうちはそれさえ読むのもちょっと大変かもしれません。そこで今回は、 Chef のレシピ+ライブラリを用いて、MySQLの設定の自動化を試します。いわゆる「写経」から始めてみて、少しずつ「手動」からプログラムを通じた「自動化」にチャレンジしてみましょう。

※Chef 11.04.0, knife-solo 0.2.0, Ruby 1.9.3p327, CentOS 6.3 で検証しています。

          

MySQLでBlackholeストレージエンジンを活用するのオマケ

   

こんにちは。CTOの馬場です。

ちょっと、いや、かなり間が空いてしまいましたが、今回もインフラエンジニア向けにちょっとした情報を紹介します。

先日hbstudy#13が開催されました。

奥野さんからお話しいただいた「Art Of MySQL Replication」の中で紹介されていた、Blackholeストレージエンジンの活用のところで目からウロコだったので、補足してみます。

Blackholeストレージエンジンの活用方法としては、以下のものが有名でしょうか。

  1. クエリをキューイングする
  2. 暖気運転する
  3. UDF(ユーザ定義関数)を利用して、Slave側でのみ処理を実行する

1.については、書籍「4Gbpsを超えるWebサービス構築術」に解説されてますし、 2.についてはhbstudy直後に割と話題になっているので、 3.について紹介してみます。

といっても、やっていることは簡単で、 紹介されている通りmemcachedのデータ更新を セミリアルタイムで実施するためのしくみとして活用しているようです。

うまく利用すれば、ランキングデータの更新/参照など リアルタイム性の高いデータの更新/参照をうまく制御できるようになりそうです。

※実は常識だったらスミマセン

株式会社ハートビーツの技術情報やイベント情報などをお届けする公式ブログです。