Skip to content

Commit c86777c

Browse files
gochistseokho-son
andcommitted
[ko] Update content/ko/docs/concepts/services-networking/
refs #30000 tasks M23, M24, M25 and M26 Co-authored-by: Seokho Son <[email protected]>
1 parent c728913 commit c86777c

File tree

4 files changed

+31
-6
lines changed

4 files changed

+31
-6
lines changed

content/ko/docs/concepts/services-networking/connect-applications-service.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,7 @@ curl을 할 수 있을 것이다. 서비스 IP는 완전히 가상이므로 외
129129

130130
쿠버네티스는 서비스를 찾는 두 가지 기본 모드인 환경 변수와 DNS를
131131
지원한다. 전자는 기본적으로 작동하지만 후자는
132-
[CoreDNS 클러스터 애드온](https://releases.k8s.io/master/cluster/addons/dns/coredns)이 필요하다.
132+
[CoreDNS 클러스터 애드온](https://releases.k8s.io/{{< param "fullversion" >}}/cluster/addons/dns/coredns)이 필요하다.
133133
{{< note >}}
134134
만약 서비스 환경 변수가 필요하지 않은 경우(소유한 프로그램과의 예상되는 충돌 가능성,
135135
처리할 변수가 너무 많은 경우, DNS만 사용하는 경우 등) [파드 사양](/docs/reference/generated/kubernetes-api/{{< param "version" >}}/#pod-v1-core)에서

content/ko/docs/concepts/services-networking/dns-pod-service.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -217,13 +217,13 @@ DNS 정책은 파드별로 설정할 수 있다.
217217

218218
- "`Default`": 파드는 파드가 실행되고 있는 노드로부터 네임 해석 설정(the name resolution configuration)을 상속받는다.
219219
자세한 내용은
220-
[관련 논의](/ko/docs/tasks/administer-cluster/dns-custom-nameservers/)에서
220+
[관련 논의](/ko/docs/tasks/administer-cluster/dns-custom-nameservers)에서
221221
확인할 수 있다.
222222
- "`ClusterFirst`": "`www.kubernetes.io`"와 같이 클러스터 도메인 suffix 구성과
223223
일치하지 않는 DNS 쿼리는 노드에서 상속된 업스트림 네임서버로 전달된다.
224224
클러스터 관리자는 추가 스텁-도메인(stub-domain)과 업스트림 DNS 서버를 구축할 수 있다.
225225
그러한 경우 DNS 쿼리를 어떻게 처리하는지에 대한 자세한 내용은
226-
[관련 논의](/ko/docs/tasks/administer-cluster/dns-custom-nameservers/)에서
226+
[관련 논의](/ko/docs/tasks/administer-cluster/dns-custom-nameservers)에서
227227
확인할 수 있다.
228228
- "`ClusterFirstWithHostNet`": hostNetwork에서 running 상태인 파드의 경우 DNS 정책인
229229
"`ClusterFirstWithHostNet`"을 명시적으로 설정해야 한다.

content/ko/docs/concepts/services-networking/network-policies.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -154,6 +154,7 @@ __namespaceSelector__ *와* __podSelector__: `namespaceSelector` 와 `podSelecto
154154

155155
의심스러운 경우, `kubectl describe` 를 사용해서 쿠버네티스가 정책을 어떻게 해석하는지 확인해본다.
156156

157+
<a name="behavior-of-ipblock-selectors"></a>
157158
__ipBlock__: 인그레스 소스 또는 이그레스 대상으로 허용할 IP CIDR 범위를 선택한다. 파드 IP는 임시적이고 예측할 수 없기에 클러스터 외부 IP이어야 한다.
158159

159160
클러스터 인그레스 및 이그레스 매커니즘은 종종 패킷의 소스 또는 대상 IP의 재작성을
@@ -252,7 +253,7 @@ spec:
252253
```
253254

254255
위 규칙은 대상 포트가 32000에서 32768 사이에 있는 경우,
255-
네임스페이스 `default` 에 레이블이 `db` 인 모든 파드가
256+
네임스페이스 `default` 에 레이블이 `role=db` 인 모든 파드가
256257
TCP를 통해 `10.0.0.0/24` 범위 내의 모든 IP와 통신하도록 허용한다.
257258

258259
이 필드를 사용할 때 다음의 제한 사항이 적용된다.

content/ko/docs/concepts/services-networking/service.md

Lines changed: 26 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -183,6 +183,13 @@ subsets:
183183
위의 예에서, 트래픽은 YAML에 정의된 단일 엔드 포인트로
184184
라우팅된다. `192.0.2.42:9376` (TCP)
185185

186+
{{< note >}}
187+
쿠버네티스 API 서버는 파드에 매핑되지 않은 엔드포인트를 프록시하는 것을 허용하지 않는다.
188+
셀렉터가 없는 서비스에 대해서 `kubectl proxy <service-name>`과 같은 행위는
189+
이런 제약으로 인해 실패할 것이다. 이는 사용자가 쿠버네티스 API 서버를
190+
프록시로 사용하여 허가받지 않은 엔드포인트에 접근하는 것을 막아준다.
191+
{{< /note >}}
192+
186193
ExternalName 서비스는 셀렉터가 없고
187194
DNS명을 대신 사용하는 특수한 상황의 서비스이다. 자세한 내용은
188195
이 문서 뒷부분의 [ExternalName](#externalname) 섹션을 참조한다.
@@ -242,6 +249,24 @@ DNS 레코드를 구성하고, 라운드-로빈 이름 확인 방식을
242249
낮거나 0이면 DNS에 부하가 높아 관리하기가
243250
어려워 질 수 있다.
244251

252+
본 페이지의 뒷 부분에서 다양한 kube-proxy 구현의 동작에 대해 읽을 수 있다.
253+
우선 알아두어야 할 것은, `kube-proxy`를 구동할 때, 커널 수준의 규칙이
254+
수정(예를 들어, iptables 규칙이 생성될 수 있음)될 수 있고,
255+
이는 때로는 리부트 전까지 정리되지 않을 수도 있다.
256+
그래서, kube-proxy는 컴퓨터에서 저수준의, 특권을 가진(privileged) 네트워킹
257+
프록시 서비스가 구동됨으로써 발생하는 결과를 이해하고 있는 관리자에 의해서만 구동되어야 한다.
258+
비록 `kube-proxy` 실행 파일이 `cleanup` 기능을 지원하기는 하지만, 이 기능은 공식적인 기능이
259+
아니기 때문에 구현된 그대로만 사용할 수 있다.
260+
261+
### 구성
262+
263+
kube-proxy는 구성에 따라 결정되는 여러 모드에서 기동될 수 있다.
264+
- kube-proxy의 구성은 컨피그맵(ConfigMap)을 통해 이루어진다. 그리고 해당 kube-proxy를 위한 컨피그맵은 실효성있게 거의 대부분의 kube-proxy의 플래그의 행위를 더 이상 사용하지 않도록 한다.
265+
- kube-proxy를 위한 해당 컨피그맵은 기동 중 구성의 재적용(live reloading)은 지원하지 않는다.
266+
- kube-proxy를 위한 컨피그맵 파라미터는 기동 시에 검증이나 확인을 하지 않는다. 예를 들어,
267+
운영 체계가 iptables 명령을 허용하지 않을 경우, 표준 커널 kube-proxy 구현체는 작동하지 않을 것이다.
268+
마찬가지로, `netsh`을 지원하지 않는 운영 체계에서는, 윈도우 유저스페이스 모드로는 기동하지 않을 것이다.
269+
245270
### 유저 스페이스(User space) 프록시 모드 {#proxy-mode-userspace}
246271

247272
이 모드에서는, kube-proxy는 쿠버네티스 컨트롤 플레인의 서비스 및 엔드포인트 오브젝트의
@@ -428,8 +453,7 @@ kube-proxy는 마치 외부 트래픽 정책이 `Cluster`로 설정되어 있는
428453

429454
파드가 노드에서 실행될 때, kubelet은 각 활성화된 서비스에 대해
430455
환경 변수 세트를 추가한다. [도커 링크
431-
호환](https://docs.docker.com/userguide/dockerlinks/) 변수
432-
([makeLinkVariables](https://releases.k8s.io/master/pkg/kubelet/envvars/envvars.go#L49) 참조)와
456+
호환](https://docs.docker.com/userguide/dockerlinks/) 변수 ([makeLinkVariables](https://github.com/kubernetes/kubernetes/blob/dd2d12f6dc0e654c15d5db57a5f9f6ba61192726/pkg/kubelet/envvars/envvars.go#L72) 참조)와
433457
보다 간단한 `{SVCNAME}_SERVICE_HOST` 및 `{SVCNAME}_SERVICE_PORT` 변수를 지원하고,
434458
이때 서비스 이름은 대문자이고 대시는 밑줄로 변환된다.
435459

0 commit comments

Comments
 (0)