第8回 なぜクラスタリングにSELinuxを使わないのか!


面 和毅
サイオステクノロジー株式会社
OSSテクノロジーセンター
開発支援グループ
グループマネージャー
2008/4/16


 クラスタリングの動作を確認する

 すべての設定が終わったら、プライマリ/セカンダリの両方で

# /etc/init.d/heartbeat start

としてHeartbeatを起動します。その後、

# /usr/sbin/crm_mon

でステータスをチェックします。Heartbeatの起動後、ステータスチェックにしばらく時間がかかるようですが、しばらく(筆者のノートPC上では5分程度)たつとリスト5のようにクラスタリングを構成しているノードの情報と、リソース情報、現在リソースを提供しているノードの情報(リスト5ではセカンダリ)が表示されます。

[root@primary ~]# /usr/sbin/crm_mon
Defaulting to one-shot mode
You need to have curses available at compile time to enable console mode


============
Last updated: Fri Mar 28 22:58:59 2008
Current DC: secondary (1d19af62-ee33-490a-91e3-5353cdd0d5c3)
2 Nodes configured.
1 Resources configured.
============

Node: secondary (1d19af62-ee33-490a-91e3-5353cdd0d5c3): online
Node: primary (2d343f83-10fa-4ae9-8b6a-90907164cc37): online

Resource Group: group_apache
     ipaddr        (heartbeat::ocf:IPaddr): Started secondary
     fs0 (heartbeat::ocf:Filesystem): Started secondary
     apache      (lsb:httpd): Started secondary

リスト5 セカンダリのノード情報などを取得

 また、クライアント上のWebブラウザから、http://192.168.135.100/testdir/index.htmlにアクセスすると、ページが表示されます。

図3 テストページが表示された様子

 現在リソースを提供しているノードがセカンダリと分かりましたので、この状態でセカンダリマシンを、

# shutdown -h now

としてシャットダウンします。セカンダリマシンがシャットダウンした直後では図4のようにクライアントからWebコンテンツへのアクセスに失敗しますが、しばらくすると元のようにアクセスができます。

図4 シャットダウン直後はアクセスに失敗する

 その際に、プライマリ上で、

# /usr/sbin/crm_mon

を実行すると、リスト6のようにセカンダリがオフラインになり、すべてのリソースがプライマリ上で動作していることが分かります。

[root@primary ~]# /usr/sbin/crm_mon
Defaulting to one-shot mode
You need to have curses available at compile time to enable console mode


============
Last updated: Fri Mar 28 23:02:34 2008
Current DC: primary (2d343f83-10fa-4ae9-8b6a-90907164cc37)
2 Nodes configured.
1 Resources configured.
============

Node: secondary (1d19af62-ee33-490a-91e3-5353cdd0d5c3): OFFLINE
Node: primary (2d343f83-10fa-4ae9-8b6a-90907164cc37): online

Resource Group: group_apache
     ipaddr      (heartbeat::ocf:IPaddr): Started primary
     fs0 (heartbeat::ocf:Filesystem): Started primary
     apache     (lsb:httpd): Started primary

リスト6 すべてのリソースがプライマリで動いていることが分かる

 また、httpdはhttpd_tドメインで動作しており、/var/www/html/testdir以下もhttpd_sys_content_tタイプが付けられていることが分かります。

[root@primary ~]# ps axZ | grep http
root:system_r:httpd_t    2945 ?    Ss 0:00 /usr/sbin/httpd
root:system_r:httpd_t    2947 ?    S 0:00 /usr/sbin/httpd
root:system_r:httpd_t    2948 ?    S 0:00 /usr/sbin/httpd
root:system_r:httpd_t    2949 ?    S 0:00 /usr/sbin/httpd
root:system_r:httpd_t    2950 ?    S 0:00 /usr/sbin/httpd
root:system_r:httpd_t    2951 ?    S 0:00 /usr/sbin/httpd
root:system_r:httpd_t    2952 ?    S 0:00 /usr/sbin/httpd
root:system_r:httpd_t    2953 ?    S 0:00 /usr/sbin/httpd
root:system_r:httpd_t    2954 ?    S 0:00 /usr/sbin/httpd

リスト7 httpdはhttpd_tドメインで動作している


[root@primary ~]# ls -lZ /var/www/html
-rw-r--r-- root root root:object_r:httpd_sys_content_t index.html
drwxr-xr-x root root system_u:object_r:httpd_sys_content_t testdir

[root@primary ~]# ls -lZ /var/www/html/testdir
-rw-r--r-- root root system_u:object_r:httpd_sys_content_t index.html
drwxr-xr-x root root system_u:object_r:httpd_sys_content_t LIDS-JP
drwx------ root root system_u:object_r:httpd_sys_content_t lost+found

リスト8  testdir以下がhttpd_sys_content_tタイプとなっている


 静的コンテンツでは問題なし!

 以上のテスト結果から、CentOS 5.1+Heartbeat(extraパッケージ)を利用したクラスタリング環境では、SELinuxを有効にしていても、静的コンテンツを提供するApacheはきちんと動作することが確認できました。

 しかし、今回は動的コンテンツを確認していませんので、動的コンテンツを扱う場合にはさらに検証を行う必要があります。

 また、Apache以外のサービスのクラスタリングも(原理的には静的/動的を確認すれば同じになるはずですが)確認の必要があります。


 次回は動的コンテンツの確認を行いたいと思います。また、今回設定したシステムでSELinuxを有効にしてなぜきちんと動くのか、またどのようなときに動かなくなるのかを、検証結果を交えて解説したいと思います。

3/3
 

Index
なぜクラスタリングにSELinuxを使わないのか!
  Page1
クラスタリングとSELinux、相性はバッチリ……?
クラスタリング・Powered by SELinuxの検証環境
VMWare Serverを用いた共有ディスクの実現
  Page2
Heartbeatで実現するクラスタリング
SELinuxの設定はほぼデフォルトで
Page3
クラスタリングの動作を確認する
静的コンテンツでは問題なし!


Profile
面 和毅(おも かずき)

サイオステクノロジー株式会社
OSSテクノロジーセンター
開発支援グループ
グループマネージャー


学生時代よりUNIXに親しむ。1997年からサーバ構築およびセキュリティ全般を扱う仕事に従事、Linuxを使い始める。

現在はLIDSの普及活動に注力。LIDSユーザ会(LIDS-JP)の立ち上げやLIDS関連文書の日本語化、LIDSを用いたシステム構築の紹介などを行っている。また、サイオステクノロジーでビジネス面でのLIDSの普及活動に注力している。

2005年12月より、LIDS Teamに参加し、LIDSの公式な開発チームの一員として活動している。

スイッチ・オン! SELinux 連載インデックス


Security&Trust フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Security & Trust 記事ランキング

本日 月間