Skip to content

Commit e67129a

Browse files
committed
[ko] Translate content/en/docs/reference/node/kernel-version-requirements.md into Korean
Translate Linux kernel version requirements reference page into Korean following the official kubernetes/website Korean localization guidelines. Closes: #54476
1 parent 69967be commit e67129a

File tree

1 file changed

+99
-0
lines changed

1 file changed

+99
-0
lines changed
Lines changed: 99 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,99 @@
1+
---
2+
content_type: "reference"
3+
title: 리눅스 커널 버전 요구 사항
4+
weight: 10
5+
---
6+
7+
{{% thirdparty-content %}}
8+
9+
많은 기능이 특정 커널 기능에 의존하며 최소 커널 버전 요구 사항이 있다.
10+
그러나 특정 운영 체제 배포판에서는 커널 버전 번호에만 의존하는 것이 충분하지
11+
않을 수 있다.
12+
RHEL, 우분투, SUSE와 같은 배포판의 메인테이너들이 선택된 기능을 이전 커널 릴리스에
13+
백포트(이전 커널 버전을 유지하면서)하는 경우가 많기 때문이다.
14+
15+
## 파드 sysctl
16+
17+
리눅스에서 `sysctl()` 시스템 콜은 런타임에 커널 파라미터를 설정한다. 이러한
18+
파라미터를 설정하는 데 사용할 수 있는 `sysctl`이라는 커맨드라인 툴이 있으며, 많은 파라미터가
19+
`proc` 파일시스템을 통해 노출된다.
20+
21+
일부 sysctl은 충분히 최신 커널이 있는 경우에만 사용할 수 있다.
22+
23+
다음 sysctl은 최소 커널 버전 요구 사항이 있으며,
24+
[안전한 집합(safe set)](/docs/tasks/administer-cluster/sysctl-cluster/#safe-and-unsafe-sysctls)에서 지원된다.
25+
26+
<!--
27+
Code: https://github.com/kubernetes/kubernetes/blob/00236ae0d73d2455a2470469ed1005674f8ed61f/pkg/util/kernel/constants.go#L19-L45
28+
-->
29+
- `net.ipv4.ip_local_reserved_ports` (쿠버네티스 1.27부터, 커널 3.16+ 필요);
30+
- `net.ipv4.tcp_keepalive_time` (쿠버네티스 1.29부터, 커널 4.5+ 필요);
31+
- `net.ipv4.tcp_fin_timeout` (쿠버네티스 1.29부터, 커널 4.6+ 필요);
32+
- `net.ipv4.tcp_keepalive_intvl` (쿠버네티스 1.29부터, 커널 4.5+ 필요);
33+
- `net.ipv4.tcp_keepalive_probes` (쿠버네티스 1.29부터, 커널 4.5+ 필요);
34+
- `net.ipv4.tcp_syncookies` (커널 4.6+부터 네임스페이스 지원).
35+
- `net.ipv4.tcp_rmem` (쿠버네티스 1.32부터, 커널 4.15+ 필요).
36+
- `net.ipv4.tcp_wmem` (쿠버네티스 1.32부터, 커널 4.15+ 필요).
37+
- `net.ipv4.vs.conn_reuse_mode` (`ipvs` 프록시 모드에서 사용, 커널 4.1+ 필요);
38+
39+
### kube proxy `nftables` 프록시 모드
40+
41+
<!--
42+
Code: https://github.com/kubernetes/kubernetes/blob/00236ae0d73d2455a2470469ed1005674f8ed61f/pkg/util/kernel/constants.go#L53-L56
43+
-->
44+
쿠버네티스 {{< skew currentVersion >}}에서,
45+
kube-proxy의 [`nftables` 모드](/docs/reference/networking/virtual-ips/#proxy-mode-nftables)
46+
nft 커맨드라인 툴의 버전 1.0.1 이상과
47+
커널 5.13 이상이 필요하다.
48+
49+
테스트/개발 목적으로는 kube-proxy 설정에서
50+
`nftables.skipKernelVersionCheck` 옵션을 설정하면 5.4까지의 이전 커널을 사용할 수 있다.
51+
그러나 시스템의 다른 nftables 사용자와 문제를 일으킬 수 있으므로
52+
프로덕션 환경에서는 권장하지 않는다.
53+
54+
## 버전 2 컨트롤 그룹(control group)
55+
56+
쿠버네티스 v1.31부터 cgroup v1 지원은 유지 관리 모드이며, cgroup v2
57+
사용을 권장한다.
58+
[리눅스 5.8](https://github.com/torvalds/linux/commit/4a7e89c5ec0238017a757131eb9ab8dc111f961c)에서 편의를 위해 시스템 레벨 `cpu.stat` 파일이 루트 cgroup에 추가되었다.
59+
60+
runc 문서에서는, freezer 부재로 인해 커널 5.2 이전 버전은 권장하지 않는다.
61+
62+
## PSI(Pressure Stall Information) {#requirements-psi}
63+
64+
[PSI(Pressure Stall Information)](/docs/reference/instrumentation/understand-psi-metrics/)는 리눅스 커널 버전 4.20 이상에서 지원되지만, 다음 설정이 필요하다.
65+
66+
- 커널이 `CONFIG_PSI=y` 옵션으로 컴파일되어야 한다. 대부분의 최신 배포판은 이를 기본적으로 활성화한다. `zgrep CONFIG_PSI /proc/config.gz`를 실행하여 커널 설정을 확인할 수 있다.
67+
- 일부 리눅스 배포판은 PSI를 커널에 컴파일하지만 기본적으로 비활성화할 수 있다. 이 경우, 커널 커맨드라인에 `psi=1` 파라미터를 추가하여 부트 시 활성화해야 한다.
68+
69+
## 기타 커널 요구 사항 {#requirements-other}
70+
71+
일부 기능은 새로운 커널 기능에 의존할 수 있으며 특정 커널 요구 사항이 있다.
72+
73+
<!--
74+
Code(recursive read only mount): https://github.com/kubernetes/kubernetes/blob/00236ae0d73d2455a2470469ed1005674f8ed61f/staging/src/k8s.io/cri-api/pkg/apis/runtime/v1/api.proto#L1605-L1609
75+
Code(user namespace and swap): https://github.com/kubernetes/kubernetes/blob/00236ae0d73d2455a2470469ed1005674f8ed61f/pkg/util/kernel/constants.go#L47-L51
76+
-->
77+
1. [재귀적 읽기 전용 마운트](/docs/concepts/storage/volumes/#recursive-read-only-mounts):
78+
리눅스 커널 v5.12에 추가된 `mount_setattr`(2)를 사용하여
79+
`AT_RECURSIVE` 플래그와 함께 `MOUNT_ATTR_RDONLY` 속성을 적용하여 구현된다.
80+
2. 파드 사용자 네임스페이스 지원은
81+
[KEP-127](https://github.com/kubernetes/enhancements/blob/master/keps/sig-node/127-user-namespaces/README.md)에 따라 최소 커널 버전 6.5+가 필요하다.
82+
3. [노드 시스템 스왑(swap)](/docs/concepts/architecture/nodes/#swap-memory)의 경우, `noswap`으로 설정된 tmpfs는
83+
커널 6.3까지 지원되지 않는다.
84+
85+
## 리눅스 커널 장기 유지 관리
86+
87+
활성 커널 릴리스는 [kernel.org](https://www.kernel.org/category/releases.html)에서 확인할 수 있다.
88+
89+
이전 커널 트리에 대한 버그 수정을 백포트하기 위해 보통 여러 _장기 유지 관리(long term maintenance)_ 커널 릴리스가
90+
제공된다. 이러한 커널에는 중요한 버그 수정만 적용되며, 특히 오래된
91+
트리의 경우 매우 빈번하게 릴리스되지 않는다.
92+
리눅스 커널 웹사이트의 _Longterm_ 카테고리에서
93+
[릴리스 목록](https://www.kernel.org/category/releases.html)을 참고한다.
94+
95+
## {{% heading "whatsnext" %}}
96+
97+
- 자세한 내용은 [sysctl](/docs/tasks/administer-cluster/sysctl-cluster/)을 참고한다.
98+
- kube-proxy를 [nftables 모드](/docs/reference/networking/virtual-ips/#proxy-mode-nftables)로 실행할 수 있다.
99+
- [cgroup v2](/docs/concepts/architecture/cgroups/)에서 더 많은 정보를 확인한다.

0 commit comments

Comments
 (0)