最新バージョン: 2.0.2-1
早見表 |
|
カタログ |
システム |
カテゴリ |
その他 アプライアンス |
ユーザ ボリューム |
あり |
最小 メモリ |
96M |
OS |
Linux |
制約 |
なし |
質問/コメント |
SQUID は、フォワード キャッシュまたはリバース キャッシュ プロキシ アプライアンスです。 SQUID はエージェントとして動作し、その in 端子上でクライアントから HTTP リクエストを受け付けて、出力端子に接続された適切なサーバにリクエストを渡します。 メモリおよびオンディスク キャッシュに返されたデータのコピーを格納します。 同じデータが複数回リクエストされると、キャッシュされたデータがクライアントに返されるため、アクセス速度が向上し、ソース サーバの負荷が減少します。
SQUID は、プロキシおよび Web アクセラレータという 2 つの操作モードをサポートします。
プロキシ モード
プロキシ モードでは、SQUID はフォワード キャッシュ プロキシとして動作します。通常は、1 つ以上のクライアントとインターネット間にインストールされます。 頻繁にリクエストされたデータのローカル コピーを維持し、適用可能なときにキャッシュされたコンテンツを返します。したがって、サービス リクエスト処理速度が向上し、アップストリームの帯域幅が軽減されます。
ウェブ アクセラレータ モード
Web アクセラレータ モードでは、SQUID はリバース キャッシュ プロキシとして動作します。通常は、1 つ以上の Web サーバの前にインストールされます。 Web サーバに向かうすべてのトラフィックは、SQUID を通ります。 SQUID は、頻繁にリクエストされたデータのローカル コピーを維持し、適用可能なときにキャッシュされたコンテンツを返します。したがって、応答時間が短縮されてバックエンド サーバの負荷が減少します。
リソース
リソース |
最小 |
最大 |
デフォルト |
テスト |
CPU |
0.05 |
2 |
0.2 |
2 |
メモリ |
96 MB |
4 GB |
256 MB |
4 GB |
帯域幅 |
1 Mbps |
2 Gbps |
250 Mbps |
1.5 Gbps |
SQUID のメモリ要件
SQUID が必要とするメモリ量は、キャッシュ ボリューム サイズおよび同時リクエスト数に依存します。 SQUID は、1 ギガバイトのキャッシュ ストレージのインデックスに、最大 10 メガバイトのメモリを使用します。 したがって、100 GB のキャッシュ ボリュームを使用するには、さらに 1 GB のメモリが必要です。 また、一定量のメモリがそれぞれの接続のために使用されます。 SQUID は、1000 の同時接続に、最大 20 メガバイトのメモリを使用します。 したがって、5000 の同時接続が予想される場合、SQUID のメモリを 100 MB 増やす必要があります。
重要: 十分なメモリが利用できない場合、SQUID は誤動作する場合があります。
端子
名前 |
方向 |
プロトコル |
説明 |
in |
in |
HTTP |
受信リクエストを受け付けます。 |
out |
out |
HTTP |
トラフィックを送信先サーバへ送信し、応答を受信します。 |
log |
out |
CIFS |
ログを格納するための CIFS ベースのネットワーク ファイル システムへのアクセス。 接続サーバは匿名ログインを許可し、share という名前の読み取り/書き込み共有が必要です。 使用しないとき、この端子は接続しておかなくてもかまいません。 |
mon |
out |
CCE |
パフォーマンスとリソースの使用状況統計を送信します。 使用しないとき、この端子は接続しておかなくてもかまいません。 |
ユーザ ボリューム
名前 |
説明 |
cache |
キャッシュ ファイル ストレージ用ボリューム。 このボリュームは必須です。 キャッシュ ボリュームの最小サイズは 100M です。 |
注:
squid ガイドによれば、キャッシュ ボリュームの約 25% はインデックスの格納に使用されるので、キャッシュ ボリュームは 25% 大きくなくてはなりません。 例: キャッシュが 900 MB のオブジェクトを格納する場合、キャッシュ ボリュームのサイズは 1200 MB 必要です(キャッシュしたオブジェクトの格納に 75% = 900 MB、インデックス ファイル用に 25% = 300 MB)。
一般プロパティ
名前 |
タイプ |
説明 |
mode |
文字列 |
動作モード。 有効な値は proxy または web_accelerator です。 |
listen_port |
整数 |
プロキシ モードの内部クライアントまたは web_accelerator モードの外部 Web サイト ユーザからリクエストを受け入れるポート。 |
hostname |
文字列 |
エラー メッセージ内で使用するホスト名。 |
connect_timeout |
整数 |
SQUID がリクエストされたサーバへの TCP 接続を待機する間のタイムアウト(秒)。 タイムアウトを超過すると、SQUID は、「接続タイムアウト」というエラー メッセージでクライアントに応答します。 |
ロギング プロパティ
名前 |
タイプ |
説明 |
log_enable |
文字列 |
アクセス ログを有効化または無効化します。 |
log_filename |
文字列 |
log 端子を介してアクセスされたファイル システムに関するアクセス ログのファイル名。 ファイル名にはパスを含めることができます。たとえば、値が access.log の場合、ログ ファイルは /mnt/log/access.log になり、値が /proxy_logs/squid1_access.log の場合、ログ ファイルは /mnt/log/proxy_logs/squid1_access.log になります。 |
log_format |
文字列 |
アクセス ログのフォーマット。 |
カスタム カウンタ
SQUID アプライアンスは mon 端子を介して以下のカスタム カウンタをレポートします。
SNMP カウンタ名 |
カウンタ名 |
説明 |
SQUID-MIB::cacheSysVMsize |
SysVMsize |
メモリ キャッシュ サイズ(KB)。 |
SQUID-MIB::cacheSysStorage |
SysStorage |
ディスク キャッシュ サイズ(KB)。 |
SQUID-MIB::cacheUptime |
アップタイム |
SQUID アップタイム(1/100 秒のタイム ティック)。 |
SQUID-MIB::cacheSysPageFaults |
SysPageFaults |
物理 I/O のページ フォールト。 |
SQUID-MIB::cacheSysNumReads |
SysNumReads |
HTTP I/O 読み取り数。 |
SQUID-MIB::cacheMemUsage |
MemUsage |
SQUID で使用される合計メモリ(KB)。 |
SQUID-MIB::cacheCpuTime |
CpuTime |
cpu 使用秒数。 |
SQUID-MIB::cacheCpuUsage |
CpuUsage |
CPU の使用率。 |
SQUID-MIB::cacheMaxResSize |
MaxResSize |
最大メモリ使用量(KB)。 |
SQUID-MIB::cacheNumObjCount |
NumObjCount |
キャッシュに格納されたオブジェクトの数。 |
SQUID-MIB::cacheCurrentUnlinkRequests |
CurrentUnlinkRequests |
unlinkd に指定されたリクエスト。 |
SQUID-MIB::cacheCurrentUnusedFDescrCnt |
CurrentUnusedFDescrCnt |
利用可能なファイル記述子の数。 |
SQUID-MIB::cacheCurrentResFileDescrCnt |
CurrentResFileDescrCnt |
予約済みファイル記述子の数。 |
SQUID-MIB::cacheCurrentFileDescrCnt |
CurrentFileDescrCnt |
使用中のファイル記述子の数。 |
SQUID-MIB::cacheCurrentFileDescrMax |
CurrentFileDescrMax |
使用中のファイル記述子の最高数。 |
SQUID-MIB::cacheProtoClientHttpRequests |
ProtoClientHttpRequests |
受信した HTTP リクエストの数。 |
SQUID-MIB::cacheHttpHits |
HttpHits |
キャッシュ HTTP ヒットの数。 |
SQUID-MIB::cacheHttpErrors |
HttpErrors |
キャッシュ HTTP エラーの数。 |
SQUID-MIB::cacheHttpInKb |
HttpInKb |
受信した HTTP トラフィック(KB)。 |
SQUID-MIB::cacheHttpOutKb |
HttpOutKb |
送信した HTTP トラフィック(KB)。 |
SQUID-MIB::cacheServerRequests |
ServerRequests |
キャッシュ サーバのクライアントからのリクエストの数。 |
SQUID-MIB::cacheServerErrors |
ServerErrors |
クライアント リクエストからのキャッシュ サーバのすべてのエラー |
SQUID-MIB::cacheServerInKb |
ServerInKb |
サーバからの受信トラフィック(KB)。 |
SQUID-MIB::cacheServerOutKb |
ServerOutKb |
サーバへの送信トラフィック(KB)。 |
SQUID-MIB::cacheClients |
クライアント |
キャッシュ アクセス クライアントの数 |
SQUID-MIB::cacheHttpAllSvcTime.1 |
HttpAllSvcTime1 |
HTTP リクエストの処理(最後の 1 分間)にかかった CPU 時間(秒)。 |
SQUID-MIB::cacheHttpAllSvcTime.5 |
HttpAllSvcTime5 |
HTTP リクエストの処理(最後の 5 分間)にかかった CPU 時間(秒)。 |
SQUID-MIB::cacheHttpAllSvcTime.60 |
HttpAllSvcTime60 |
HTTP リクエストの処理(最後の 60 分間)にかかった CPU 時間(秒)。 |
SQUID-MIB::cacheHttpMissSvcTime.1 |
HttpMissSvcTime1 |
キャッシュ ミスの処理(最後の 1 分間)にかかった CPU 時間(秒)。 |
SQUID-MIB::cacheHttpMissSvcTime.5 |
HttpMissSvcTime5 |
キャッシュ ミスの処理(最後の 5 分間)にかかった CPU 時間(秒)。 |
SQUID-MIB::cacheHttpMissSvcTime.60 |
HttpMissSvcTime60 |
キャッシュ ミスの処理(最後の 60 分間)にかかった CPU 時間(秒)。 |
SQUID-MIB::cacheHttpNmSvcTime.1 |
HttpNmSvcTime1 |
コンテンツの変更なしでキャッシュ ヒットの処理(最後の 1 分間)にかかった CPU 時間(秒)。 |
SQUID-MIB::cacheHttpNmSvcTime.5 |
HttpNmSvcTime5 |
コンテンツの変更なしでキャッシュ ヒットの処理(最後の 5 分間)にかかった CPU 時間(秒)。 |
SQUID-MIB::cacheHttpNmSvcTime.60 |
HttpNmSvcTime60 |
コンテンツの変更なしでキャッシュ ヒットの処理(最後の 60 分間)にかかった CPU 時間(秒)。 |
SQUID-MIB::cacheHttpHitSvcTime.1 |
HttpHitSvcTime1 |
キャッシュ ヒットの処理(最後の 1 分間)にかかった CPU 時間(秒)。 |
SQUID-MIB::cacheHttpHitSvcTime.5 |
HttpHitSvcTime5 |
キャッシュ ヒットの処理(最後の 5 分間)にかかった CPU 時間(秒)。 |
SQUID-MIB::cacheHttpHitSvcTime.60 |
HttpHitSvcTime60 |
キャッシュ ヒットの処理(最後の 60 分間)にかかった CPU 時間(秒)。 |
SQUID-MIB::cacheDnsSvcTime.1 |
DnsSvcTime1 |
DNS リクエストの処理(最後の 1 分間)にかかった CPU 時間(秒)。 |
SQUID-MIB::cacheDnsSvcTime.5 |
DnsSvcTime5 |
DNS リクエストの処理(最後の 5 分間)にかかった CPU 時間(秒)。 |
SQUID-MIB::cacheDnsSvcTime.60 |
DnsSvcTime60 |
DNS リクエストの処理(最後の 5 分間)にかかった CPU 時間(秒)。 |
SQUID-MIB::cacheRequestHitRatio.1 |
RequestHitRatio1 |
0~100 スケールの Request Hit Ratio(最後の 1 分間)(%)。 |
SQUID-MIB::cacheRequestHitRatio.5 |
RequestHitRatio5 |
0~100 スケールの Request Hit Ratio(5 分間)(%)。 |
SQUID-MIB::cacheRequestHitRatio.60 |
RequestHitRatio60 |
0~100 スケールの Request Hit Ratio(最後の 60 分間)(%)。 |
SQUID-MIB::cacheRequestByteRatio.1 |
RequestByteRatio1 |
0~100 スケールの Byte Hit Ratio(最後の 1 分間)(%)。 |
SQUID-MIB::cacheRequestByteRatio.5 |
RequestByteRatio5 |
0~100 スケールの Byte Hit Ratio(最後の 5 分間)(%)。 |
SQUID-MIB::cacheRequestByteRatio.60 |
RequestByteRatio60 |
0~100 スケールの Byte Hit Ratio(最後の 60 分間)(%)。 |
SQUID-MIB::cacheHttpNhSvcTime.1 |
HttpNhSvcTime1 |
コンテンツの更新ありのキャッシュ ヒットの処理(最後の 1 分間)にかかった CPU 時間(秒)。 |
SQUID-MIB::cacheHttpNhSvcTime.5 |
HttpNhSvcTime5 |
コンテンツの更新ありのキャッシュ ヒットの処理(最後の 5 分間)にかかった CPU 時間(秒)。 |
SQUID-MIB::cacheHttpNhSvcTime.60 |
HttpNhSvcTime60 |
コンテンツの更新ありのキャッシュ ヒットの処理(最後の 60 分間)にかかった CPU 時間(秒)。 |
SQUID-MIB::cacheIpEntries |
IpEntries |
IP キャッシュ エントリ。 |
SQUID-MIB::cacheIpRequests |
IpRequests |
IP キャッシュ リクエストの数。 |
SQUID-MIB::cacheIpHits |
IpHits |
IP キャッシュ ヒットの数。 |
SQUID-MIB::cacheIpPendingHits |
IpPendingHits |
IP キャッシュ保留ヒットの数。 |
SQUID-MIB::cacheIpNegativeHits |
IpNegativeHits |
IP のキャッシュの負のヒットの数。 |
SQUID-MIB::cacheIpMisses |
IpMisses |
IP キャッシュ ミスの数。 |
SQUID-MIB::cacheBlockingGetHostByName |
BlockingGetHostByName |
ブロックする gethostbyname リクエストの数。 |
SQUID-MIB::cacheAttemptReleaseLckEntries |
AttemptReleaseLckEntries |
ロックされた IP キャッシュ エントリの解放試行の数。 |
SQUID-MIB::cacheFqdnEntries |
FqdnEntries |
FQDN キャッシュ エントリ。 |
SQUID-MIB::cacheFqdnRequests |
FqdnRequests |
FQDN キャッシュ リクエストの数。 |
SQUID-MIB::cacheFqdnHits |
FqdnHits |
FQDN キャッシュ ヒットの数。 |
SQUID-MIB::cacheFqdnPendingHits |
FqdnPendingHits |
FQDN キャッシュ保留ヒットの数。 |
SQUID-MIB::cacheFqdnNegativeHits |
FqdnNegativeHits |
FQDN のキャッシュの負のヒットの数。 |
SQUID-MIB::cacheFqdnMisses |
FqdnMisses |
FQDN キャッシュ ミスの数。 |
SQUID-MIB::cacheBlockingGetHostByAddr |
BlockingGetHostByAddr |
ブロックする gethostbyaddr リクエストの数。 |
SQUID-MIB::cacheDnsRequests |
DnsRequests |
外部 dnsserver リクエストの数。 |
SQUID-MIB::cacheDnsReplies |
DnsReplies |
外部 dnsserver 応答の数。 |
SQUID-MIB::cacheDnsNumberServers |
DnsNumberServers |
外部 dnsserver プロセスの数。 |
SQUID-MIB::cachePeerRtt |
PeerRtt |
ピアへの最後の既知ラウンド トリップ タイム(ms)。 |
エラー メッセージ
アプリケーションの起動に失敗した場合、以下の内容のエラーがシステム ログにログ記録される場合があります。
エラー メッセージ |
説明 |
キャッシュ ボリュームにアクセスできません。 |
アプライアンスはキャッシュ ボリュームにアクセスできません。ファイル システムが壊れている可能性があります。 |
アクセス ログは有効ですが、log 端子は接続されていません。 |
log 端子は接続されていませんが、log_enable は「yes」に設定されています。 |
SQUID を実行できませんでした。 |
アプライアンスを起動できません。 考えられる理由はユーザ定義の設定にエラーがあることです。 |
以下の表は、ログ記録を無効にしたときに得られるリクエスト数/秒(rps)単位のベンチマーク結果を示しています。 ログ記録を有効にすると、SQUID のパフォーマンスは低下する場合があります。 ベンチマークは、Apache Web サーバ バージョン 2.0 および 2.2 でリリースされる Apache ベンチマーク ユーティリティで生成されました。 Apache ベンチマークの詳細情報は、Apache の Web サイトで参照してください。 次の設定がベンチマーク テストに使用されました。bw 500M mem=2G cpu=2。
キャッシュ ヒット
同時実行数 |
rps |
1 クライアント |
1500~1800 rps |
10 クライアント |
5800~6200 rps |
100 クライアント |
7400~7800 rps |
500 クライアント |
5300~5500 rps |
1000 クライアント |
5300~5500 rps |
キャッシュ ミス
同時実行数 |
rps |
1 クライアント |
700~800 rps |
10 クライアント |
2000~2200 rps |
100 クライアント |
1900~2100 rps |
500 クライアント |
1800~2000 rps |
1000 クライアント |
1600~1800 rps |
Web アクセラレータ モード
SQUID は、すべての静的ドキュメントを提供することにより、AppServer への負荷を軽減するために使用されます。 注: Java アプリケーションが生成ドキュメントに Expires: HTTP ヘッダを設定した場合、SQUID はそれらが存続するかぎり対応します。
使用されるアプライアンスは次のとおりです。
プロパティ設定の例は次のとおりです。
プロパティ名 |
値 |
注 |
mode |
web_accelerator |
SQUID は Web アクセラレータ モードで動作し、キャッシュ リバース プロキシとして機能します。 |
listen_port |
80 |
HTTP リクエスト用のデフォルト ポート。 |
hostname |
www.host.com |
エラー メッセージ内に使用されるホスト名 |
Web アクセラレータ モード: 多数の Web サーバを備えたアプリケーション
SQUID は多くの Web サーバを加速するために使用されます。 この例では、URLSW アプライアンスは url によって別の Web サーバにリクエストを配信します。 使用されるアプライアンスは次のとおりです。
SQUID のプロパティ設定の例は次のとおりです。
プロパティ名 |
値 |
注 |
mode |
web_accelerator |
SQUID は Web アクセラレータ モードで動作し、キャッシュ リバース プロキシとして機能します。 |
listen_port |
80 |
HTTP リクエスト用のデフォルト ポート。 |
hostname |
www.host1.com |
エラー メッセージ内に使用されるホスト名 |
スイッチ設定は以下のとおりです。
プロパティ名 |
値 |
注 |
out1_type |
hostname |
|
out1_value |
host1.com |
host1.com へのリクエストは、server1 によって提供されます。 |
out2_type |
hostname |
|
out2_value |
host2.com |
host2.com へのリクエストは、server2 によって提供されます。 |
out3_type |
hostname |
|
out3_value |
host3.com |
host3.com へのリクエストは、server3 によって提供されます。 |
out4_type |
hostname |
|
out4_value |
host4.com |
host4.com へのリクエストは、server4 によって提供されます。 |
プロキシ モード
コンテンツ処理タスクの場合、SQUID はターゲット Web サーバの負荷や帯域幅の使用を減らして、重複リクエストの取得を高速化できます。 この例では、Web ページ、pdf ドキュメントまたは画像のようなインターネットからのコンテンツが crawler1 によってすでにリクエストされていた場合、他のクローラが同じコンテンツのキャッシュ結果を受信します。
使用されるアプライアンスは次のとおりです。
プロパティ設定の例は次のとおりです。
プロパティ名 |
値 |
注 |
mode |
proxy |
SQUID はプロキシ モードで動作し、キャッシュ フォワード プロキシとして機能します。 |
listen_port |
3128 |
SQUID が HTTP リクエストをリスンするポート。 |
hostname |
proxy.enterprise.local |
エラー メッセージ内に使用されるホスト名 |
アプライアンス内で使用されるオープン ソース/サードパーティ ソフトウェア
SQUID では、そのベース クラス LUX5 によって使用されるサードパーティのオープン ソース パッケージに加えて、以下のサードパーティ オープン ソース パッケージを使用します。
ソフトウェア |
バージョン |
変更 |
ライセンス |
注 |
net-snmp |
5.3.2.2-9.el5_5.1 |
なし |
BSD |
該当なし |
net-snmp-libs |
5.3.2.2-9.el5_5.1 |
なし |
BSD |
該当なし |
net-snmp-utils |
5.3.2.2-9.el5_5.1 |
なし |
BSD |
該当なし |
samba-client |
3.0.33-3.29.el5_5.1 |
なし |
GPLv2 |
該当なし |
samba-common |
3.0.33-3.29.el5_5.1 |
なし |
GPLv2 |
該当なし |
libsmbclient |
3.0.33-3.29.el5_5.1 |
なし |
GPLv2 |
該当なし |
squid |
3.1.8-1.el5 |
なし |
GPLv2 |
該当なし |
lm_sensors |
2.10.7-9.el5 |
なし |
GPLv2 |
該当なし |
dmidecode |
2.10-3.el5 |
なし |
GPLv2 |
該当なし |
perl-DBI |
1.52-2.el5 |
なし |
GPLv2 |
該当なし |
Copyright © 2011 CA. All rights reserved. | このトピックについて CA Technologies に電子メールを送信する |