この記事は、「#CloudComputing入門と実践 - Huawei Cloudコラム」に含まれており、この一連のブログ投稿は現在も更新されています。
関連する Huawei Cloud Yaoyun Server L インスタンスの評価記事のリストは次のとおりです。
- Huawei Cloud Yunyao Cloud Server L インスタンスの評価 | ゼロから始める: Yunyao Cloud Server L インスタンスの包括的な使用状況分析ガイド
- Huawei Cloud Yaoyun Server L インスタンスの評価 | 軽量アプリケーション サーバー対決: Geekbench に基づく Huawei Cloud Yaoyun Server L インスタンスのプロセッサ パフォーマンスの詳細な評価
- Huawei Cloud Yaoyun Server L インスタンスの評価 | 軽量アプリケーション サーバー ショーダウン: STREAM に基づく Huawei Cloud Yaoyun Server L インスタンスのメモリ パフォーマンスの詳細な評価 Huawei Cloud Yaoyun Server L インスタンスの評価 | 軽量アプリケーション サーバー ショーダウン: STREAM に基づく詳細な
評価fio Huawei Cloud Yaoyun Server L インスタンスのディスク パフォーマンス - [クラウドコンピューティング Huawei Cloud] 解決策: Huawei Cloud Yaoyun Server L インスタンスのイメージを置き換える方法
記事ディレクトリ
1. 評価の背景
この記事は前回の記事「Huawei Cloud Yao Cloud Server L インスタンスの評価 | 軽量アプリケーションサーバー対決: Geekbench に基づく Huawei Cloud Yao Cloud Server L インスタンスの徹底評価 」およびHuawei Cloud Yao Cloud Server L インスタンスの続きです。評価 | 軽量アプリケーションサーバー対決: STREAM に基づく Huawei Cloud Yaoyun Server L インスタンスの詳細な評価後、読者に包括的な評価情報を提供するために、Huawei Cloud の革新的な製品 [Huawei Cloud Yaoyun Server L インスタンス] について引き続き議論します。この記事は、[Huawei Cloud Yaoyun Server L インスタンス] Yaoyun Server L インスタンスのディスク I/O パフォーマンス。私たちは依然として、友人からの軽量アプリケーションサーバー灯台である比較マシンを選択しました. fioを使用して詳細なテストを行った後、Huawei Cloud の最新の Yunyao Cloud Server L インスタンスの CPU プロセッサのパフォーマンスを厳密にテストおよび分析し。 Huawei Cloud の最新の Yunyao Cloud Server L インスタンスを理解し、多くの複雑なサーバー間でより適切な判断を下すのに役立ちます。
2. 評価文
同社のクラウド コンピューティングやその他の製品をテストするときは、常に次の声明に基づいています。
この記事はHuawei Cloud Yaoyun Server Lインスタンスの評価イベントに参加したという文脈で書かれていますが、当ブロガーは中立的な立場で評価を行っており、イベント記事なので自慢する必要はありません。. エッセイの目的と私の個人的な当初の意図。
3. 評価対象サーバーのパラメータと準備
3.1 評価対象サーバーの基本パラメータ
2核2G
Huawei Cloud Yaoyun Server L インスタンスは現在、2核4G
32核8G
種類の CPU およびメモリ仕様を提供しています。ここで選択したテスト マシンは軽量アプリケーション サーバー Lighthouse です。この軽量アプリケーション サーバーは Huawei Cloud Yaoyun Server L インスタンスに似ています。両方とも異なるアプリケーション シナリオ、失敗したイメージのサポート、仕様を提供します。これらは相互のベンチマーク製品であると言えます。 。
このテストで使用した Huawei Cloud Yaoyun Server L インスタンスと友人の軽量アプリケーション サーバー Lighthouse は両方とも広州エリアにあり、構成は両方とも . 構成パラメータ テーブルは次のとおりです2核2G
。
仕様と構成 | Huawei Cloud Yaoyun Server L インスタンス | Lighthouse、友人からもらった軽量アプリケーションサーバー |
---|---|---|
コア数 | 2コア | 2コア |
メモリ | 2G | 2G |
オペレーティング·システム | CentOS 7.6 | CentOS 7.6 |
エリア | 広州 | 広州 |
3.2 試験機の調達
3.2.1 Huawei Cloud Yaoyun Server L インスタンス
この記事は Huawei Cloud Yaoyun Server L インスタンスのプロセッサ レベルの評価に焦点を当てているため、スペースに限りがあるため、ここでの手順は省略します。Huawei Cloud Yaoyun Server L インスタンスの購入方法の詳細については、以前のブログ投稿を参照してください。セクション 3: Huawei Cloud Cloud Server L インスタンスの評価 | ゼロから始める: Cloud Server L インスタンスの包括的な使用状況分析ガイドは以上です
購入後のサーバースペックは以下の通りです。
3.2.2 フレンドリーなサプライヤーの軽量アプリケーション サーバー ライトハウス
今日は主役ではないので比較試機の購入手順は省略し、購入後のスクリーンショットを以下に直接掲載します。
4. fio を使用してディスク I/O パフォーマンスをテストする
「fio」はディスク I/O パフォーマンスを評価するために広く使用されているツールで、sync、mmap、libaio、posixaio、SG v3、splice、null、network、などを含む最大 19 個の異なる I/O エンジンをサポートしています。シスレット、グアシ、ソラリサイオなど。fio は常にアップデートされており、最新バージョンは v3.19 であり、関連情報は公式 Web サイト「fio」で入手できます。
fio を使用してディスク ストレス テストを実行するには、主に 2 つの方法があります。1 つはコマンド ライン パラメータを使用して設定する方法、もう 1 つは設定ファイルを読み取ってテスト パラメータを設定する方法です。2 つの方法に機能的な違いはあまりありませんが、後者では、sh や screen などのツールを組み合わせて、長期間にわたってテストを実行できます。
fio の使用方法を示すために、Huawei Cloud Yaoyun Server L インスタンスを直接使用してデモンストレーションを行います。
4.1 fioのインストール
この記事では、Huawei Cloud Yaoyun Server L インスタンスを使用して、例として CentOS 7.6 オペレーティング システムのクラウド ホストを評価します。yum
テスト ツール fio を直接インストールできます。
[root@hcss-ecs-d51e ~]# yum install -y libaio
[root@hcss-ecs-d51e ~]# yum install -y libaio-devel
[root@hcss-ecs-d51e ~]# yum install -y fio
「Complete!」が表示されたら、次のようにインストールが完了していることを確認します。
4.2 fio の一般的なテスト シナリオとテスト方法
4.2.1 テストシナリオ
-
テストの遅延
キューの深さは 1 で、bs は 4k に設定されています。これは、単一キューの読み取りおよび書き込みのレイテンシ テストをシミュレートするためです。
-
ためらい
キューの深さは 32、bs は 128k に設定され、最大容量はディスク帯域幅全体を満たすようにテストされます。
-
iops
キューの深さは 32 で、bs は 4k に設定されています。最短時間でより多くのディスクを読み取る必要があります。通常、小さなファイルは
ランダムな読み取りと書き込みについてテストされ、大きなファイルは通常、シーケンシャルな読み取りと書き込みについてテストされます。
一般的なテスト シナリオのリファレンス (重要):
-
シーケンシャル読み取りおよび書き込み (スループット、一般的に使用される単位は MB/秒): ハードディスク上のファイルの保存場所は連続しています。
該当するシナリオ: 大きなファイル (ビデオや音楽など) のコピー。たとえ速度が非常に高速であっても、データベースのパフォーマンスの参考値はありません。
-
4K ランダム読み取りおよび書き込み (IOPS、一般的な単位は時間): ハードディスク上のランダムな場所で、毎回 4KB のデータを読み取りおよび書き込みます。
適用可能なシナリオ: オペレーティング システムの操作、ソフトウェアの操作、データベース。
4.2.2 試験方法
fio のテスト方法には、コマンドラインを直接使用する方法と、テスト設定ファイルを使用する方法がありますが、テスト設定ファイルを使用して定期的にテストを実行できる点が異なります。
注 (非常に重要):
- 重要なシステム ファイルの損傷を避けるために、システム ディスクに対して fio テストを実行しないでください。
- 基礎となるファイル システムのメタデータ破損によるデータ破損を避けるため、サービス データ ディスクに対してテストを実行しないでください。
/etc/fstab
ファイル構成項目にテスト対象のハードディスクのマウント構成が含まれていないことを確認してください。含まれていないと、クラウド サーバーの起動に失敗します。- ハードディスクのパフォーマンスをテストする場合は、生のデータ ディスク ( など
/dev/vdb
) を直接テストすることをお勧めします。 - ファイル システムのパフォーマンスをテストするときは、特定のファイル テスト ( など
/data/file
) を指定することをお勧めします。 - fio テストは、重要なデータが含まれていない空きディスク上で実行し、テスト完了後にファイル システムを再作成することをお勧めします。
(1) コマンドラインを使用したテスト
filename
以下に示すように、デバイスで特定のディスク ドライブ文字を指定する必要があります/dev/sda
。
BW を連続的に読み取る
fio -name=Seq_Read_IOPS_Test -group_reporting -direct=1 -iodepth=128 -rw=read -ioengine=libaio -refill_buffers -norandommap -randrepeat=0 -bs=4k -size=10G -numjobs=1 -runtime=600 -filename=/dev/sda
BWを順番に書き込む
fio -name=Seq_Write_IOPS_Test -group_reporting -direct=1 -iodepth=128 -rw=write -ioengine=libaio -refill_buffers -norandommap -randrepeat=0 -bs=4k -size=10G -numjobs=1 -runtime=600 -filename=/dev/sda
ランダム読み取り IOPS
fio -name=Rand_Read_IOPS_Test -group_reporting -direct=1 -iodepth=128 -rw=randread -ioengine=libaio -refill_buffers -norandommap -randrepeat=0 -bs=4k -size=10G -numjobs=1 -runtime=600 -filename=/dev/sda
ランダム書き込み IOPS
fio -name=Rand_Write_IOPS_Test -group_reporting -direct=1 -iodepth=128 -rw=randwrite -ioengine=libaio -refill_buffers -norandommap -randrepeat=0 -bs=4k -size=10G -numjobs=1 -runtime=600 -filename=/dev/sda
混合読み書き能力
fio -name=Read_Write_IOPS_Test -group_reporting -direct=1 -iodepth=128 -rw=randrw -rwmixread=70 -refill_buffers -norandommap -randrepeat=0 -ioengine=libaio -bs=4k -size=10G -numjobs=1 -runtime=600 -ioscheduler=noop -filename=/dev/sda
書き込みスループット
fio -name=Write_BandWidth_Test -group_reporting -direct=1 -iodepth=32 -rw=write -ioengine=libaio -refill_buffers -norandommap -randrepeat=0 -bs=1024k -size=10G -numjobs=1 -runtime=600 -filename=/dev/sda
読み取りスループット
fio -name=Read_BandWidth_Test -group_reporting -direct=1 -iodepth=32 -rw=read -ioengine=libaio -refill_buffers -norandommap -randrepeat=0 -bs=1024k -size=10G -numjobs=1 -runtime=600 -filename=/dev/sda
(2) テスト用の設定ファイルを使用する
以下はテスト ファイルの例です。fio.conf という名前のテスト ファイルを直接作成できます。
# fio.conf
[global]
ioengine=libaio
iodepth=128
direct=0
thread=1
numjobs=16
norandommap=1
randrepeat=0
runtime=60
ramp_time=6
size=1g
directory=/your/path
[read4k-rand]
stonewall
group_reporting
bs=4k
rw=randread
[read64k-seq]
stonewall
group_reporting
bs=64k
rw=read
[write4k-rand]
stonewall
group_reporting
bs=4k
rw=randwrite
[write64k-seq]
stonewall
group_reporting
bs=64k
rw=write
ファイルを保存した後、次のコマンドを使用して直接実行します。
fio fio.conf
4.2.3 各動作パラメータの説明
- filename: ファイル (デバイス) の名前を指定します。filename=/dev/sda:/dev/sdb のように、コロンで区切って複数のファイルを同時に指定できます。
- directory: ファイル名のパス接頭辞を設定します。以降のベンチマークでは、デバイスはこの方法で指定されます。
- name: ジョブの名前を指定します。これは、コマンドラインで新しいジョブを開始することを意味します。
- direct: bool 型、デフォルトは 0、1 に設定すると、IO バッファを使用しないことを意味します。
- ioengine: I/O エンジン。現在、fio は 19 種類の ioengine をサポートしています。デフォルト値は sync 同期ブロッキング I/O、libaio は Linux のネイティブ非同期 I/O です。同期、非同期、ブロッキング、およびノンブロッキング モデルの詳細については、記事「非同期 I/O を使用してアプリケーションのパフォーマンスを大幅に向上させる」を参照してください。
- io Depth: ioengine が非同期モードを採用する場合、このパラメータは送信のバッチによって維持される io ユニットの数を示します。このパラメータについては、記事「Fio ストレス テスト ツールと io キューの深い理解と誤解」を参照してください。
- rw: I/Oモード、ランダム読み書き、シーケンシャル読み書きなど。オプションの値: read、write、randread、randwrite、rw、randrw。
- bs: I/O ブロック サイズ、デフォルトは 4k です。シーケンシャル読み取りおよび書き込みをテストする場合は、この値を増やすことができます。
- size: ジョブによって処理されるファイルのサイズを指定します。
- numjobs: ジョブのクローン (スレッド) の数を指定します。
- time_based: ランタイムで指定された時間が経過する前にファイルの読み取りと書き込みが行われた場合、ランタイム時間が終了するまで繰り返し行われます。
- runtime: プロセスを停止する秒数を指定します。このパラメータが指定されていない場合、fio は指定されたファイルの読み取りと書き込みが完全に完了するまで実行されます。
- group_reporting: numjobs も指定した場合、グループごとに出力結果が表示されます。
設定ファイルの場合、設定ファイルは ini 形式、つまりブロックの概念があり、ブロックの下の「=」を通してキーと値のペアが設定されます。
4.2 Huawei Cloud Yaoyun Server L インスタンスで fio テストを実行する
次の手順は、fio を使用して Huawei Cloud Yaoyun Server L インスタンスでテストすることです。スペースが限られているため、IOPS を順番に読み取る例 (写真) のみを以下に示します。
- bw : ディスク スループット。これはシーケンシャル読み取りおよび書き込み検査の焦点です。
- iops : 1 秒あたりのディスクの読み取りおよび書き込みの数。これはランダムな読み取りおよび書き込み検査の焦点です。
上記のテストプロセス中、シーケンシャルリードテスト結果のスループット BW は です104MB/s
。
4.3 友人から提供された軽量アプリケーションサーバーである Lighthouse で fio テストを実行する
友人の軽量アプリケーション サーバー Lighthouse で fio テストを実行します。
上記のセクション 4.2 で、Huawei Cloud Yaoyun Server L インスタンスで fio テストを実行する手順で、fio の使用方法と関連詳細を詳しく説明しました。中間プロセスは次のとおりです。スペースを節約するためにここでは省略しています。友人の軽量アプリケーション サーバー Lighthouse で fio を実行した結果を直接提供します。
シーケンシャル読み取りの実行を例に挙げます。
5. 最終テストの比較結果
これは、以前に Geekbench と STREAM を使用してテストしたときと同じです。それほどナンセンスではないので、fio の最終結果に直接行きましょう。
fio ハードディスクの読み取りおよび書き込みパフォーマンス テスト | シーケンシャル読み取り (MB/秒) | シーケンシャル書き込み(MB/秒) | ランダム読み取り (IOPS) | ランダム書き込み (IOPS) |
---|---|---|---|---|
Huawei Cloud Yaoyun Server L インスタンス | 104 | 90.9 | 5101 | 5122 |
Lighthouse、友人からもらった軽量アプリケーションサーバー | 23.7 | 23.6 | 6050 | 6064 |
上の表からわかるように、同じテスト ファイル サイズ 1G では、Huawei Cloud Yaoyun Server L インスタンスのシーケンシャル読み取りおよびシーケンシャル書き込み速度は競合する軽量アプリケーション サーバーよりもはるかに高速ですが、ランダム読み取りとシーケンシャル書き込みの速度は劣ります。ランダム書き込み テストでは、友人の軽量アプリケーション サーバーの IOPS は、Huawei Cloud Yaoyun Server L インスタンスの IOPS よりわずかに高かったが、その差はシーケンシャル読み取りおよび書き込みほど誇張されませんでした。
これは、大きなファイルの読み取りと書き込みを行う場合、Huawei Cloud Yao Cloud Server L インスタンスの速度が競合製品よりもはるかに高速になる一方、Huawei Cloud Yao Cloud Server L インスタンス上のデータベースまたはアプリケーションの速度が低下することも意味します。競合製品より若干低いです。
6. 記事の最後にまとめ
この記事では、評価対象サーバーのハードディスク I/O パフォーマンスを総合的に評価および比較します。この記事の焦点は、fio ツールを使用して、これら 2 台のサーバーのハードディスク読み取り I/O パフォーマンスをテストすることです。fioツールのインストールプロセス、使用方法、関連する詳細な動作パラメータレポートについて詳しく紹介しました。ハードディスク上の I/O パフォーマンスを詳細に評価するために、両方のサーバーで fio テストが実行されました。
この記事の評価と比較は、読者がこれら 2 つのサーバーのメモリ パフォーマンスをより深く理解し、情報に基づいた意思決定を行うための貴重な情報を提供するのに役立ちます。エンタープライズ環境であっても個人アプリケーションであっても、メモリ パフォーマンスの最適化はシステム全体のパフォーマンスを向上させるための重要なステップです。
[ 本文作者 ] bluetata
[ 原文链接 ] https://bluetata.blog.csdn.net/article/details/132954789
[ 最后更新 ] 09/18/2023 1:45
[ 版权声明 ] 如果您在非 CSDN 网站内看到这一行,
说明网络爬虫可能在本人还没有完整发布的时候就抓走了我的文章,
可能导致内容不完整,请去上述的原文链接查看原文。