Ubuntu 16.04 LTS自動インストール用のpreseed.cfgを作った。

この記事は2017年8月5日に公開したものです。情報が古い可能性がありますのでご注意ください。

検証用にUbuntuの仮想マシンを作ることが多いけど毎回ぽちぽちやるのもだるいので自動インストールできるように preseed.cfg を作った。

Ubuntu 16.04 LTSでMulti-PrimaryなMySQL Group Replication構築手順メモ

この記事は2017年5月16日に公開したものです。情報が古い可能性がありますのでご注意ください。

はじめに

MySQLのレプリケーションは、あるMySQLデータベースから、別のMySQLデータベースへデータや操作(DDL)を反映して複製を作成します。

従来のレプリケーションはプライマリ・セカンダリの構成となり、特定の1つのMySQLデータベースサーバ(マスター)のデータを、1つまたは複数のMySQLデータベースサーバー(スレーブ)に複製することでした。データは非同期、または準同期でマスターからスレーブへコピーされます。通常、マスターとなるデータベースサーバは読み取り書き込み操作を行うことができ、スレーブとなるデータベースサーバは読み取りのみで通常はデータ書き込みを実行できませんでした。マスターは1つのみとなるため、マスターの冗長化を行う場合にはクラスタリングソフトウェアを使うなどのアプローチが必要でした。

MySQL 5.7.17 で取り入れられた Group Replication は、より柔軟で可用性の高いレプリケーション構成するためのMySQLのプラグインで、Group ReplicationはMySQL5.7.12で取り入れられた「Rapidプラグイン(新機能をプラグインとして提供するMySQL5.7.12からの仕組み)」として提供されているようです。
マスターデータベースの冗長化を目的とした機能で、マルチマスターのレプリケーション構成を行うための仕組みがMySQLの機能として実装されています。

グループ内で実行されたトランザクションを識別するためにGTIDを用いており、さらにXCOMと呼ばれる、Paxosという合意アルゴリズムをベースとした仕組みを用いて、グループ内のメンバーへのトランザクションのブロードキャストやメンバー間の認証の管理が行われているようです。

以下ではマルチマスタなGroupReplicationを構成するための基本的な手順を記載します。
続きを読む »

Ubuntu 16.04 LTS で Docker の ZFS Storage Driver を試す

この記事は2017年4月15日に公開したものです。情報が古い可能性がありますのでご注意ください。

はじめに

ZFS はかつて Sun Microsystems社(現Oracle社)によって開発され、現在は CDDL というライセンスでオープンソース化されているファイルシステムです。CDDL は Linux の GPL ライセンスと互換性がないため、ZFS は Linux カーネル・モジュールのメインラインに取り込まれません。しかし、ZFS on Linux (ZoL)プロジェクトにより、外部モジュールとしてインストールことで利用できるようになっています。

以前に ZFS on Ubuntu 16.04 LTS な環境を作成していたので、この環境で Docker の ZFS Storage Dviver を試してみました。

続きを読む »