すべてのプロダクト
Search
ドキュメントセンター

Alibaba Cloud Linux:システム構成の最適化

最終更新日:Jun 18, 2025

このトピックでは、Alibaba Cloud Linux 3 オペレーティングシステムの最適化されたシステム構成と一般的なカーネルパラメーターについて説明します。特定のビジネスシナリオに対応するために、ビジネス要件に基づいてカーネルパラメーターを変更できます。

オペレーティングシステムの制限

Alibaba Cloud Linux 3.

重要

カーネルパラメーターを変更する前に、次の点に注意してください。

  • ビジネス要件と関連データのみに基づいてカーネルパラメーターを変更することをお勧めします。

  • パラメーターの機能を理解します。カーネルパラメーターは、環境の種類と環境のバージョンによって異なることに注意してください。

Alibaba Cloud Linux 3 の最適化されたシステム構成

次の表は、Alibaba Cloud Linux 3 オペレーティングシステム向けに最適化されているシステムパラメーターを示しています。

パフォーマンス向上に使用されるパラメーター

項目

デフォルト値

説明

net.ipv4.tcp_timeout_init

1,000

TCP 再送信タイムアウト期間の初期値。

最小値は 2 HZ です。

重要

この設定は、Alibaba Cloud Linux 3 オペレーティングシステム向けに Alibaba Cloud によって独自に開発されたものであり、長期間にわたって維持されない可能性があります。

net.ipv4.tcp_synack_timeout_init

1,000

SYN-ACK パケットタイムアウト期間の初期値。

最小値は 2 HZ です。

SYN-ACK パケットが初めて再送信された後、タイムアウト期間は 2 倍になります。

重要

この設定は、Alibaba Cloud Linux 3 オペレーティングシステム向けに Alibaba Cloud によって独自に開発されたものであり、長期間にわたって維持されない可能性があります。

net.ipv4.tcp_synack_timeout_max

120,000

SYN-ACK タイムアウト期間の最大値。

最小値は 2 HZ です。

サーバーが最初の SYN-ACK パケットを除く SYN-ACK パケットを再送信するたびに、tcp_synack_timeout_init 値は 2 倍になります。最大 SYN-ACK パケットタイムアウト期間は、tcp_synack_timeout_max 値を超えることはできません。

重要

この設定は、Alibaba Cloud Linux 3 オペレーティングシステム向けに Alibaba Cloud によって独自に開発されたものであり、長期間にわたって維持されない可能性があります。

net.ipv4.tcp_ato_min

40

ACK パケットタイムアウト期間。

ACK パケットタイムアウト期間を変更するには、sysctl コマンドを実行します。

有効値:4 ~ 200。単位:ミリ秒。

重要

この設定は、Alibaba Cloud Linux 3 オペレーティングシステム向けに Alibaba Cloud によって独自に開発されたものであり、長期間にわたって維持されない可能性があります。

net.ipv4.tcp_init_cwnd

10

TCP輻輳ウィンドウの初期サイズ。

重要

この設定は、Alibaba Cloud Linux 3 オペレーティングシステム向けに Alibaba Cloud によって独自に開発されたものであり、長期間にわたって維持されない可能性があります。

net.ipv4.tcp_synack_retries

2

クライアントから返信された ACK パケットを受信しない場合に、サーバーが SYN-ACK パケットを再送信する回数。

ネットワーク品質が良好な場合、サーバーは SYN-ACK パケットを 3 回再送信しようと試みるのに約 7 秒かかります。

net.ipv4.tcp_slow_start_after_idle

0

アイドル状態の TCP 接続で TCP スロースタートを再開するかどうかを指定します。有効値:

  • 1: はい

  • 0: いいえ

/sys/kernel/mm/transparent_enormouspage/enormoustext_enabled

0

Enormoustext 機能を有効にするかどうかを指定します。有効値:

  • 0: Enormoustex 機能を無効にします。

  • 1: バイナリページとダイナミックライブラリページを有効にします。

  • 2: 匿名実行可能ページを有効にします。

  • 3: バイナリページ、ダイナミックライブラリページ、および匿名実行可能ページを有効にします。

Enormoustext 機能を有効にすることで、プログラムの iTLB miss エラーを減らし、データベースや大規模 アプリケーション など、さまざまなビジネスシナリオで大規模なコードセグメントのパフォーマンスを向上させることができます。

重要

この設定は、Alibaba Cloud Linux 3 オペレーティングシステム向けに Alibaba Cloud によって独自に開発されたものであり、長期間にわたって維持されない可能性があります。

リソース使用率向上に使用されるパラメーター

項目

デフォルト値

説明

net.ipv4.tcp_syn_retries

4

クライアントが SYN パケットを送信した後に SYN-ACK パケットを受信しない場合に、クライアントが再試行する回数。

初期再送信タイムアウト期間が 1 秒の場合、4 回の再送信を実行するのに約 15 秒かかり、最終的に約 31 秒後にタイムアウトになります。

net.ipv4.tcp_retries2

8

アクティブな TCP 接続が ACK パケットを受信しない場合の合計再送信タイムアウト期間。

初期再送信タイムアウト期間が 200 ミリ秒の場合、8 回の再送信を実行するのに約 51 秒かかり、最終的に約 102 秒後にタイムアウトになります。

net.ipv4.tcp_tw_timeout

60

TIME_WAIT 状態の TCP ソケット のタイムアウト期間。

有効値:1 ~ 600。単位:秒。

詳細については、「TCP TIME-WAIT タイムアウト期間の変更」をご参照ください。

重要

この設定は、Alibaba Cloud Linux 3 オペレーティングシステム向けに Alibaba Cloud によって独自に開発されたものであり、長期間にわたって維持されない可能性があります。

net.ipv4.tcp_max_tw_buckets

5,000

TIME-WAIT 状態での TCP 接続の最大許容数。

TIME_WAIT 状態の TCP ソケットは、クライアントがサーバーへの TCP 接続を確立するために使用するポート範囲のポートを占有します。クライアントが同じサーバー(ip:port)への接続を確立するために使用するポートの最大数は、net.ipv4.ip_local_port_range 値によって決まります。TIME_WAIT 状態の多数の TCP ソケットがクライアントポートを占有している場合、クライアントは connect() 関数を呼び出すときにポートを割り当てることができなくなります。最終的に、クライアントは TCP 接続を確立できません。詳細については、「Linux ECS インスタンスに「TCP: time wait bucket table overflow」というエラーメッセージが多数表示される場合はどうすればよいですか?」をご参照ください。

ネットワークセキュリティパラメーター

項目

デフォルト値

説明

net.ipv4.conf.all.rp_filter

0

すべてのネットワークインターフェースコントローラー(NIC)に対してリバースパスフィルタリング機能を有効にするかどうかを指定します。有効値:

  • 0: リバースパスフィルタリング機能を無効にします。

  • 1: リバースパスフィルタリング機能の厳密なチェックを有効にします。チェックが有効になると、NIC は着信パケットごとに検証します。パケットのリバースルートのポートがインバウンドポートと一致しない場合、チェックは失敗し、パケットは破棄されます。

  • 2: リバースパスフィルタリング機能の緩やかなチェックを有効にします。NIC は、着信パケットごとに送信元アドレスに到達可能かどうかをチェックします。リバースルートが任意のポートを介して到達可能な場合、チェックは合格です。チェックが失敗した場合、パケットは破棄されます。

警告

このパラメーターを 1 に設定すると、パケット損失が発生する可能性があります。複数の NIC が搭載されていて、インバウンドポートとアウトバウンドポートが異なる NIC に存在する場合、パケットは破棄されます。したがって、マルチ NIC システムではリバースパスフィルタリング機能を有効にしないでください。

net.ipv4.conf.default.rp_filter

0

新しい NIC に対してリバースパスフィルタリング機能を有効にするかどうかを指定します。有効値:

  • 0: リバースパスフィルタリング機能を無効にします。

  • 1: リバースパスフィルタリング機能の厳密なチェックを有効にします。チェックが有効になると、NIC は着信パケットごとに検証します。パケットのリバースルートのポートがインバウンドポートと一致しない場合、チェックは失敗し、パケットは破棄されます。

  • 2: リバースパスフィルタリング機能の緩やかなチェックを有効にします。NIC は、着信パケットごとに送信元アドレスに到達可能かどうかをチェックします。リバースルートが任意のポートを介して到達可能な場合、チェックは合格です。チェックが失敗した場合、パケットは破棄されます。

警告

このパラメーターを 1 に設定すると、パケット損失が発生する可能性があります。複数の NIC が搭載されていて、インバウンドポートとアウトバウンドポートが異なる NIC に存在する場合、パケットは破棄されます。したがって、マルチ NIC システムではリバースパスフィルタリング機能を有効にしないでください。

net.ipv4.conf.default.arp_announce

2

アドレス解決プロトコル(ARP)リクエストのすべての NIC から送信元 IP アドレスを選択する方法を指定します。有効値:

  • 0: デフォルトモード。デフォルトでは、システムは使用可能な IP アドレスを送信元 IP アドレスとして使用します。このモードでは、システムが ARP リクエストを送信するときに、カーネルは使用可能なローカルアドレスをランダムに ARP リクエストの送信元 IP アドレスとして選択する場合があります。

  • 1: 厳密モード。ほとんどの場合、カーネルは宛先 IP アドレスのサブネットとは異なるサブネットの IP アドレスを送信元 IP アドレスとして使用しません。カーネルは、宛先 IP アドレスと同じサブネット内の IP アドレスを送信元 IP アドレスとして選択します。そのようなアドレスが使用できない場合、カーネルはポートのプライマリ IP アドレスを使用します。

  • 2: 最も厳密なモード。カーネルは、アウトバウンドポートの IP アドレスを送信元 IP アドレスとして使用する必要があります。カーネルは、厳密モード(arp_announce=1)で説明されている手順を使用して、送信元 IP アドレスとして IP アドレスを選択します。カーネルが使用可能な送信元 IP アドレスを見つけられない場合、カーネルは ARP リクエストを送信するポートの IP アドレスを送信元 IP アドレスとして使用します。ARP リクエストを送信するポートの IP アドレスが使用できない場合、ARP リクエストは送信されません。

net.ipv4.conf.all.arp_announce

2

ARP リクエストの新しい NIC から送信元 IP アドレスを選択する方法を指定します。有効値:

  • 0: デフォルトモード。デフォルトでは、システムは使用可能な IP アドレスを送信元 IP アドレスとして使用します。このモードでは、システムが ARP リクエストを送信するときに、カーネルは使用可能なローカルアドレスをランダムに ARP リクエストの送信元 IP アドレスとして選択する場合があります。

  • 1: 厳密モード。ほとんどの場合、カーネルは宛先 IP アドレスのサブネットとは異なるサブネットの IP アドレスを送信元 IP アドレスとして使用しません。カーネルは、宛先 IP アドレスと同じサブネット内の IP アドレスを送信元 IP アドレスとして選択します。そのようなアドレスが使用できない場合、カーネルはポートのプライマリ IP アドレスを使用します。

  • 2: 最も厳密なモード。カーネルは、アウトバウンドポートの IP アドレスを送信元 IP アドレスとして使用する必要があります。カーネルは、厳密モード(arp_announce=1)で説明されている手順を使用して、送信元 IP アドレスとして IP アドレスを選択します。カーネルが使用可能な送信元 IP アドレスを見つけられない場合、カーネルは ARP リクエストを送信するポートの IP アドレスを送信元 IP アドレスとして使用します。ARP リクエストを送信するポートの IP アドレスが使用できない場合、ARP リクエストは送信されません。

net.ipv4.tcp_syncookies

1

SYN フラッド攻撃に対する TCP カーネル保護を有効にするかどうかを指定します。有効値:

  • 0: SYN フラッド攻撃に対する TCP カーネル保護を無効にします。

  • 1: SYN フラッド攻撃を防ぐために TCP カーネル保護を有効にします。

  • 2: SYN フラッド攻撃を防ぐために TCP カーネル保護を無条件に有効にします。このモードはテストシナリオで使用されます。

Alibaba Cloud Linux 3 のその他の一般的なシステム構成

パフォーマンス向上に使用されるパラメーター

項目

デフォルト値

説明

net.ipv4.ip_local_port_range

32,768 60,999

ポート番号の範囲。

クライアントがサーバーへの接続を確立する場合、TCP/UDP プロトコルでは、必要に応じてローカルポート番号を変更できます。 この範囲のポート番号のほとんどが使用されている場合、カーネルは新しいポートを線形検索するため、CPU 使用率が増加する可能性があります。

net.ipv4.tcp_rmem

4,096 131,072 6,291,456

単一の TCP ソケットrecvbuf のサイズ。単位:バイト。

初期値はインスタンスタイプに依存しません。 1 つ目は最小値、2 つ目はデフォルトサイズ、3 つ目は最大値です。メモリー使用量に基づいて値を増やすことをお勧めします。

net.ipv4.tcp_wmem

4,096 16,384 4,194,304

単一の TCP ソケットsendbuf のサイズ。単位:バイト。

初期値はインスタンスタイプに依存しません。 1 つ目は最小値、2 つ目はデフォルトサイズ、3 つ目は最大値です。メモリー使用量に基づいて値を増やすことをお勧めします。

net.core.netdev_max_backlog

1,000

percpu パラメーターは、ソケットバッファー(skb)キューの最大長を指定します。

ループバックデバイスまたは仮想イーサネットデバイス(veth)のキャッシュキューなど、キャッシュキューの最大長。このようなキャッシュキューは、主に受信パケットステアリング(RPS)またはホスト内通信に使用されます。

net.core.somaxconn

4,096

単一の ソケットListen backlog キューの最大長。

多数の短命接続を処理する NGINX などのアプリケーションでは、値を増やすことをお勧めします。

net.core.rmem_max

212,992

単一の ソケット で許可される最大 recvbuf 値。

このパラメーターは、主にカーネルが単一の UDP ソケット で多数の接続を処理する必要がある場合に使用されます。

TCP では、このオプションは、受信パケットのソケットごとの合計バッファースペース(SO_RCVBUF)を設定するために setsockopt() 関数が呼び出された場合にのみ使用されます。指定する recvbuf 値はこの値を超えることはできません。 setsockopt() 関数が呼び出されない場合、tcp recvbuf パラメーターは net.ipv4.tcp_rmem パラメーターによってのみ制限されます。

net.core.wmem_max

212,992

単一の ソケット で許可される最大 sendbuf 値。

このパラメーターは、主にカーネルが単一の UDP ソケット で多数の接続を処理する必要がある場合に使用されます。

TCP では、このオプションは、ユーザーが送信パケット用に予約されているソケットごとの合計バッファースペース(SO_SNDBUF)を設定するために setsockopt() 関数を呼び出した場合にのみ使用されます。指定する sendbuf 値はこの値を超えることはできません。 setsockopt() 関数が呼び出されない場合、tcp sendbuf パラメーターは net.ipv4.tcp_rmem パラメーターによってのみ制限されます。

/sys/block/<device>/queue/nomerges

0

マージ機能を有効にするかどうかを指定します。有効値:

  • 0: マージ機能のランダムモードを有効にします。

  • 1: 複雑な マージ機能を無効にし、単純な ワンショットマージ機能を有効にします。

  • 2: マージ機能のすべてのモードを無効にします。

連続 I/O 読み取りおよび書き込みアドレスの場合、カーネル I/O プロトコルスタックは、マージ機能を使用して、いくつかの連続 I/O 読み取りおよび書き込みアドレスを 1 つの大きな I/O にマージし、処理のために大きな I/O をハードウェアに送信します。これにより、ハードウェアの I/O パフォーマンスが大幅に向上します。

I/O 読み取りおよび書き込みアドレスがランダムな場合、I/O 操作はマージされない可能性があります。さらに、マージ操作を実行できるかどうかを確認すると、特定量の CPU サイクルが消費され、パフォーマンスに悪影響を及ぼします。マージ機能を無効にすることで、パフォーマンスを向上させることができます。

/sys/block/<device>/queue/read_ahead_kb

4,096

ファイルシステムの 先読みサイズ

カーネルはデフォルト値を 128 KB に設定します。 tuned サービスを使用して、値を 4,096 KB に増やすことができます。

配信される I/O 負荷のほとんどがランダム I/O 操作である場合は、サービスのパフォーマンスを向上させるために、値を 128 KB などに減らすことをお勧めします。

/sys/block/<device>/queue/rq_affinity

1

処理のために I/O 完了割り込みが送信される CPU。有効値:

  • 0: I/O 完了割り込みは、割り込みをトリガーした現在の CPU で処理されます。

  • 1: I/O 完了割り込みは、I/O リクエストを送信した CPU を含む グループに送信されます。ほとんどの場合、グループは、CPU が キャッシュを共有する ソケットを指します。値 1 は、I/O 完了割り込みが グループの最初の CPU に送信されることを示します。この設定の利点は、キャッシュフレンドリーであり、処理が高速であることです。欠点は、I/O 操作が頻繁に実行されると、グループの最初の CPU に高い負荷がかかることです。

  • 2: I/O 完了割り込みは、I/O リクエストを送信した CPU に送信されます。この設定の利点は、CPU の負荷が比較的バランスが取れていることです。欠点は、効率が前の設定よりも低いことです。

システムの I/O 負荷に基づいて値を選択することをお勧めします。

/sys/block/<device>/queue/scheduler

mq-deadline(単一キュー)または

none(複数キュー)

I/O デバイススケジューラー。

Alibaba Cloud Linux 3 は、mq-deadlinekyberbfqnone などのスケジューラーをサポートしています。

デフォルトでは、blk-mq デバイスは、単一キューが存在する場合は mq-deadline を選択し、複数キューが存在する場合は none を選択します。

ほとんどの場合、デフォルト設定が使用されます。読み取りレイテンシの短縮など、特別な要件がある場合は、kyber スケジューラーに切り替えて、対応するレイテンシ値を指定できます。

/sys/kernel/mm/pagecache_limit/enabled

0

Linux カーネルでページキャッシュ制限機能を有効にするかどうかを指定します。有効値:

  • 0: ページキャッシュ制限機能を無効にします。

  • 1: ページキャッシュ制限機能を有効にします。

重要

この設定は、Alibaba Cloud Linux 3 オペレーティングシステム用に Alibaba Cloud によって社内で開発されたものであり、長期間維持されない場合があります。

/sys/fs/cgroup/memory/memory.pagecache_limit.enable

0

現在の memcg に対してページキャッシュ制限機能を有効にするかどうかを指定します。有効値:

  • 0: 現在の memcg に対して ページキャッシュ制限機能を無効にします。

  • 1: 現在の memcg に対して ページキャッシュ制限機能を有効にします。

/sys/fs/cgroup/memory/memory.pagecache_limit.size

0

現在の memcg で使用可能な ページキャッシュのサイズ。単位:バイト。

有効値:0 から現在の memcg の memory.limit_in_bytes 値まで。 memory.limit_in_bytes 値を指定できます。

  • 0: カーネルおよび現在の memcg に対して有効になっているページキャッシュ制限設定に関係なく、現在の memcg に対してページキャッシュ制限機能を無効にします。

  • 0 以外の値:現在の memcg ツリーページキャッシュの使用量の上限を指定します。

ネットワークセキュリティパラメーター

項目

デフォルト値

説明

net.ipv4.conf.all.arp_ignore

0

既存の各 NIC の制御システムが、受信した ARP 要求に応じて ARP 応答を送信できるかどうかを指定します。有効値:

  • 0: ターゲット IP アドレスが ARP 要求を受信した NIC に属しているかどうかに関係なく、ループバック IP アドレスを含むローカル IP アドレス宛ての ARP 要求に応じて ARP 応答を送信します。

  • 1: ターゲット IP アドレスが ARP 要求を受信したローカル NIC のみに属している ARP 要求に応じて ARP 応答を送信します。

  • 2: ソース IP アドレスが NIC と同じ CIDR ブロックにある場合に限り、ARP 要求を受信した NIC のローカル IP アドレス宛ての ARP 要求に応じて ARP 応答を送信します。

たとえば、eth0 が、ターゲット IP アドレスが eth1 に属している ARP 要求を受信したとします。 net.ipv4.conf.all.arp_ignore が 0 に設定されている場合、eth0 は ARP 応答を送信します。 net.ipv4.conf.all.arp_ignore が 1 または 2 に設定されている場合、eth0 は ARP 要求に応答しません。これは、受信した ARP 要求の eth1 のターゲット IP アドレスが eth0 と同じ CIDR ブロックに属していないためです。

net.ipv4.conf.default.arp_ignore

0

新しい NIC の制御システムが、受信した ARP 要求に応じて ARP 応答を送信できるかどうかを指定します。有効値:

  • 0: ターゲット IP アドレスが ARP 要求を受信した NIC に属しているかどうかに関係なく、ループバック IP アドレスを含むローカル IP アドレス宛ての ARP 要求に応じて ARP 応答を送信します。

  • 1: ターゲット IP アドレスが ARP 要求を受信したローカル NIC のみに属している ARP 要求に応じて ARP 応答を送信します。

  • 2: ソース IP アドレスが NIC と同じ CIDR ブロックにある場合に限り、ARP 要求を受信した NIC のローカル IP アドレス宛ての ARP 要求に応じて ARP 応答を送信します。

たとえば、eth0 が、ターゲット IP アドレスが eth1 に属している ARP 要求を受信したとします。 net.ipv4.conf.all.arp_ignore が 0 に設定されている場合、eth0 は ARP 応答を送信します。 net.ipv4.conf.all.arp_ignore が 1 または 2 に設定されている場合、eth0 は ARP 要求に応答しません。これは、受信した ARP 要求の eth1 のターゲット IP アドレスが eth0 と同じ CIDR ブロックに属していないためです。

net.ipv4.ip_forward

0

IPv4 転送機能を有効にするかどうかを指定します。有効値:

  • 0: 機能を無効にします。

  • 1: 機能を有効にします。

リソース使用率を向上させるために使用されるパラメーター

項目

デフォルト値

説明

net.ipv4.tcp_fin_timeout

60

対応する ソケット接続をアクティブに切断する側で、TCP 接続が FIN-WAIT-2 状態のままになる時間。単位:秒。

この期間中、側はピアが切断するのを待機するか、ピアからデータを受信するのを待機します。値を変更すると、カーネルが FIN-WAIT-2 状態の TCP 接続を迅速に終了できるようになります。

実際のビジネスシナリオでは、netstat -ant | grep FIN_WAIT2 | wc -l コマンドを実行して、FIN-WAIT-2 状態の TCP 接続の数を確認できます。ほとんどの場合、デフォルト設定の 60 秒を使用することをお勧めします。多数の TCP 接続が FIN-WAIT-2 状態にある場合は、値を減らして TCP 接続の終了を高速化できます。詳細については、「Linux ECS インスタンスの一般的なカーネルネットワークパラメーターと FAQ」トピックのLinux ECS インスタンスに FIN_WAIT2 状態の TCP 接続が多数存在するのはなぜですか?をご参照ください。

net.ipv4.tcp_tw_reuse

2

TIME-WAIT 状態の ソケット での TCP 接続確立を許可するかどうかを指定します。有効値:

  • 0: TIME-WAIT 状態のソケットでの TCP 接続確立を許可しません。

  • 1: グローバルに TIME-WAIT 状態のソケットでの TCP 接続確立を許可します。

  • 2: ループバックインターフェイスに対してのみ、TIME-WAIT 状態のソケットでの TCP 接続確立を許可します。

net.ipv4.tcp_keepalive_time

7,200

キープアライブ機能が有効になっている場合に、キープアライブメッセージが送信される間隔。単位:秒。

キープアライブ機能は、TCP 接続が有効かどうかを確認します。

システム制限パラメーター

項目

デフォルト値

説明

fs.aio-max-nr

65,536

同時 Linux 非同期 I/O(AIO)リクエストの最大数。

このパラメーターの値は、Linux AIO リクエストシナリオによって異なります。たとえば、データベースと検索シナリオでは、大きな aio-max-nr 値が必要です。

aio-max-nraio-nr と連携して動作します。 aio-nr は、io_setup(unsigned nr_events, aio_context_t *ctx_idp) 関数の最初のパラメーター(nr_events)の値を累積することによって取得されます。 io_setup() 関数は、次の条件が満たされた場合に -EAGAIN エラーを返します。 aio-nr + nr_events > aio-max-nr。したがって、ビジネス環境の aio-nr に基づいて aio-max-nr を適切に指定できます。

fs.file-max

システム初期化用に予約されているメモリーのサイズによって異なります

システムで許可されるファイルハンドルの最大数。

システム初期化中に、予約済みメモリーの最大 10% をファイルハンドルが使用できます。このパラメーターのデフォルト値は、NR_FILE 値の 8192 以上である必要があります。

特別な要件がない場合は、デフォルト値を使用することをお勧めします。

fs.nr_open

1,048,576

プロセスで許可されるオープンファイルハンドルの最大数。

値は、リソース制限値と RLIMIT_NOFILE 値によって異なります。ほとんどの場合、ulimit -n コマンドを実行して nr_open 値を指定できます。値は fs.nr_open 値を超えることはできません。

監視パラメーター

項目

デフォルト値

説明

net.netfilter.nf_conntrack_max

262,144

nf_conntrack モジュール内のハッシュテーブルでサポートされる最大接続数です。

デフォルト値は、次の式を使用して計算されます。net.netfilter.nf_conntrack_max = 4 × net.netfilter.nf_conntrack_buckets

詳細については、「ECS インスタンス上のアプリケーションがパケットを断続的にドロップし、カーネルログに「kernel: nf_conntrack: table full, dropping packet」というエラーメッセージが表示される場合の対処方法」をご参照ください。

net.netfilter.nf_conntrack_tcp_timeout_time_wait

120

nf_conntrack モジュールで TIME_WAIT 状態の TCP 接続のタイムアウト期間です。単位:秒。

net.netfilter.nf_conntrack_tcp_timeout_established

432,000

非アクティブが原因で、確立された TCP 接続が iptables によって閉じられるまでのタイムアウト期間です。単位:秒。

fs.inotify.max_queued_events

16,384

inotify メカニズムの保留中のイベントの最大キュー長です。

inotify は、ファイルとディレクトリを監視するためにカーネルによって提供されるインフラストラクチャです。inotify は、ディレクトリと、ディレクトリに保存されているファイルのファイルシステムイベントを監視できます。

特別な要件がない場合は、デフォルト値を使用することをお勧めします。

fs.inotify.max_user_instances

128

作成できる inotify インスタンスの最大数です。

このパラメーターは、過剰な inotify インスタンスの作成によるメモリなどのシステムリソースの過剰な消費を防ぐために使用されます。

特別な要件がない場合は、デフォルト値を使用することをお勧めします。

fs.inotify.max_user_watches

8,192

追加できる watches の最大数です。

watch は、inotify メカニズムが監視するオブジェクトです。watch には 2 つのコンポーネントが含まれています。1 つはパス名で、監視対象のファイルまたはディレクトリを指します。もう 1 つは、パス名が指す監視対象のファイルまたはディレクトリに対する操作のイベントの組み合わせ(ファイルアクセスイベントなど)です。マスクを使用して、ファイル操作のイベントの組み合わせを記述できます。

/sys/block/<device>/queue/hang_threshold

5,000

実行時のウォッチドッグ I/O ハングしきい値です。単位:ミリ秒。

ビジネス要件に基づいてパラメーターの値を変更できます。詳細については、「ファイルシステムとブロックレイヤーの I/O ハングを検出する」をご参照ください。

重要

この設定は、Alibaba Cloud Linux 3 オペレーティングシステム向けに Alibaba Cloud によって社内で開発されたものであり、長期間にわたって維持されない場合があります。