MySQL 8.0 リファレンスマニュアル


MySQL 8.0 リファレンスマニュアル  /  MySQL NDB Cluster 8.0  /  NDB Cluster のインストール

23.2 NDB Cluster のインストール

このセクションでは、NDB Cluster の計画、インストール、構成、および実行の基本について説明します。 セクション23.3「NDB Cluster の構成」 の例ではさまざまなクラスタ化オプションおよび構成に関する詳細な情報が提供されていますが、ここで説明するガイドラインおよび手順に従った結果は、データの可用性および保護のための最小要件を満たす使用可能な NDB Cluster であるべきです。

NDB Cluster をリリースバージョン間でアップグレードまたはダウングレードする方法については、セクション23.2.7「NDB Cluster のアップグレードおよびダウングレード」 を参照してください。

このセクションでは、ハードウェアとソフトウェアの要件、ネットワークの問題、NDB Cluster のインストール、基本的な構成の問題、クラスタの起動、停止、および再起動、サンプルデータベースのロード、およびクエリーの実行について説明します。

NDB Cluster は、NDB Cluster ディストリビューションの一部として、web ベースのグラフィカルインストーラである NDB Cluster Auto-Installer (現在は非推奨) も提供します。 Auto-Installer を使用すると、1 台以上のホストコンピュータで NDB Cluster の基本的なインストールとセットアップを実行できます。 詳しくはセクション23.2.8「NDB Cluster Auto-Installer (サポートされなくなりました)」,をご覧ください。

仮定.  以降のセクションでは、クラスタの物理的構成とネットワーク構成に関していくつかの仮定を立てています。 これらの仮定については、次のいくつかの段落で説明します。

クラスタノードとホストコンピュータ.  このクラスタは、ここに示す 4 つのノードで構成されます。各ノードは別個のホストコンピュータ上に配置され、一般的な Ethernet ネットワーク上に固定のネットワークアドレスを持っています。

表 23.5 クラスタ例のノードのネットワークアドレス

ノード IP アドレス
管理ノード (mgmd) 198.51.100.10
SQL ノード (mysqld) 198.51.100.20
データノード "A" (ndbd) 198.51.100.30
データノード "B" (ndbd) 198.51.100.40

この設定は、次の図にも示されています:

図 23.4 NDB Cluster マルチコンピュータの設定

ほとんどのコンテンツは周囲のテキストで説明されています。 4 つのノードはそれぞれ、ネットワークに接続する中央スイッチに接続します。

ネットワークアドレス設定.  この How-To では、簡略化 (および信頼性) のために数値 IP アドレスのみが使用されます。 ただし、ネットワーク上で DNS 解決が利用可能な場合は、クラスタ構成時に IP アドレスの代わりにホスト名を使用できます。 また、hosts ファイル (通常、Linux およびその他の Unix 系オペレーティングシステムでは /etc/hosts、Windows では C:\WINDOWS\system32\drivers\etc\hosts、または使用しているオペレーティングシステムの同等のファイル) が使用可能な場合は、ホスト検索を行う手段として使用することもできます。

NDB 8.0.22 より前では、データおよび管理ノードとの接続に使用されるすべてのネットワークアドレスは、IPv4 を使用して使用または解決できる必要があります。 これには、SQL ノードが他のノードに接続するために使用するアドレスが含まれます。 NDB 8.0.22 以降では、NDB Cluster は任意のクラスタノードとすべてのクラスタノード間の接続のために IPv6 をサポートしています。

hosts ファイルの潜在的な問題.  クラスタノードにホスト名を使用しようとしたときによくある問題は、一部のオペレーティングシステム (一部の Linux 配布を含む) がインストール中にシステム独自のホスト名を /etc/hosts に設定する方法が原因で発生します。 ndb1 および ndb2 というホスト名を持つ 2 台のマシンがどちらも cluster ネットワークドメインに含まれる場合について考えます。 Red Hat Linux (CentOS や Fedora などの一部の派生バージョンを含む) では、これらのマシンの /etc/hosts ファイルに次のエントリが設定されます。

#  ndb1 /etc/hosts:
127.0.0.1   ndb1.cluster ndb1 localhost.localdomain localhost
#  ndb2 /etc/hosts:
127.0.0.1   ndb2.cluster ndb2 localhost.localdomain localhost

SUSE Linux (OpenSUSE を含む) では、マシンの /etc/hosts ファイルにこれらのエントリが設定されます。

#  ndb1 /etc/hosts:
127.0.0.1       localhost
127.0.0.2       ndb1.cluster ndb1
#  ndb2 /etc/hosts:
127.0.0.1       localhost
127.0.0.2       ndb2.cluster ndb2

どちらの場合も、ndb1ndb1.cluster をループバック IP アドレスにルーティングしますが、DNS から ndb2.cluster のパブリック IP アドレスを取得します。一方、ndb2ndb2.cluster をループバックアドレスにルーティングし、ndb1.cluster のパブリックアドレスを取得します。 その結果、各データノードは管理サーバーに接続しますが、ほかのデータノードが接続したことを検出できないため、データノードが起動中にハングアップしたように見えます。

注意

config.ini では localhost とほかのホスト名または IP アドレスを混在できません。 これらの理由により、このようなケースの (config.iniすべての HostName エントリで IP アドレスを使用する以外の) 解決策は、すべてのクラスタホストの /etc/hosts から完全修飾ホスト名を削除し、config.ini で使用することです。

ホストコンピュータのタイプ.  このインストールシナリオに含まれる各ホストコンピュータは、標準的な構成でディスクにインストールされたサポート対象のオペレーティングシステムを実行し、不要なサービスを実行していない Intel ベースのデスクトップ PC です。 標準の TCP/IP ネットワーク機能を含む中核的なオペレーティングシステムで十分です。 また、簡略化のため、すべてのホストのファイルシステムが完全に同じように設定されていると仮定します。 そうでない場合は、状況に応じてこれらの手順を適用してください。

ネットワークハードウェア.  各マシンには標準の 100M ビット/秒または 1 ギガビット Ethernet カードが (カードに対応するドライバとともに) 取り付けられ、4 台のホストすべてがスイッチなどの標準仕様の Ethernet ネットワークアプライアンスを介して接続されています。 (すべてのマシンで、同じスループットのネットワークカードを使用する必要があります。 つまり、クラスタ内の 4 台のマシンで 100M ビット/秒カードを使用するか、または 4 台のマシンで 1 ギガビットカードを使用してください。) NDB Cluster は 100 Mbps ネットワークで動作しますが、ギガビットイーサネットを使用するとパフォーマンスが向上します。

重要

NDB Cluster は、スループットが 100 Mbps 未満のネットワーク、または待機時間が非常に長いネットワークでの使用を目的としていません。 このため (特に)、インターネットなどの広域ネットワーク上で NDB Cluster を実行しようとしても成功しない可能性が高く、本番ではサポートされません。

サンプルデータ.  MySQL の web サイトからダウンロードできる world データベースを使用します (https://dev.mysql.com/doc/index-other.html を参照)。 各マシンには、オペレーティングシステム、必要な NDB Cluster プロセス、および (データノード上の) データベースを格納するための十分なメモリーがあることを前提としています。

MySQL のインストールに関する一般的な情報は、第2章「MySQL のインストールとアップグレードを参照してください。 Linux およびその他の Unix に似たオペレーティングシステムへの NDB Cluster のインストールについては、セクション23.2.1「Linux での NDB Cluster のインストール」 を参照してください。 Windows オペレーティングシステムへの NDB Cluster のインストールについては、セクション23.2.2「Windows への NDB Cluster のインストール」 を参照してください。

NDB Cluster のハードウェア、ソフトウェア、およびネットワーク要件に関する一般的な情報については、セクション23.1.3「NDB Cluster のハードウェア、ソフトウェア、およびネットワーク要件」 を参照してください。


関連キーワード:  NDB, テーブル, ndbinfo, ノード, ndb, インストール, 構成, データ, クラスタ, ネットワーク