저는 다음을 기반으로 서버, 특히 미디어 서버를 재구축했습니다.데비안 12안정(커널6.1).
- CPU:i7-6700K(오버클럭 없이)
- 메모리: 16GB DDR4(듀얼 채널)
- 네트워크 카드: 2 2.5Gbit(바운드잔액-tlb) (최대 전송 단위bond0:4096. 하지만 내 네트워크 홈에는 클래식 MTU가 있습니다)
- 그래픽 프로세서: PHY T400(4GB 버전)
- 저장: 삼SSD
이러한 SSD의 구성은 다음과 같습니다.
- SSD1: 영화당 1TB(xfs)(스케줄러:전혀)
- SSD2:운영 체제의 경우 250GB(125GBOS, 스왑용 125GB)(외부 4)(스케줄러:전혀)
Disk /dev/sdb: 232,89 GiB, 250059350016 bytes, 488397168 sectors
Disk model: Samsung SSD 860
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xcfa6d02d
Device Boot Start End Sectors Size Id Type
/dev/sdb1 * 2048 244140031 244137984 116,4G 83 Linux
/dev/sdb2 244140032 488280063 244140032 116,4G 82 Linux swap / Solaris
dumpe2fs 1.47.0 (5-Feb-2023)
Filesystem volume name: root
Last mounted on: /
Filesystem UUID: 927a3648-60d1-4537-af56-0d87ff5a6e0b
Filesystem magic number: 0xEF53
Filesystem revision #: 1 (dynamic)
Filesystem features: has_journal ext_attr resize_inode dir_index fast_commit filetype needs_recovery extent 64bit flex_bg sparse_super large_file huge_file dir_nlink extra_isize metadata_csum
Filesystem flags: signed_directory_hash
Default mount options: user_xattr acl
Filesystem state: clean
Errors behavior: Continue
Filesystem OS type: Linux
Inode count: 7634944
Block count: 30517248
Reserved block count: 305172
Overhead clusters: 625720
Free blocks: 28139695
Free inodes: 7541676
First block: 0
Block size: 4096
Fragment size: 4096
Group descriptor size: 64
Reserved GDT blocks: 1024
Blocks per group: 32768
Fragments per group: 32768
Inodes per group: 8192
Inode blocks per group: 512
Flex block group size: 16
Filesystem created: Tue Oct 17 02:41:54 2023
Last mount time: Thu Oct 19 19:21:21 2023
Last write time: Thu Oct 19 19:21:21 2023
Mount count: 25
Maximum mount count: -1
Last checked: Wed Oct 18 03:33:16 2023
Check interval: 0 (<none>)
Lifetime writes: 90 GB
Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root)
First inode: 11
Inode size: 256
Required extra isize: 32
Desired extra isize: 32
Journal inode: 8
Default directory hash: half_md4
Directory Hash Seed: 5f52b9e5-cf5a-438c-9e90-0c2d91207ea7
Journal backup: inode blocks
Checksum type: crc32c
Checksum: 0x2f208f9b
Journal features: journal_incompat_revoke journal_64bit journal_checksum_v3 FEATURE_I5
Total journal size: 512M
Total journal blocks: 131072
Max transaction length: 130816
Fast commit length: 256
Journal sequence: 0x0000796d
Journal start: 1
Journal checksum type: crc32c
Journal checksum: 0x0a6d11a2
- SSD3:"일반" 캐싱(트랜스코딩, fscache를 통한 네트워크 마운트 지점 캐싱 등)의 경우 500GB입니다. (외부 4)(스케줄러:전혀)
Disk /dev/sdc: 465,76 GiB, 500107862016 bytes, 976773168 sectors
Disk model: CT500MX500SSD1
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
dumpe2fs 1.47.0 (5-Feb-2023)
Filesystem volume name: <none>
Last mounted on: /cache
Filesystem UUID: 070d06bd-6a01-4457-b20f-cf699f412168
Filesystem magic number: 0xEF53
Filesystem revision #: 1 (dynamic)
Filesystem features: has_journal ext_attr resize_inode dir_index fast_commit filetype needs_recovery extent 64bit flex_bg sparse_super large_file huge_file dir_nlink extra_isize metadata_csum
Filesystem flags: signed_directory_hash
Default mount options: user_xattr acl
Filesystem state: clean
Errors behavior: Continue
Filesystem OS type: Linux
Inode count: 30531584
Block count: 122096646
Reserved block count: 0
Overhead clusters: 2201430
Free blocks: 119895208
Free inodes: 30531569
First block: 0
Block size: 4096
Fragment size: 4096
Group descriptor size: 64
Reserved GDT blocks: 1024
Blocks per group: 32768
Fragments per group: 32768
Inodes per group: 8192
Inode blocks per group: 512
Flex block group size: 16
Filesystem created: Wed Oct 18 19:01:18 2023
Last mount time: Thu Oct 19 19:21:22 2023
Last write time: Thu Oct 19 19:21:22 2023
Mount count: 16
Maximum mount count: -1
Last checked: Wed Oct 18 19:01:18 2023
Check interval: 0 (<none>)
Lifetime writes: 48 GB
Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root)
First inode: 11
Inode size: 256
Required extra isize: 32
Desired extra isize: 32
Journal inode: 8
Default directory hash: half_md4
Directory Hash Seed: cbad2af6-a244-4e66-b27c-3e8dea9f8f2f
Journal backup: inode blocks
Checksum type: crc32c
Checksum: 0x47fb58ba
Journal features: journal_incompat_revoke journal_64bit journal_checksum_v3 FEATURE_I5
Total journal size: 1040M
Total journal blocks: 266240
Max transaction length: 262144
Fast commit length: 4096
Journal sequence: 0x00000384
Journal start: 0
Journal checksum type: crc32c
Journal checksum: 0xae89c35f
사용된 소프트웨어:무리(그리고하드웨어트랜스코딩/인코딩) 및제공하다(DLNA 소프트웨어)
대용량 파일이 호스팅될 것이기 때문에 영화의 파일 시스템으로 xfs를 선택했습니다(xfs는 이 유형의 파일에서 수행되는 것으로 알려져 있음). 다른 모든 SSD에 대해서도 캐싱을 위해 ext4를 선택했습니다. 내가 올바른 선택을 한 걸까? 사소한 전제: 서버는 "채널" 역할만 하기 때문에 백업 계획, 파일 시스템과 관련된 데이터 보안 등과 관련된 서버/스토리지를 보지 마십시오... 더 자세히 설명하겠습니다... 즉, 코드, 파일 접근 속도(cifs/fscache 경유), 파일 공유 미디어 관련 모든 면에서 최선을 다하고 있어서 뭔가 손상되더라도 아무것도 잃지 않는데... 내가 이해하는지 모르겠어요. 그래서 처리량을 포함하여 작업 속도를 최대한 높이기 위한 최적화/설정을 찾습니다. 구성을 포스팅해봤습니다. 좀 더 전문가의 의견을 토대로 변경/추가해야 할 사항이 있나요? 이러한 구성을 제외하고 운영 체제에서도 뭔가를 변경해야 합니까? 위의 주로 사용하는 소프트웨어는 생략하고 rsyslogd만 실행했습니다.
유충
GRUB_CMDLINE_LINUX_DEFAULT="quiet mitigations=off nopti net.ifnames=0 biosdevname=0 intel_idle.max_cstate=1 i915.enable_psr=0 i915.enable_dc=0 zswap.enabled=1 zswap.compressor=lzo nowatchdog nosgx"
시스템 구성 파일
kernel.sysrq=0
vm.swappiness=1
vm.vfs_cache_pressure=60
fs.suid_dumpable=0
kernel.core_pattern=|/bin/false
net.ipv6.conf.all.disable_ipv6=1
net.ipv6.conf.default.disable_ipv6=1
net.ipv6.conf.lo.disable_ipv6=1
net.ipv4.tcp_keepalive_time = 60
net.ipv4.tcp_keepalive_intvl = 10
net.ipv4.tcp_keepalive_probes = 3
net.ipv4.tcp_fastopen=3
net.ipv4.tcp_tw_reuse=1
net.ipv4.tcp_fin_timeout=5
net.ipv4.tcp_sack=1
net.core.default_qdisc=cake
net.ipv4.tcp_congestion_control=bbr