MySQL Cluster 7.6をdockerコンテナで動かすには?
  • facebookページ
  • twitterページ
  • 2019.11.18

    MySQL Cluster 7.6をdockerコンテナで動かすには?

    MySQL ClusterをDockerで起動して、実際の動作を確認し、まとめました。

    MySQLClusterを最小のデフォルト構成で起動する

    Dockerコンテナは、mysql提供のものを使用しました。OS/ARCHはlinux/amd64です。MySQL Clusterのバージョンは7.6.12です。

    参考)mysql/mysql-cluster – Docker Hub

    下記コマンドを実行して、管理ノードを起動します。

    mysql/mysql-clusterの最新イメージがpullされ、ノードが立ち上がります。

    下記コマンドを実行し、データノードその1を起動します。

    下記コマンドを実行し、データノードその2を起動します。

    下記コマンドを実行し、SQLノードを起動します。

    最小構成は管理ノード1個、データノード2個、SQLノード1個のようです。SQLノード起動時に、ログにパスワードが出力されるので、下記コマンドを実行してパスワードを表示させます。

    SQLノードが起動するまでは、ログにパスワードが出力されません。上記コマンドを、パスワードが表示されるまで何度か実行します。

    パスワードが表示されました。このパスワードを使って、SQLノードにログインします。

    先ほど表示されたパスワードを使ってログインします。

    MySQLのrootのパスワードを変更しておきましょう。

    これで、最小構成でMySQL Clusterが起動しました。

    クラスタ操作 ノードのstop/startをおこなう

    管理ノードからクラスタ情報を確認する

    下記コマンドを実行し、管理用のCUIコマンドを実行します。

    ndb_mgm>とプロンプトが表示されることを確認します。

    showと入力します。

    ノード情報が表示されます。

    id=1がMGM(管理ノード)、id=2、id=3がNDB(データノード)、id=4がAPI(SQLノード)です。

    ノードのstop

    データノードの一つをstop(シャットダウン)してみましょう。

    「2 stop」でid=2のノードがシャットダウンします。

    showで確認すると、id=2のノードが「not connected」になってます。

    mysqlコマンドでデータベースへの接続を確認します。

    問題なく接続できています。

    ノードのstart

    停止させたノードを再度起動しましょう。

    docker container pruneで停止済みのコンテナを全削除します。

    id=2のコンテナを起動します。

    管理用CUIでクラスタの状態を確認しましょう。下記コマンドを実行します。

    ndb_mgm>とプロンプトに、showと入力します。

    全てのノード情報が起動していることを確認します。

    まとめ

    ポテパンダの一言メモ
    • MySQL Clusterの4ノード構成はdockerコンテナ起動で試すのが簡単
    • クラスタの状態は、管理用CUIコマンドを使う
    • 指定したノードをstart/stopさせることが可能


    優良フリーランス案件多数掲載中!
    フリーランスエンジニアの案件をお探しなら
    ポテパンフリーランス

    この記事をシェア

    • Facebookシェア
    • Twitterシェア
    • Hatenaシェア
    • Lineシェア
    pickup









    ABOUT US

    ポテパンはエンジニアと企業の最適なマッチングを追求する企業です。

    READ MORE