uname -r on your system.crashkernel reservation and cgroup limits may cause the system to fail to boot or workloads to be terminated unexpectedly./sys and /proc interfaces may be read-only due to host cgroup restrictions. Configure them on the host instead.sudo -i or an account with sudo privileges./boot/config-$(uname -r) must exist. Otherwise, you cannot use grep to verify CONFIG_* items./sys and /proc (such as cgroup and THP) on the host. When these write operations are executed inside a container, these interfaces are restricted by the host cgroup and may be read-only or not writable.uname -r and confirm that the output starts with 6.6.x. If the output starts with 5.4.x, some features are unavailable. For details, see "Applicable Versions" below.sysctl, cgroup, and BBR may affect online workloads. Perform these operations within a maintenance window and prepare a rollback plan.System Version | Kernel Series | Base Kernel Version | Support Status |
TencentOS Server 4 | Linux 6.6 LTS | 6.6 | Default version, fully supported, recommended. |
TencentOS Server 3 | Linux 5.4 LTS | 5.4 | Maintenance version |
CONFIG_* values).# View the running kernel versionuname -r# Output: 6.6.79-25.8.tl4.x86_64# View detailed kernel information (including architecture and compiler)cat /proc/version# Output: Linux version 6.6.79-25.8.tl4.x86_64 (gcc ...)# View the CPU architectureuname -m# Output: x86_64
Feature | Supported Kernel Versions | Business Values | Applicable Scenarios |
EEVDF scheduler | Enabled by default in 6.6 | Replaces the traditional CFS algorithm, reduces tail latency, and improves the response speed of interactive services. | Online services, Web applications, and latency-sensitive services |
PSI(Pressure Stall Information) | 5.4 | Monitors CPU, memory, and I/O resource pressure in real time, helping quickly locate performance bottlenecks. | Container colocation, performance tuning, and capacity planning |
cgroup CPU Control | All versions | Limits CPU usage at the process granularity to prevent a single workload from monopolizing resources. | Multi-tenant isolation and container resource management |
Feature | Supported Kernel Versions | Business Values | Applicable Scenarios |
Transparent Huge Pages (THP) | All versions (enabled by default in 6.6) | Reduce page table overhead and improve access efficiency for large-memory applications. | Databases, virtual machines, and AI inference |
Explicit Huge Pages (HugeTLB) | All versions | Reserve fixed huge pages for large-memory applications to avoid runtime allocation latency. | Databases (such as Redis and MySQL) and HPC |
cgroup v2 Memory Control | 5.4+ | Finely control memory usage of containers/processes to prevent a single process memory leak from crashing the entire machine. | Container orchestration and colocation scenarios |
Multi-Gen LRU | Enabled by default in 6.6 | Optimize memory reclamation efficiency and reduce unnecessary page swapping. | Memory-intensive workloads |
Feature | Supported Kernel Versions | Business Values | Applicable Scenarios |
io_uring | 5.1+ (fully supported in 6.6) | High-performance asynchronous I/O interface that reduces system call overhead and significantly improves IOPS and throughput. | High-concurrency databases, network proxies, and file services |
blk-mq multi-queue | All versions | Fully utilize NVMe/SSD multi-queue capabilities to improve block device I/O performance. | All-flash storage and high-IO workloads |
cgroup v2 I/O Control | 5.4+ | Limit the IO bandwidth and IOPS of containers/processes to prevent a single workload from saturating the disk. | Multi-tenant storage isolation |
Feature | Supported Kernel Versions | Business Values | Applicable Scenarios |
eBPF(XDP/TC) | 5.4+ (fully supported in 6.6) | Kernel programmable data plane for high-performance packet processing, traffic analysis, and security filtering | Anti-DDoS, network monitoring, and load balancing |
TCP BBR congestion control | 4.9+ | Replaces the traditional cubic algorithm and improves throughput on high-bandwidth, high-latency links. | Cross-region data transfer and public network services |
Million-level conntrack connections | All versions | Supports ultra-large-scale concurrent connection tracking | High-concurrency gateways and load balancing |
Feature | Supported Kernel Versions | Business Values | Applicable Scenarios |
SELinux | All versions | Mandatory access control, providing fine-grained security policies. | Security compliance and multi-tenant environments |
Linux Kernel Lockdown | 5.4+ | Restrict kernel interface exposure and work with Secure Boot to protect kernel integrity. | Scenarios with high security compliance requirements |
Seccomp-BPF | All versions | System call filtering, reducing the container attack surface. | Container security baseline |
Complete Namespace support | All versions | Support all mount/uts/ipc/pid/net/user/cgroup/time namespaces. | Container isolation and sandboxing |
Feature | Supported Kernel Versions | Business Values | Applicable Scenarios |
eBPF observability toolchain | 5.4+ (fully supported in 6.6) | Non-intrusive kernel tracing to identify performance bottlenecks and abnormal behaviors | Performance tuning, fault diagnosis, and security audit |
ftrace | All versions | Built-in kernel tracing mechanism for analyzing function call relationships | Kernel debugging and performance analysis |
perf | All versions | CPU profiling and PMU event sampling | Locate performance bottlenecks |
kdump/kexec | All versions | Automatically save memory images upon kernel crash for post-incident analysis. | Ensuring production environment stability |
Feature Category | Feature | 6.6 LTS | 5.4 LTS |
Scheduling | EEVDF scheduler | Enabled by default | Not supported |
Scheduling | PSI | Supported | Supported |
Memory Capacity | Transparent Huge Pages (THP) | Enabled by default | Supported |
Memory Capacity | Multi-Gen LRU | Enabled by default | Not supported. |
IO | io_uring | Supported | Supported |
Network | eBPF (XDP/TC) | Supported | Supported |
Network | TCP BBR | Supported | Supported |
Security | Kernel Lockdown | Supported | Supported |
Debugging | kdump/kexec | Supported | Supported |
Interface File | Description |
/boot/config-$(uname -r) | Kernel compilation configuration (full) |
/proc/version | Kernel version information |
uname -r | Running kernel version |
sysctl -w <parameter>=<original value> and echo <original value> > /sys/...).crashkernel reservation and cgroup limits, if configured improperly, may cause the system to fail to boot or workloads to be terminated unexpectedly.uname -r# Expected output: 6.6.117-45.14.tl4.x86_64
cat /proc/version# Expected output: Linux version 6.6.117-45.14.tl4.x86_64 (gcc ...) ...
ls -l /boot/config-$(uname -r)# Expected output: -rw-r--r--. 1 root root 273465 ... /boot/config-6.6.117-45.14.tl4.x86_64
=y is enabled):grep CONFIG_CGROUPS=y /boot/config-$(uname -r) # cgroup supportgrep CONFIG_BPF=y /boot/config-$(uname -r) # eBPF supportgrep CONFIG_IO_URING=y /boot/config-$(uname -r) # io_uring supportgrep CONFIG_TRANSPARENT_HUGEPAGE=y /boot/config-$(uname -r) # Transparent Hugepages# Expected output: Each command returns CONFIG_CGROUPS=y / CONFIG_BPF=y / CONFIG_IO_URING=y / CONFIG_TRANSPARENT_HUGEPAGE=y respectively.
cubic to bbr, which is suitable for cross-region data transfer and public network service scenarios:sysctl net.ipv4.tcp_available_congestion_control# Expected output: net.ipv4.tcp_available_congestion_control = reno cubic bbr ... (bbr should be included)
modprobe tcp_bbrecho tcp_bbr > /etc/modules-load.d/bbr.conf # Load automatically at boot# Expected output: No errors. Run sysctl net.ipv4.tcp_available_congestion_control again and bbr should be displayed.
sysctl -w net.ipv4.tcp_congestion_control=bbr# Expected output: net.ipv4.tcp_congestion_control = bbr
echo "net.ipv4.tcp_congestion_control=bbr" > /etc/sysctl.d/99-bbr.confsysctl -p /etc/sysctl.d/99-bbr.conf# Expected output: net.ipv4.tcp_congestion_control = bbr
sysctl net.ipv4.tcp_congestion_control# Expected output: net.ipv4.tcp_congestion_control = bbr
cat /sys/kernel/mm/transparent_hugepage/enabled# Expected output: [always] madvise never (Brackets around always indicate that it is globally enabled)
echo always > /sys/kernel/mm/transparent_hugepage/enabled# Expected output: None. Run cat again and [always] madvise never should be displayed.
echo "echo always > /sys/kernel/mm/transparent_hugepage/enabled" >> /etc/rc.localchmod +x /etc/rc.local# Expected output: None. The status remains always after a restart.
cat /boot/config-$(uname -r) return "No such file or directory"?yum install -y kernel-debuginfo-$(uname -r), or extract /boot/config-* from the RPM package of the same kernel version. Alternatively, you can use zcat /proc/config.gz if the kernel was compiled with CONFIG_IKCONFIG_PROC.grep CONFIG_BPF=y return nothing, but grep CONFIG_BPF=m has output?=m means compiled as a module, and =y means built-in. Both are functionally available, but the module form requires loading with modprobe before it can be used. During verification, check both =y and =m:grep -E '^CONFIG_BPF=(y|m)' /boot/config-$(uname -r)
grep CONFIG_<feature> /boot/config-$(uname -r) to check whether the feature is compiled in the current kernel.=y is returned, the feature is built in and can be used directly without loading a module. If =m is returned, run modprobe <module_name> to load the module before use.grep returns no output, the feature is not compiled in the current 5.4.x kernel. Some features, such as the EEVDF scheduler, cannot be enabled through modules. You need to upgrade to TencentOS Server 4 to obtain default support.sysctl -w take effect immediately but become invalid after a reboot?sysctl -w takes effect only at runtime. To persist the setting, write it to /etc/sysctl.d/*.conf. For example, run echo "net.ipv4.tcp_congestion_control=bbr" > /etc/sysctl.d/99-bbr.conf, and then run sysctl -p /etc/sysctl.d/99-bbr.conf to load it./sys/fs/cgroup/... in a container return a "Read-only file system" error?/sys is typically mounted read-only and is restricted by the host cgroup. Run the relevant cgroup configuration as root on the host. On the container side, configure it indirectly through a systemd unit or container runtime parameters, such as Docker's --cpu-quota.Apakah halaman ini membantu?
Anda juga dapat Menghubungi Penjualan atau Mengirimkan Tiket untuk meminta bantuan.
masukan