최고의 리눅스 네트워크 튜닝 팁? [닫은]


6

리눅스 네트워크 튜닝에 대한 중심적인 질문을하는 것이 좋은 생각이라고 생각합니다. 특히 다음에 대한 조정 옵션에 관심이 있습니다.

  1. 웹 서버
  2. 와니스 / 오징어 서버
  3. DB 서버
  4. 파일 서버
  5. 앱 서버

1
이 중 많은 부분이 실제로 수행 / 제공하는 작업에 따라 매우 주관적입니다.
f4nt

... 및 응용 프로그램마다 다른 OS 조정이 필요합니다. 예를 들어 LAN의 파일 서버는 큰 수의 버퍼로 구성하여 적당한 수의 사용자를 빠르게 서버에 배치해야합니다. 공용 웹 사이트는 리소스 고갈을 피하기 위해 각 연결에 제공되는 버퍼링 양을 소중히해야하는 반면
Dave Cheney

그렇기 때문에 다른 서버에 대해 다른 제안을 찾고 있는데, 하나의 크기만으로는 적합하지 않습니다.
JB.

그런 다음 별도의 질문을하십시오.
womble

답변:


5

이 시점에서는 일반적으로 커널 내에서 "튜닝"오버 헤드가 발생하지 않습니다. 당신이 테스트 장비 (또는 A / B 형에 옵션 클러스터) 및이 없다면 아주 좋은 문서를이 혼자 SYS-관리 오버 헤드 그럴 가치가 없어.

요즘 리눅스 커널에는 TCP의 자동 튜닝 이 잘되어 있지만, 더 잘할 있지만, 인터넷에서 "욕심이 많고"공정하지 않은 것으로 보이므로 기본값이 아닙니다.

튜닝에 가까워지면 다음과 같습니다.

  1. ext3 또는 xfs를 사용하여 noatime 마운트 (nodiratime 포함)
  2. 필요한 서비스 만 실행
  3. 오징어 및 mysql과 같은 서비스의 경우 더 많은 RAM을 사용할 수 있습니다.

드문 예외를 제외하고는이 세 가지로 90 %의 수익을 얻을 수 있습니다.


3

네트워크 스택 튜닝 내가 수백 명의 사용자에게 연결하는 라우터 / 방화벽을 착용

net/ipv4/route/max_size=262144
net/ipv4/netfilter/ip_conntrack_tcp_timeout_established=18000
net/ipv4/neigh/default/gc_thresh1=1024
net/ipv4/neigh/default/gc_thresh2=2048
net/ipv4/neigh/default/gc_thresh3=4096
net/netfilter/nf_conntrack_max=128000
net/netfilter/nf_conntrack_expect_max=4096

[불쾌한 충돌로 인해 수년에 걸쳐 경험적으로 조정되었습니다]

file / sql / poroxy 서버의 경우 , 파일을 읽을 때마다 추가 디스크 휴지통을 피하기 위해 noatime, nodiratime 및 reiserfs-notail을 사용하여 데이터 / 스풀로 파티션을 마운트하려고합니다 .

용량 계획을 수행하고 튜닝이 실제로 시스템로드를 감소시키는 지 확인하려면 [ 예 : 아직 모르는;-] munin으로 통계를 수집 하십시오.


1

web100 을보고 싶을 수도 있습니다 . 커널 패치이며 사용자 네트워크는 고성능 네트워크를 위해 Linux 커널을 최적화하도록 설계되었습니다.

Web100 프로젝트는 네트워크 기능의 규모에 관계없이 가용 대역폭의 100 %에서 공통 웹 응용 프로그램을 실행하는 완전한 호스트 소프트웨어 환경을 만드는 것을 목표로합니다.

고성능 SSH / SCP 도 확인하십시오 .

OpenSSH에서 SCP와 기본 SSH2 프로토콜 구현은 정적으로 정의 된 내부 흐름 제어 버퍼에 의해 네트워크 성능이 제한됩니다. 이 버퍼는 종종 네트워크 링크가 길고 높은 대역폭에서 SCP의 네트워크 처리량에 병목 현상을 일으키는 경우가 많습니다. 런타임시 버퍼를 정의 할 수 있도록 ssh 코드를 수정하면이 병목 현상이 제거됩니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.