Category Archives: Linux

Linuxカーネルパラメータ一覧・標準設定 (CentOS 6)

Crystal_Clear_app_background

CentOS 6(RHEL6 クローンOS)のカーネルパラメータは「Basic Server」インストール時で約820項目あります。本ページでは、CentOS 6 各リリースのカーネルパラメータの一覧とデフォルト値をExcelファイルでダウンロードして確認できます。参考情報としてご活用下さい。

今回はHP ML110 G7にCentOS 6の各リリースをインストールして、カーネルパラメータの一覧とデフォルト値を確認しました。

Iperfの使用方法 (Linuxネットワーク帯域確認方法)

World Clock

ネットワーク帯域ベンチマークツール「Iperf」を用いて、サーバ間の実効ネットワーク帯域・ネットワーク転送性能を測定する際の手順メモです。

「Iperf」は、Server(Receiver)とClient(Sender)で詳細な条件を指定してTCP・UDPのネットワーク転送性能を測定できる優れたベンチマークツールです。Windows版も提供されており、LinuxサーバとWindowsサーバ・Windows PC間のネットワーク帯域を確認する用途でも利用できます。

Oracle ORIONの使用方法 (Linuxディスクベンチマーク)

120px-Crystal_Clear_app_database

Oracle社が提供するディスクIO性能ベンチマークツール「ORION」を用いて、Linux環境上でディスクのIO性能を測定する際の手順メモです。

「ORION」は、Oracle DatabaseのIO制御プログラムをベースにして作成されており、RDBMSの様々なワークロードパターンをシミュレートしてディスクIO性能を測定できる優れたベンチマークソフトです。Windows版・Linux版・Solaris版・AIX版・HP-UX版が提供されており、異なるプラットフォーム間でディスクIO性能を比較する用途でも利用できます。

Linuxファイルシステムベンチマーク第2回 ext3,ext4,JFS,ReiserFS,XFS,NILFS2

Crystal_Clear_mimetype_log

ext3ファイルシステムは、機能面・信頼性・性能面で非常にバランスの取れたファイルシステムであり、多数のディストリビューションで「標準のファイルシステム」として採用・サポートされてきました。現時点(2009年時点)では事実上、「Linux標準ファイルシステム」の地位を築いていると言っても過言ではありません。

しかしながら、Linux標準ファイルシステムのext3だけではなく、他ファイルシステムへの対応やサポートを売りにするディストリビューションも数多く登場しています。また、ext4やbtrfs等、次のLinux標準ファイルシステムと目されるファイルシステムも、現在、非常に活発に開発が進められています。このような状況の中、ext3から他のファイルシステムに乗り換える価値、他のファイルシステムを採用する価値はどの程度あるのでしょうか。

Linuxファイルシステムベンチマークの第2回は、カーネル2.6.30で有力な選択肢となる6つのファイルシステム、ext3、ext4、JFS、ReiserFS、XFS、NILFS2を対象に「bonnie++」を用いた性能ベンチマークを行い、複数のファイルシステムを性能面から比較してみました。

Linuxファイルシステムベンチマーク第1回 ext2,ext3,JFS,ReiserFS,XFS,NTFS

Crystal_Clear_mimetype_log

ext3ファイルシステムは、機能面・信頼性・性能面で非常にバランスの取れたファイルシステムであり、多数のディストリビューションで「標準のファイルシステム」として採用・サポートされてきました。現時点(2009年時点)では事実上、「Linux標準ファイルシステム」の地位を築いていると言っても過言ではありません。

しかしながら、Linux標準ファイルシステムのext3だけではなく、他ファイルシステムへの対応やサポートを売りにするディストリビューションも数多く登場しています。また、ext4やbtrfs等、次のLinux標準ファイルシステムと目されるファイルシステムも、現在、非常に活発に開発が進められています。

このような状況の中、ext3から他のファイルシステムに乗り換える価値、他のファイルシステムを採用する価値はどの程度あるのでしょうか。ファイルシステムのベンチマークツール「bonnie++」を用いて性能ベンチマークを行い、複数のファイルシステムを性能面から比較してみました。

Linux Tips – NFSサーバのポートを固定する設定方法

Crystal_Clear_device_nfs_mount

NFSクライアントとNFSサーバの間にファイアウォールを設置する構成では、ファイアウォールで通信許可の設定を行う都合上、NFSサーバの使用する全てのポートを固定する必要があります。ここでは、そのようなケースに対して有効な設定方法を紹介します。

例えば、インターネットから利用される一般的なシステムでは、「DMZ」を構成するために、Webサーバ等の公開サーバ(=NFSクライアント)を配置するネットワークセグメントと、NFSサーバを配置するネットワークセグメントの間に、ファイアウォール もしくは それを代替する機能を持つネットワーク機器を配置します。このようなシステム構成で有効な設定方法です。

Linuxファイルシステム比較 – ディスク容量使用効率編

120px-Crystal_Clear_action_view_multicolumn

システムの設計時にハードウェア構成のサイジングを行う際には、「ファイルシステムの実効ディスク容量」(= 物理ディスクの容量のうち実際に使用できる容量)を意識して、サーバの内蔵ディスクやディスクストレージのHDD構成を決定する必要があります。

これは、ファイルシステムにはユーザが使用する実データを格納する領域以外に、メタデータやジャーナルログ等を格納する領域が必要となるためです。

このページでは、openSUSE 10.3 で選択可能な主要ファイルシステム(vfat等は除く)を対象に、

  1. 特別なオプション無しで mkfs を実行した直後の df 結果
  2. 1KB/10KB/100KB/1000KB のファイルを、それぞれ10000個 作成した後の df 結果
  3. 1MB (1024KB) ファイルの最大作成可能数

を一覧にまとめていますので、参考にして頂ければと思います。

STREAMの使用方法 (Linuxメモリ帯域幅の計測方法)

Clock

メモリのバンド幅を計測するベンチマークツール「STREAM」を用いて、Linuxサーバの実効メモリ帯域幅(メモリバンド幅)・メモリ性能を計測する際の手順メモです。コンパイラはgccを使用しています。

「STREAM」は、簡単な手順でLinuxサーバやUNIXサーバの実効メモリ帯域幅・メモリ性能を計測できる優れたベンチマークツールです。ソースコードはOpenMPにも対応しており、OpenMPに対応したコンパイラを使用すれば、マルチスレッドで並列実行してメモリの限界性能を探ることもできます。

ハイパースレッドによるCPU性能向上効果検証 (Linux編)

120px-Crystal_Clear_app_kalarm

ハイパースレッドを設定することによって、アプリケーションでは実際にどの程度の性能向上が期待できるのでしょうか。今回は、無償で利用できるベンチマークソフト「姫野ベンチマーク」(略称:姫野ベンチ)を用いて、ハイパースレッドのON/OFFによるLinuxサーバのCPU性能向上効果を検証します。

次のような実行方法で、問題サイズ「M」の姫野ベンチを4並列で実行してCPU性能を計測します。姫野ベンチのインストール手順や基本的な実行方法等は、「姫野ベンチの使用方法・測定結果一覧 (Linux編)」を参照して下さい。

チップセットモデル図から考えるハードディスク性能比較

Crystal_Clear_app_hwinfo

たとえ多くのハードディスクを連ねてRAID構成を組みディスクストレージ構成のIO性能向上を計ったとしても、接続するインターフェースによって性能限界が存在します。ここでは、IAサーバのチップセットモデル図から、IDE、SCSI、NAS(NFS)、SAN(FC)等、接続インターフェースの違いによるHDDの性能比較について考えます。

例えば、NASを100BASE-TXのネットワークで利用した場合、IDEで接続するHDDよりIO性能が低いということは、NAS環境の導入・利用経験のある方なら容易に想像できると思います。Windowsサーバによるファイル共有環境を想像して頂いても感覚がつかめるでしょう。あくまで通信のオーバーヘッド等を考慮しない理論上の数値になりますが、現在最も普及しているIDE(Ultra ATA/100規格)の最大データ転送速度が「100MB/sec」であるのに対して、100BASE-TXの最大転送速度は「12.5MB/sec」です。

Linux HAクラスタソフトウェア一覧

Crystal_Clear_app_ksysguard

近年、IAサーバ+Linuxのシステム構成がミッションクリティカルな業務分野に進出するのに伴って、Linux上で動作するHAクラスタソフトウェアの製品市場も拡大してきました。これまで商用UNIXで実績を積んだHAクラスタ製品でも、次々とLinux版がリリースされています。システムを導入するユーザ企業やシステムを構築するSIerが、要件に応じてHAクラスタソフトウェアを選択できる時代になったと言えるでしょう。

HAクラスタソフトウェアの評価・選定は、システムの信頼性設計の中で非常に重要なプロセスです。次のような観点からシステムの要件に適したクラスタソフトウェアを選定することが重要です。

姫野ベンチの使用方法・測定結果一覧 (Linux編)

120px-Crystal_Clear_app_kalarm

無償で利用できるベンチマークソフト「姫野ベンチマーク」(略称:姫野ベンチ)を用いて、LinuxサーバのCPU性能・メモリ性能を測定する際の手順メモです。姫野ベンチの公式サイトからソースコードをダウンロードしてコンパイルします。コンパイラはgccを使用しています。

姫野ベンチとは「ポアッソン方程式解法をヤコビの反復法で解く場合に主要なループの処理速度を計る」ベンチマーク用プログラムで、CPUの性能だけではなくメモリの性能が処理速度に大きく影響する“メモリバウンドな”性能特性を持っています。

Linux Tips – bonnie++の使用方法

120px-Crystal_Clear_app_harddrive

ハードディスクベンチマークツール「bonnie++」を用いて、LinuxサーバのディスクIO性能を測定する際の手順メモです。bonnie++のバージョンは「1.03」を、コンパイラはgccを使用しています。

bonnie++を使用することで、シーケンシャルアクセス(read/write)、ランダムアクセス等の性能測定を一度に行うことができます。

なお、bonnie++ 1.03では、近年供給されているような高性能なハードディスクやSSDの性能測定用に使用することが想定されておらず、測定に掛かった時間が短過ぎる場合には、測定結果の表示が「+++++」「+++」となってしまう項目があります。このため、ソースを少し修正してからmakeします。

Linux Tips – RAMディスク(/dev/shm)のIO性能をチューニングに活用する方法

Memory

アプリケーションやプログラムのパフォーマンスが思うように上がらない場合、ハードディスクへのファイルIOがパフォーマンスのボトルネックになっているケースが多々あります。ここでは、そのようなケースに対して有効なチューニング方法の一つ、LinuxのRAMディスク(/dev/shm)を用いたパフォーマンスチューニングについて紹介します。

RAMディスクとは、メモリの一部の領域を「仮想的なハードディスク」として割り当てて利用するものです。Linuxには標準でtmpfs(/dev/shm)というRAMディスクの仕組みが組み込まれており、簡単にRAMディスクの領域の作成して利用することができます。

Linux Tips – HDDベンチマーク手順+性能測定結果一覧(hdparm,dd,bonnie++)

120px-Crystal_Clear_app_harddrive

システムのパフォーマンスが思うように上がらない場合、ハードディスクのIO性能がボトルネックになっているケースが多く見られます。

システムの環境構築が完了した後には、ハードディスクのIO性能を必ず測定しておきましょう。ここで紹介するHDDベンチマークを実行して、測定結果の妥当性を評価することによって、ほとんどのケースでディスクIO性能に起因する性能問題を未然に検知することが可能です。