MySQL Clusterの検証をIBM(Softlayer)さん、株式会社インフィニットループさんと共同で行って、
結果を先日のCEDECで発表した時の資料です。インフィニットループさんがOpenSourceのゲームで検証してくれているので、内容的には参考になるかと思います。

1. MySQL Clusterを稼働させるにはネットワークが非常に重要
2. MySQL Clusterを稼働させる場合、仮想環境のCommit Ratioがコントロール出来ない場合はベアメタルが良い。
3. 仮想、ベアメタル共にSSDを利用していてもISCSIよりもやはりローカルの方が断然良い。
4. MaxNoOfExecutionThreadsより、ThreadConfigで丁寧に調整した方がパフォーマンス良い(この検証では1.2倍)
5. 今回のSYSBENCH0.5での検証では、データの偏りがあったので思うようにパフォーマンスが出なかった。(パーティションで対応可能)
6・ Sysbench0.5のOLTP R/Wの処理は、5割程がMySQL Cluster向きで残りの5割はInnDB向きの処理。(データノードを跨る処理が多かった)

今回は2週間でしたが、もう少し時間があればより最適なパラメータ構成を設定出来たかと思います。
皆さんも利用する場合は、事前に最適なパラメータ確認を実施して下さい。

MySQL Cluster Community Edition Download
http://dev.mysql.com/downloads/cluster/

Commercial Edition追加ツールとサポート
https://www-jp.mysql.com/products/cluster/


MYSQL5.6も近い将来リリースされるので再度基本レビューしておく。

確認したMYSQLバージョン

mysql> select @@version;
+------------+
| @@version  |
+------------+
| 5.5.29-log |
+------------+
1 row in set (0.00 sec)

MYSQLファイルパスについて
basedir MYSQLインストールディレクトリー
datadir データディレクトリー(mysql_install_dbスクリプト実行時に–datadir=/dataなどで指定可能)
/etc/my.cnfにて変更可能

	[root@HOME001 mysql]# cat /etc/my.cnf | grep innodb
	#innodb_data_home_dir = /usr/local/mysql/data
	#innodb_data_file_path = ibdata1:10M:autoextend
	#innodb_log_group_home_dir = /usr/local/mysql/data
	innodb_buffer_pool_size = 32M
	innodb_additional_mem_pool_size = 2M
	innodb_log_file_size =   8M
	innodb_log_buffer_size = 8M
	innodb_flush_log_at_trx_commit = 1
	innodb_lock_wait_timeout = 50
	[root@HOME001 mysql]#
mysql> show variables like '%dir%';
+-----------------------------------------+-------------------------------------------------------+
| Variable_name                           | Value                                                 |
+-----------------------------------------+-------------------------------------------------------+
| basedir                                 | /usr/local/mysql                                      |
| binlog_direct_non_transactional_updates | OFF                                                   |
| character_sets_dir                      | /usr/local/mysql-5.5.29-linux2.6-i686/share/charsets/ |
| datadir                                 | /usr/local/mysql/data/                                |
| innodb_data_home_dir                    |                                                       |
| innodb_log_group_home_dir               | ./                                                    |
| innodb_max_dirty_pages_pct              | 75                                                    |
| lc_messages_dir                         | /usr/local/mysql-5.5.29-linux2.6-i686/share/          |
| plugin_dir                              | /usr/local/mysql/lib/plugin/                          |
| slave_load_tmpdir                       | /tmp                                                  |
| tmpdir                                  | /tmp                                                  |
+-----------------------------------------+-------------------------------------------------------+
11 rows in set (0.00 sec)

mysql>

TCP/IP PORT・Socket接続について。
複数インスタンスを立ち上げる場合はPort、Socket、Datadirが被らないようにする必要あり。

mysql> show variables like '%socket%';
+---------------+-----------------+
| Variable_name | Value           |
+---------------+-----------------+
| socket        | /tmp/mysql.sock |
+---------------+-----------------+
1 row in set (0.00 sec)

mysql> show variables like '%port%';
+---------------------+-------+
| Variable_name       | Value |
+---------------------+-------+
| innodb_support_xa   | ON    |
| large_files_support | ON    |
| port                | 3306  |
| report_host         |       |
| report_password     |       |
| report_port         | 3306  |
| report_user         |       |
+---------------------+-------+
7 rows in set (0.01 sec)

mysql>

コネクションに関しては、Default値がバージョンによっても異なるので、
確認して不足している場合は適宜値を変更する必要があります。
Java EE, RubyなどのようにコネクションPoolする場合とPHPなどのように
都度接続する場合など調整方法も変更する必要があると思います。
MSSQLなどを利用している場合も同様に.Netやサーバー側のPool設定
またはLoad Balancerなどの調整なども環境によっては必要になると思います。

mysql> show variables like '%connection%';
+--------------------------+-----------------+
| Variable_name            | Value           |
+--------------------------+-----------------+
| character_set_connection | utf8            |
| collation_connection     | utf8_general_ci |
| max_connections          | 151             |
| max_user_connections     | 0               |
+--------------------------+-----------------+
4 rows in set (0.00 sec)

mysql>

既定のストレージエンジンについて
CREATE TABLE文実行時にENGINE=MyISAMなどで指定する事も可能。

mysql> show variables like '%storage%';
+------------------------+--------+
| Variable_name          | Value  |
+------------------------+--------+
| default_storage_engine | InnoDB |
| storage_engine         | InnoDB |
+------------------------+--------+
2 rows in set (0.00 sec)

mysql>

ログファイルについて。
log_binに関しては、リカバリーやレプリケーションで必須なので設定。

mysql> show variables like '%log%';
+-----------------------------------------+-----------------------------------------------+
| Variable_name                           | Value                                         |
+-----------------------------------------+-----------------------------------------------+
| back_log                                | 50                                            |
| binlog_cache_size                       | 32768                                         |
| binlog_direct_non_transactional_updates | OFF                                           |
| binlog_format                           | MIXED                                         |
| binlog_stmt_cache_size                  | 32768                                         |
| expire_logs_days                        | 7                                             |
| general_log                             | OFF                                           |
| general_log_file                        | /usr/local/mysql/data/HOME001.log             |
| innodb_flush_log_at_trx_commit          | 1                                             |
| innodb_locks_unsafe_for_binlog          | OFF                                           |
| innodb_log_buffer_size                  | 8388608                                       |
| innodb_log_file_size                    | 8388608                                       |
| innodb_log_files_in_group               | 2                                             |
| innodb_log_group_home_dir               | ./                                            |
| innodb_mirrored_log_groups              | 1                                             |
| log                                     | OFF                                           |
| log_bin                                 | ON                                            |
| log_bin_trust_function_creators         | OFF                                           |
| log_error                               | /usr/local/mysql/data/HOME001.localdomain.err |
| log_output                              | FILE                                          |
| log_queries_not_using_indexes           | OFF                                           |
| log_slave_updates                       | OFF                                           |
| log_slow_queries                        | OFF                                           |
| log_warnings                            | 1                                             |
| max_binlog_cache_size                   | 18446744073709547520                          |
| max_binlog_size                         | 1073741824                                    |
| max_binlog_stmt_cache_size              | 18446744073709547520                          |
| max_relay_log_size                      | 0                                             |
| relay_log                               |                                               |
| relay_log_index                         |                                               |
| relay_log_info_file                     | relay-log.info                                |
| relay_log_purge                         | ON                                            |
| relay_log_recovery                      | OFF                                           |
| relay_log_space_limit                   | 0                                             |
| slow_query_log                          | OFF                                           |
| slow_query_log_file                     | /usr/local/mysql/data/HOME001-slow.log        |
| sql_log_bin                             | ON                                            |
| sql_log_off                             | OFF                                           |
| sync_binlog                             | 0                                             |
| sync_relay_log                          | 0                                             |
| sync_relay_log_info                     | 0                                             |
+-----------------------------------------+-----------------------------------------------+
41 rows in set (0.00 sec)

mysql>

mysql> show variables like '%bin%';
+-----------------------------------------+----------------------+
| Variable_name                           | Value                |
+-----------------------------------------+----------------------+
| binlog_cache_size                       | 32768                |
| binlog_direct_non_transactional_updates | OFF                  |
| binlog_format                           | MIXED                |
| binlog_stmt_cache_size                  | 32768                |
| innodb_locks_unsafe_for_binlog          | OFF                  |
| log_bin                                 | ON                   |
| log_bin_trust_function_creators         | OFF                  |
| max_binlog_cache_size                   | 18446744073709547520 |
| max_binlog_size                         | 1073741824           |
| max_binlog_stmt_cache_size              | 18446744073709547520 |
| sql_log_bin                             | ON                   |
| sync_binlog                             | 0                    |
+-----------------------------------------+----------------------+
12 rows in set (0.00 sec)

mysql>

遅いQueryを早期発見してDBを安定稼動させ続ける為に必要です。
設定を有効にしておきましょう。
オンラインでも設定可能ですが再起動に備えて/etc/my.cnfに設定入れておくと良い。

mysql> show variables like '%slow%';
+---------------------+----------------------------------------+
| Variable_name       | Value                                  |
+---------------------+----------------------------------------+
| log_slow_queries    | OFF                                    |
| slow_launch_time    | 2                                      |
| slow_query_log      | OFF                                    |
| slow_query_log_file | /usr/local/mysql/data/HOME001-slow.log |
+---------------------+----------------------------------------+
4 rows in set (0.00 sec)

mysql> SET GLOBAL log_slow_queries = 1;
Query OK, 0 rows affected, 1 warning (0.39 sec)

mysql> show variables like '%slow%';
+---------------------+----------------------------------------+
| Variable_name       | Value                                  |
+---------------------+----------------------------------------+
| log_slow_queries    | ON                                     |
| slow_launch_time    | 2                                      |
| slow_query_log      | ON                                     |
| slow_query_log_file | /usr/local/mysql/data/HOME001-slow.log |
+---------------------+----------------------------------------+
4 rows in set (0.00 sec)

mysql>

設定は反映されるかWarningに以下のメッセージが出るので、
以降は”SET GLOBAL slow_query_log = 1;”コマンドで有効に設定する。

mysql> show warnings;
+---------+------+-------------------------------------------------------------------------------------------------------------------+
| Level   | Code | Message                                                                                                           |
+---------+------+-------------------------------------------------------------------------------------------------------------------+
| Warning | 1287 | '@@log_slow_queries' is deprecated and will be removed in a future release. Please use '@@slow_query_log' instead |
+---------+------+-------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

mysql>

SLOWログの閾値を設定する。
Default10秒なので1秒に変更するが再起動が必要。
規定値として1秒に設定しておいて、I/O負荷状況や必要に応じて
”log_slow_queries”でON・OFFを切り替えるのが良いかと思う。

mysql> show variables like '%long%';
+---------------------------------------------------+-----------+
| Variable_name                                     | Value     |
+---------------------------------------------------+-----------+
| long_query_time                                   | 10.000000 |
| max_long_data_size                                | 1048576   |
| performance_schema_events_waits_history_long_size | 10000     |
+---------------------------------------------------+-----------+
3 rows in set (0.00 sec)

mysql> set global long_query_time = 1;
Query OK, 0 rows affected (0.00 sec)

mysql> show variables like '%long%';
+---------------------------------------------------+-----------+
| Variable_name                                     | Value     |
+---------------------------------------------------+-----------+
| long_query_time                                   | 10.000000 |
| max_long_data_size                                | 1048576   |
| performance_schema_events_waits_history_long_size | 10000     |
+---------------------------------------------------+-----------+
3 rows in set (0.00 sec)

mysql>

SLOWログの設定を設定ファイルに入れて再起動。
long_query_timeはマイクロ秒単位で設定可能(例:long_query_time=0.5)

[root@HOME001 mysql]# vi /etc/my.cnf
[root@HOME001 mysql]# cat /etc/my.cnf | egrep -i "slow|long"
# In this file, you can use all long options that a program supports.
slow_query_log=ON
slow_query_log_file=home001-mysql-slow.log
long_query_time=1
[root@HOME001 mysql]#


mysql> show variables like '%slow%';
+---------------------+------------------------+
| Variable_name       | Value                  |
+---------------------+------------------------+
| log_slow_queries    | ON                     |
| slow_launch_time    | 2                      |
| slow_query_log      | ON                     |
| slow_query_log_file | home001-mysql-slow.log |
+---------------------+------------------------+
4 rows in set (0.00 sec)

mysql>

mysql> show variables like '%long%';
+---------------------------------------------------+----------+
| Variable_name                                     | Value    |
+---------------------------------------------------+----------+
| long_query_time                                   | 1.000000 |
| max_long_data_size                                | 1048576  |
| performance_schema_events_waits_history_long_size | 10000    |
+---------------------------------------------------+----------+
3 rows in set (0.00 sec)

mysql> 

Fusion-IOなどの高性能のディスクも出てきましたが、
メモリーの方が高速である事は変わりないのでパフォーマンスに影響ある
innodb_buffer_pool_sizeを適切に設定しInnoDB内のデータ領域を
メモリー内に保持する必要があります。
サーバーを1つのMYSQLインスタンス専用として利用している場合は、
物理メモリーサイズの60%~80%程度を割り当てて様子を見て調整すれば良いようです。
Linuxの古いカーネルなどを利用している場合は、InnoDBログサイズなどが大きく
ファイルシステムのキャッシュから圧迫される事でSwapが頻発してしまう可能性があるそうです。
残りのメモリーは、OSやアプリケーション接続スレッドなどに利用される。
※ 参考:unmap_mysql_logs https://github.com/yoshinorim/unmap_mysql_logs
※ Swapの確認に関しては下に追記しておきます。

mysql> show variables like '%buffer_pool%';
+------------------------------+----------+
| Variable_name                | Value    |
+------------------------------+----------+
| innodb_buffer_pool_instances | 1        |
| innodb_buffer_pool_size      | 33554432 |
+------------------------------+----------+
2 rows in set (0.01 sec)

mysql>

MySQL innodb_flush_method = O_DIRECTに関してネットで確認してみると
検証されている方も沢山いて非常に参考になります。
全ての環境でパフォーマンスが上がる訳では無さそうなので検証してしてみる必要あり。

MySQL innodb_flush_method = O_DIRECTを設定するとダイレクトI/OというOSの機能が有効になります。
ダイレクトI/Oを利用するとInnoDBのメモリー領域とディスク間のデータのやりとりに(InnoDB Buffer<->Disk)、
OSのファイルシステムキャッシュを利用しないI/O方式になるとの事。
※ オーバーヘット増:Disk -> OS Page Cache -> InnoDB Buffer
※ オーバーヘット減:Disk -> InnoDB Buffer
※ メモリーが多い環境で有効との事。

mysql> show variables like '%flush%';
+--------------------------------+-------+
| Variable_name                  | Value |
+--------------------------------+-------+
| flush                          | OFF   |
| flush_time                     | 0     |
| innodb_adaptive_flushing       | ON    |
| innodb_flush_log_at_trx_commit | 1     |
| innodb_flush_method            |       |
+--------------------------------+-------+
5 rows in set (0.00 sec)

mysql>

innodb_data_file_pathパラメーターに関しては、
データファイルの初期サイズやディレクトリーを指定する為に利用。
データファイルの拡張が頻繁に発生する環境では予めファイルサイズを大きめに取って、
ユーザーがサイトを利用している間にファイル拡張が発生して
パフォーマンスが落ちないようにしておく方が良いかと思います。

mysql> show variables like '%innodb_data%';
+-----------------------+------------------------+
| Variable_name         | Value                  |
+-----------------------+------------------------+
| innodb_data_file_path | ibdata1:10M:autoextend |
| innodb_data_home_dir  |                        |
+-----------------------+------------------------+
2 rows in set (0.00 sec)

innodb_autoextend_incrementがautoextendで拡張する拡張単位を指定します。
Defaultでは8MB単位になっているので必要に応じて変更。

mysql> show variables like '%innodb_autoextend%';
+-----------------------------+-------+
| Variable_name               | Value |
+-----------------------------+-------+
| innodb_autoextend_increment | 8     |
+-----------------------------+-------+
1 row in set (0.00 sec)

mysql> set global innodb_autoextend_increment = 10;
Query OK, 0 rows affected (0.00 sec)

mysql> show variables like '%innodb_autoextend%';
+-----------------------------+-------+
| Variable_name               | Value |
+-----------------------------+-------+
| innodb_autoextend_increment | 10    |
+-----------------------------+-------+
1 row in set (0.00 sec)

mysql>

再起動で変更が消えてしまうので、my.cnfに設定を追記しておくこと。

[root@HOME001 mysql]# vi /etc/my.cnf
[root@HOME001 mysql]# cat /etc/my.cnf | grep innodb_autoextend_increment
innodb_autoextend_increment = 10
[root@HOME001 mysql]# /etc/init.d/mysql restart
Shutting down MySQL..                                      [  OK  ]
Starting MySQL..                                           [  OK  ]
[root@HOME001 mysql]#

innodb_log_file_sizeはInnoDBのログファイルサイズを指定出来ます。
OracleのREDOログやMS SQLのT-Logと同じなのでクラッシュリカバリーでも利用されます。
大きいとログスイッチの頻度やチェックポイント処理を下げる事が出来ますが、
多くのトランザクションログが一つのファイルに含まれて障害発生時にログの破損やリカバリー処理に
時間がかかり困る場合もあるので、パフォーマンスとリカバリーの観点から適切なサイズを選択する必要があります。

innodb_log_file_size
小さい: リカバリー高速だが更新処理が遅くなる。
大きい: 高速だがリカバリーが遅い。ログファイルの破損の注意。

mysql> show variables like '%innodb_log%';
+---------------------------+---------+
| Variable_name             | Value   |
+---------------------------+---------+
| innodb_log_buffer_size    | 8388608 |
| innodb_log_file_size      | 8388608 |
| innodb_log_files_in_group | 2       |
| innodb_log_group_home_dir | ./      |
+---------------------------+---------+
4 rows in set (0.00 sec)

mysql>


安定性からMYSQLコンパイル済みのバイナリーを利用してますが、
コンパイル済みMYSQLのConfigオプションを確認したい場合は以下のファイルを確認。


[root@HOME001 docs]# tail -n 100 /usr/local/mysql/docs/INFO_BIN
===== Information about the build process: =====
Build was run at 2012-12-10 07:35:23 on host 'loki02'

Build was done on  Linux-2.6.9-89.ELsmp using i686
Build was done using cmake 2.8.5

===== Compiler flags used (from the 'sql/' subdirectory): =====
# compile C with /usr/local/gcc-4.3.4/bin/gcc
# compile CXX with /usr/local/gcc-4.3.4/bin/gcc
C_FLAGS =  -fPIC -Wall -O3 -g -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing -DDBUG_OFF -DMY_PTHREAD_FASTMUTEX=1 -I/export/home/pb2/build/sb_0-7814961-1355120555.52/release/include -I/export/home/pb2/build/sb_0-7814961-1355120555.52/mysql-5.5.29/include -I/export/home/pb2/build/sb_0-7814961-1355120555.52/mysql-5.5.29/sql -I/export/home/pb2/build/sb_0-7814961-1355120555.52/mysql-5.5.29/regex -I/export/home/pb2/build/sb_0-7814961-1355120555.52/mysql-5.5.29/zlib -I/export/home/pb2/build/sb_0-7814961-1355120555.52/mysql-5.5.29/extra/yassl/include -I/export/home/pb2/build/sb_0-7814961-1355120555.52/mysql-5.5.29/extra/yassl/taocrypt/include -I/export/home/pb2/build/sb_0-7814961-1355120555.52/release/sql    -DHAVE_YASSL -DYASSL_PURE_C -DYASSL_PREFIX -DHAVE_OPENSSL -DMULTI_THREADED
C_DEFINES = -DHAVE_CONFIG_H -DMYSQL_SERVER -DHAVE_EVENT_SCHEDULER
CXX_FLAGS = -fno-exceptions  -fPIC -Wall -Wno-unused-parameter -fno-implicit-templates -fno-exceptions -fno-rtti -O3 -g -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing -DDBUG_OFF -DMY_PTHREAD_FASTMUTEX=1 -I/export/home/pb2/build/sb_0-7814961-1355120555.52/release/include -I/export/home/pb2/build/sb_0-7814961-1355120555.52/mysql-5.5.29/include -I/export/home/pb2/build/sb_0-7814961-1355120555.52/mysql-5.5.29/sql -I/export/home/pb2/build/sb_0-7814961-1355120555.52/mysql-5.5.29/regex -I/export/home/pb2/build/sb_0-7814961-1355120555.52/mysql-5.5.29/zlib -I/export/home/pb2/build/sb_0-7814961-1355120555.52/mysql-5.5.29/extra/yassl/include -I/export/home/pb2/build/sb_0-7814961-1355120555.52/mysql-5.5.29/extra/yassl/taocrypt/include -I/export/home/pb2/build/sb_0-7814961-1355120555.52/release/sql    -DHAVE_YASSL -DYASSL_PURE_C -DYASSL_PREFIX -DHAVE_OPENSSL -DMULTI_THREADED
CXX_DEFINES = -DHAVE_CONFIG_H -DMYSQL_SERVER -DHAVE_EVENT_SCHEDULER

Pointer size: 4

===== Feature flags used: =====
-- Cache values
CMAKE_BUILD_TYPE:STRING=RelWithDebInfo
CMAKE_INSTALL_PREFIX:PATH=/usr/local/mysql
COMMUNITY_BUILD:BOOL=ON
ENABLED_PROFILING:BOOL=ON
ENABLE_DEBUG_SYNC:BOOL=ON
ENABLE_GCOV:BOOL=OFF
FEATURE_SET:STRING=community
INSTALL_LAYOUT:STRING=STANDALONE
MYSQL_DATADIR:PATH=/usr/local/mysql/data
MYSQL_MAINTAINER_MODE:BOOL=OFF
WITH_ARCHIVE_STORAGE_ENGINE:BOOL=ON
WITH_BLACKHOLE_STORAGE_ENGINE:BOOL=ON
WITH_DEBUG:BOOL=OFF
WITH_EMBEDDED_SERVER:BOOL=ON
WITH_EXAMPLE_STORAGE_ENGINE:BOOL=OFF
WITH_EXTRA_CHARSETS:STRING=all
WITH_FEDERATED_STORAGE_ENGINE:BOOL=ON
WITH_INNOBASE_STORAGE_ENGINE:BOOL=ON
WITH_LIBEDIT:BOOL=OFF
WITH_LIBWRAP:BOOL=OFF
WITH_PARTITION_STORAGE_ENGINE:BOOL=ON
WITH_PERFSCHEMA_STORAGE_ENGINE:BOOL=ON
WITH_PIC:BOOL=ON
WITH_READLINE:BOOL=ON
WITH_SSL:STRING=bundled
WITH_UNIT_TESTS:BOOL=ON
WITH_VALGRIND:BOOL=OFF
WITH_ZLIB:STRING=bundled

===== EOF =====
[root@HOME001 docs]#


参考:
MySQL 5.1のスロークエリログ
MySQL 5.1のmysqldumpslowで快速チューニング
MySQL innodb_flush_method = O_DIRECTの検討
非同期I/Oの謎
初期化パラメータ filesystemio_options の値によってI/Oに関するシステムコールがどのように変化するか
Oracleの同期IOと非同期IOについて

その他パフォーマンス関連調整項目:
MySQL InnoDBストレージエンジンのチューニング(前編)
MySQL InnoDBストレージエンジンのチューニング(後編)

mysql> show variables like '%innodb_io_capacity%';
+--------------------+-------+
| Variable_name      | Value |
+--------------------+-------+
| innodb_io_capacity | 200   |
+--------------------+-------+
1 row in set (0.00 sec)

mysql>


mysql> show variables like '%innodb_doublewrite';
+--------------------+-------+
| Variable_name      | Value |
+--------------------+-------+
| innodb_doublewrite | ON    |
+--------------------+-------+
1 row in set (0.00 sec)

mysql> show variables like '%_io_threads';
+-------------------------+-------+
| Variable_name           | Value |
+-------------------------+-------+
| innodb_read_io_threads  | 4     |
| innodb_write_io_threads | 4     |
+-------------------------+-------+
2 rows in set (0.00 sec)

mysql>

Swapに関しての確認メモ
以下のようなコマンドで確認する事が出来る。

[root@HOME001 ~]#  /sbin/swapon -s
Filename                                Type            Size    Used    Priority
/dev/dm-1                               partition       4161528 0       -1
[root@HOME001 ~]#

[root@HOME001 ~]# cat /proc/swaps
Filename                                Type            Size    Used    Priority
/dev/dm-1                               partition       4161528 0       -1
[root@HOME001 ~]#


[root@HOME001 ~]#  cat /proc/meminfo
MemTotal:        1938948 kB
MemFree:         1679616 kB
Buffers:           10584 kB
Cached:           149116 kB
SwapCached:            0 kB
Active:            55040 kB
Inactive:         140456 kB
Active(anon):      36056 kB
Inactive(anon):        4 kB
Active(file):      18984 kB
Inactive(file):   140452 kB
Unevictable:           0 kB
Mlocked:               0 kB
HighTotal:       1189716 kB
HighFree:         995844 kB
LowTotal:         749232 kB
LowFree:          683772 kB
SwapTotal:       4161528 kB
SwapFree:        4161528 kB
Dirty:                 8 kB
Writeback:             0 kB
AnonPages:         35816 kB
Mapped:            13712 kB
Shmem:               264 kB
Slab:              37544 kB
SReclaimable:       7596 kB
SUnreclaim:        29948 kB
KernelStack:        1056 kB
PageTables:         1688 kB
NFS_Unstable:          0 kB
Bounce:                0 kB
WritebackTmp:          0 kB
CommitLimit:     5131000 kB
Committed_AS:     341716 kB
VmallocTotal:     122880 kB
VmallocUsed:       13716 kB
VmallocChunk:      90828 kB
HugePages_Total:       0
HugePages_Free:        0
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB
DirectMap4k:       10232 kB
DirectMap2M:      897024 kB
[root@HOME001 ~]#




[root@HOME001 ~]# free -kt
             total       used       free     shared    buffers     cached
Mem:       1938948     259580    1679368          0      10836     149104
-/+ buffers/cache:      99640    1839308
Swap:      4161528          0    4161528
Total:     6100476     259580    5840896
[root@HOME001 ~]#


[root@HOME001 ~]# free -mt
             total       used       free     shared    buffers     cached
Mem:          1893        253       1640          0         10        145
-/+ buffers/cache:         97       1796
Swap:         4063          0       4063
Total:        5957        253       5704
[root@HOME001 ~]#


[root@HOME001 ~]# df -h /dev/mapper/vg_home001-lv_swap
Filesystem            Size  Used Avail Use% マウント位置
-                     940M  260K  940M   1% /dev
[root@HOME001 ~]# 

[root@HOME001 ~]# vmstat 10 -S M
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 0  0      0   1639     10    145    0    0    21    10   27   64  0  0 98  1  0
 0  0      0   1639     10    145    0    0     0     0   10   41  0  0 100  0  0




rsyslogとsyslogの動作確認。
最近インストールした新しいバージョンのCentOSにはrsyslogがインストールされていて、
古いシステムにはsyslogがインストールされていたので簡易互換性確認。
rsyslogは通信にTCPを利用するので、UDPで通信するsyslogよりも通信が安定しているとの事。

SYSLOGサーバー側(RSYSLOG)

[root@HOME001 log]# uname -a
Linux HOME001.localdomain 2.6.32-279.el6.i686 #1 SMP Fri Jun 22 10:59:55 UTC 2012 i686 i686 i386 GNU/Linux
[root@HOME001 log]#

[root@HOME001 log]# ps -awef|grep syslog | grep -v grep
root      3290     1  0 15:12 ?        00:00:00 /sbin/rsyslogd -i /var/run/syslogd.pid -r -m 0
[root@HOME001 log]# /sbin/rsyslogd -v
rsyslogd 5.8.10, compiled with:
        FEATURE_REGEXP:                         Yes
        FEATURE_LARGEFILE:                      Yes
        GSSAPI Kerberos 5 support:              Yes
        FEATURE_DEBUG (debug build, slow code): No
        32bit Atomic operations supported:      Yes
        64bit Atomic operations supported:      Yes
        Runtime Instrumentation (slow code):    No

See http://www.rsyslog.com for more information.
[root@HOME001 log]#


[root@HOME001 log]# egrep 514 /etc/rsyslog.conf
#$UDPServerRun 514
$UDPServerRun 514
#$InputTCPServerRun 514
$InputTCPServerRun 514
# remote host is: name/ip:port, e.g. 192.168.0.1:514, port optional
#*.* @@remote-host:514
[root@HOME001 log]#

[root@HOME001 log]# cat /etc/sysconfig/rsyslog
# Options for rsyslogd
# Syslogd options are deprecated since rsyslog v3.
# If you want to use them, switch to compatibility mode 2 by "-c 2"
# See rsyslogd(8) for more details
# SYSLOGD_OPTIONS="-c 5"
SYSLOGD_OPTIONS="-r -m 0"
[root@HOME001 log]#

SYSLOGクライアント側(SYSLOG)

[root@HOME002 ~]# uname -a
Linux HOME002.localdomain 2.6.18-53.1.21.el5 #1 SMP Tue May 20 09:34:18 EDT 2008 i686 i686 i386 GNU/Linux
[root@HOME002 ~]#

[root@HOME002 ~]# /sbin/syslogd -v
syslogd 1.4.1
[root@HOME002 ~]#

[root@HOME002 ~]# cat /etc/syslog.conf | grep 192.168.11.10
*.info;mail.none;authpriv.none;cron.none                @192.168.11.10
authpriv.*                                              @192.168.11.10
[root@HOME002 ~]# 

SYSLOGクライアントからイベントを送信

[root@HOME002 ~]# logger -p user.info "TEST Message01" (ファシリティ:user、プライオリティ:info を指定テスト)
[root@HOME002 ~]# logger -p user.info "TEST Message02" (ファシリティ:user、プライオリティ:info を指定テスト)
[root@HOME002 ~]# logger -p user.info "TEST Message03" (ファシリティ:user、プライオリティ:info を指定テスト)
[root@HOME002 ~]#

SYSLOGサーバー側

[root@HOME001 log]# tail -f /var/log/messages
Jan  2 18:33:37 home002 root: TEST Message01 (ファシリティ:user、プライオリティ:info を指定テスト)
Jan  2 18:33:42 home002 root: TEST Message02 (ファシリティ:user、プライオリティ:info を指定テスト)
Jan  2 18:33:46 home002 root: TEST Message03 (ファシリティ:user、プライオリティ:info を指定テスト)

基本動作確認
test
その他イベントもsecure,messageログに記録されている事を確認済み。

参考:
http://www.imamura.biz/blog/srv/syslog/9
http://hp.vector.co.jp/authors/VA022911/tec/centos/syslog.htm


statusコマンドで、現在接続しているDBの情報を確認。

mysql>status;
————–
mysql Ver 14.14 Distrib 5.1.30, for pc-linux-gnu (i686) using readline 5.1

Connection id: 1
Current database:
Current user: root@localhost
SSL: Not in use
Current pager: stdout
Using outfile: ”
Using delimiter: ;
Server version: 5.1.30 MySQL Community Server (GPL)
Protocol version: 10
Connection: Localhost via UNIX socket
Server characterset: utf8
Db characterset: utf8
Client characterset: utf8
Conn. characterset: utf8
UNIX socket: /tmp/mysql.sock
Uptime: 10 min 44 sec

Threads: 1 Questions: 12 Slow queries: 0 Opens: 17 Flush tables: 1 Open tab
les: 4 Queries per second avg: 0.18
————–

mysql>

status

status