シングルノードで手軽にクラスタを試すOpenSolarisで始めるブログサーバ構築(6)(2/2 ページ)

» 2008年06月18日 00時00分 公開
[加藤久慶サン・マイクロシステムズ株式会社]
前のページへ 1|2       

シングルノードでクラスタを試す

 さて、インストールの流れは、いかがでしょうか? 意外にステップ数が多く、難しいと感じられた方もいらっしゃると思います。また、マシンを2台用意しないと試せないのかと思われた方もいるかもしれません。

 しかし先に触れたとおり、Solaris Cluster Expressでは、シングルノードのSolaris Cluster(物理的にはクラスタリングではありません)を試すことが可能です。そこで次に、シングルノードでクラスタを構築し、HA StoragePlus(HA ZFS)HA MySQLおよびHA ApacheTomcatを設定する方法を紹介しましょう。

 Solaris Cluster Expressを用いたシングルノードのクラスタリングのインストール方法は、OpenSolaris HA Clustersコミュニティページにあります。これをご覧になればお分かりかと思いますが、シングルノードクラスタを利用する場合は、RPCの構成を変更しなければなりません。

# svccfg
svc:> select network/rpc/bind
svc:/network/rpc/bind> setprop config/local_only=false
svc:/network/rpc/bind> quit
# svcadm refresh network/rpc/bind:default
# svcprop network/rpc/bind:default | grep local_only
config/local_only boolean false
シングルクラスタ用のRPCの設定

 インストールの詳細については、「How to Install Solaris Cluster Express Software」のとおりです。1〜3のステップからなっていて、ステップ2のインストーラーを起動すると、画面1のようなGUIが動作し始めます。

OpenSolaris 画面1 Solaris Cluster Expressのインストールウィザード

 ステップ3のソフトウェアコンポーネント選択の画面では、「Solaris Cluster Express」「すべての共有コンポーネント」「利用するHA MySQL」「HA ApacheTomcat」を選択してください。ソフトウェア要件やディスクスペースがチェックされた後、インストールが開始されます。

//scsinstallの実行
#/usr/cluster/bin/scinstall

//scinstallのメニューの選択
- [Main Menu] ←1)Create a new Cluster or add a cluster nodeを選択
- [New Cluster and Cluster Node Menu] ←1) Create a new clusterを選択
- [Create a New Cluster] ←yesを選択
- [Typical or Custom Mode] ←1) Typicalを選択
- [Cluster Name] ←任意のクラスタ名を付ける
- [Cluster Nodes]←シングルクラスタなので、Control-D後、yesを選択
- [Automatic Reboot] ←Do you want scinstall to reboot for you(yes/no) yesを選択
- [Confirmation] ←yesを選択
- [Check]←noを選択

 設定が完了すると、ホストがリブートします。

HAサービスの設定とApache Roller

 前回の記事で、Solaris Clusterにおいては、リソースやサービスはすべてリソースグループ単位で扱われる仕組みになっていることを説明しました。

 今度は、前述の手順で構築したシングルノードで利用できる1つのリソースグループ(my-rg)中に、3つのリソースタイプと論理ホストを設定していきます(図2)。シングルノードにおいて、これら3つのリソースは独立したものとして扱うことができます。

図1 図2 シングルクラスタの設定

 3つのリソースとは、「HA Storage Plus(data-rs)「HA MySQL(my-rs)」「HA Tomcat(tom-rs)」です。これら3つのリソースと論理ホストの設定を紹介しましょう。

リソースと論理ホストの設定

HA StoragePlus、HA ZFSの設定

 まずHA StoragePlusからです。まず、1つのStoragePoolを作り、MySQL用の領域とTomcat用の領域のZFSを作成します。さらに、クラスタリソースグループを作成するという手順です。設定は次の通りです。

#zpool create datapool c0td0d0s4[ZFS用の領域]

//mysql用のデータファイル置き場
#zfs create datapool/mysql

//tomcat用のデータ置き場
# zfs create datapool/tomcat

//cluster resource groupの設定
#clresourcegroup create my-rg

//resource typeの設定
#clresourcetype register SUNW.HAStoragePlus

//HA StoragePlusのリソースを登録
#clresource create -g my-rg -t SUNW.HAStoragePlus -p Zpools=HAzpool hasp-rt

//リソースのオンライン
#clresourcegroup online -M my-rg

論理ホストの設定

 リソースグループに対し、論理IPアドレスを設定します。

//論理ホストの設定(/etc/inet/hosts、/etc/inet/ipnodesでホストの名前解決ができていることを確認)
#clreslogicalhostname create -g my-rg logical(論理ホスト名)

HA MySQLの設定

 MySQLの初期化を行い、必要な設定ファイルを設定した後、リソースグループを登録します。

//mysql group、userの作成
#groupadd mysql
#useradd -g mysql -d /global/data/mysql -m -s /bin/bash mysql

//権限テーブルの作成
#mysql_install_db --datadir=/global/data/mysql

//my.cnfファイルの作成(→参考1を参照)

//mysql_config、ha_mysql_configファイルの編集
#cp /opt/SUNWscmys/util/mysql_config /global/config
#cp /opt/SUNWscmys/util/ha_mysql_config /global/config



//my.cnfファイルのパーミッションの変更
chmod 644 /global/data/mysql/data/my.cnf

//MySQL構成ファイルmysql_config、ha_mysql_configの編集(→参考2参考3を参照)

//MySQLを手動で起動させる(リソースグループがonlineになっていることも確認)
#cd /opt/coolstack/mysql_32bit/bin
#./mysqld --defaults-file=/global/data/mysql/data/my.cnf --datadir=/global/data/mysql/data

//ローカルホストでのMySQLのrootパスワードを設定
#./mysqladmin -S /tmp/logical.sock -u root password 'root'

//論理ホストのためのMySQLの管理ユーザーを追加
#./mysql -S /tmp/logical.sock -uroot -proot
mysql> use mysql;
mysql> GRANT ALL ON *.* TO 'root'@'cluster' IDENTIFIED BY 'root';
mysql> UPDATE user SET Grant_priv='Y' WHERE User='root' AND Host='cluster';
mysql> exit

//MySQLの停止
#kill -TERM 'cat /global/data/mysql/data/mysqld.pid'

//Solaris Cluster用テストデータベースの用意
# ksh /opt/SUNWscmys/util/mysql_register -f /global/config/mysql_config

//リソースの登録
# ksh /opt/SUNWscmys/util/ha_mysql_register -f /global/config/ha_mysql_config

//リソースのオンライン
#clresource enable my-rs

HA Tomcatの設定

#cat /global/config/env.ksh
#!/usr/bin/ksh
JAVA_HOMME=/usr/jdk/jdk1.5.0_13
CATALINA_HOME=/opt/coolstack/tomcat
export JAVA_HOME
export CATALINA_HOME
export PATH=$JAVA_HOME/bin:$PATH

//sctomcat_config(→参考4)、pfile(→参考5)ファイルを作成
#cd /opt/SUNWsctomcat/util

//リソースの登録
#./sctomcat_register -f /global/config/sctomcat_config

//リソースをオンラインにする

#clresource enable tom-rs

リソースグループの起動とリソースグループ、リソースの確認方法

 こうして設定手順を見ていくと、いずれも、clresourcegroup(1CL)、clresource(1CL)コマンドのデータサービスを管理するコマンドとそのサブコマンドから成り立っていることが分かります。実際に試してみると、直感的に操作することができるでしょう。なお、リソースグループの起動など、主要なコマンドは下記の通りです。

  コマンド
リソースグループの起動 #clresourcegrup online my-rg
リソースグループの停止 #clresourcegroup offline my-rg
リソースグループの状態の確認 #clresourcegroup status
リソースタイプの状態の確認 #clresouce status

Apache Rollerの設定

 あとはhttp://sdc.sun.co.jp/solaris/articles/roller_setup.htmlを参考に、Apache Rollerを配備してみてください。これまでの記事も参考になるでしょう。

 以上で、Solaris Clusterを用いたシングルクラスタでのApache Rollerの設定は終了です。

 今回は、Solaris Cluster Expressを使い、シングルノードでHAエージェントを試してみました。2ノードのクラスタリングやSolaris Containerを利用したクラスタリングなど、ここでは紹介しきれませんでしたが、Solaris Cluster Expressが備える機能はほかにもありますが、まずは、シングルノードでインストールし、さまざまなコマンドを試していただければと思います。

 最後にお知らせとして、Solaris Clusterのコアソースが2008年5月29日にオープンソースになりました。ユーザーとして利用するだけでなく、ぜひ、HA Clustersコミュニティにも参加してみてください。OpenHA Clusterの使い方を共有し、コミュニティを大きくしていきましょう。

 次回は、OpenSolarisにおけるトラブルシュートについて紹介していきます。


前のページへ 1|2       

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。