Information in this document may be out of date

This document has an older update date than the original, so the information it contains may be out of date. If you're able to read English, see the English version for the most up-to-date information: Create an External Load Balancer

์™ธ๋ถ€ ๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ ์ƒ์„ฑํ•˜๊ธฐ

์ด ๋ฌธ์„œ๋Š” ์™ธ๋ถ€ ๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๊ด€ํ•˜์—ฌ ์„ค๋ช…ํ•œ๋‹ค.

์„œ๋น„์Šค๋ฅผ ์ƒ์„ฑํ•  ๋•Œ, ํด๋ผ์šฐ๋“œ ๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ๋ฅผ ์ž๋™์œผ๋กœ ์ƒ์„ฑํ•˜๋Š” ์˜ต์…˜์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. ์ด๊ฒƒ์€ ํด๋Ÿฌ์Šคํ„ฐ ๋…ธ๋“œ์˜ ์˜ฌ๋ฐ”๋ฅธ ํฌํŠธ๋กœ ํŠธ๋ž˜ํ”ฝ์„ ์ „์†กํ•  ์ˆ˜ ์žˆ๋„๋ก ์™ธ๋ถ€์—์„œ ์ ‘๊ทผ ๊ฐ€๋Šฅํ•œ IP ์ฃผ์†Œ๋ฅผ ์ œ๊ณตํ•œ๋‹ค. ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ ์ง€์›๋˜๋Š” ํ™˜๊ฒฝ๊ณผ ์˜ฌ๋ฐ”๋ฅธ ํด๋ผ์šฐ๋“œ ๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ ์ œ๊ณต์ž ํŒจํ‚ค์ง€ ๊ตฌ์„ฑ์œผ๋กœ ์‹คํ–‰๋˜๋Š” ๊ฒฝ์šฐ.

๋˜ํ•œ, ์„œ๋น„์Šค ๋Œ€์‹  ์ธ๊ทธ๋ ˆ์Šค(Ingress) ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. ์ž์„ธํ•œ ์‚ฌํ•ญ์€ ์ธ๊ทธ๋ ˆ์Šค(Ingress) ๋ฌธ์„œ๋ฅผ ์ฐธ๊ณ ํ•œ๋‹ค.

์‹œ์ž‘ํ•˜๊ธฐ ์ „์—

์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ ํ•„์š”ํ•˜๊ณ , kubectl ์ปค๋งจ๋“œ-๋ผ์ธ ํˆด์ด ํด๋Ÿฌ์Šคํ„ฐ์™€ ํ†ต์‹ ํ•  ์ˆ˜ ์žˆ๋„๋ก ์„ค์ •๋˜์–ด ์žˆ์–ด์•ผ ํ•œ๋‹ค. ์ด ํŠœํ† ๋ฆฌ์–ผ์€ ์ปจํŠธ๋กค ํ”Œ๋ ˆ์ธ ํ˜ธ์ŠคํŠธ๊ฐ€ ์•„๋‹Œ ๋…ธ๋“œ๊ฐ€ ์ ์–ด๋„ 2๊ฐœ ํฌํ•จ๋œ ํด๋Ÿฌ์Šคํ„ฐ์—์„œ ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ์„ ์ถ”์ฒœํ•œ๋‹ค. ๋งŒ์•ฝ, ์•„์ง ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์ง€ ์•Š๋‹ค๋ฉด, minikube๋ฅผ ์‚ฌ์šฉํ•ด์„œ ์ƒ์„ฑํ•˜๊ฑฐ๋‚˜ ๋‹ค์Œ ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ํ”Œ๋ ˆ์ด๊ทธ๋ผ์šด๋“œ ์ค‘ ํ•˜๋‚˜๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

ํด๋Ÿฌ์Šคํ„ฐ๋Š” ๋ฐ˜๋“œ์‹œ ํด๋ผ์šฐ๋“œ ๋˜๋Š” ์™ธ๋ถ€ ๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ ๊ตฌ์„ฑ์„ ์ง€์›ํ•˜๋Š” ํ™˜๊ฒฝ์—์„œ ์‹คํ–‰ ์ค‘์ด์–ด์•ผ ํ•œ๋‹ค.

์„œ๋น„์Šค ์ƒ์„ฑ

๋งค๋‹ˆํŽ˜์ŠคํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์„œ๋น„์Šค ์ƒ์„ฑํ•˜๊ธฐ

์™ธ๋ถ€ ๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ๋ฅผ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•ด์„œ, ์„œ๋น„์Šค ๋งค๋‹ˆํŽ˜์ŠคํŠธ์— ๋‹ค์Œ์„ ์ถ”๊ฐ€ํ•œ๋‹ค.

    type: LoadBalancer

๋งค๋‹ˆํŽ˜์ŠคํŠธ๋Š” ์•„๋ž˜์™€ ๊ฐ™์„ ๊ฒƒ์ด๋‹ค.

apiVersion: v1
kind: Service
metadata:
  name: example-service
spec:
  selector:
    app: example
  ports:
    - port: 8765
      targetPort: 9376
  type: LoadBalancer

kubectl๋ฅผ ์ด์šฉํ•˜์—ฌ ์„œ๋น„์Šค ์ƒ์„ฑํ•˜๊ธฐ

๋˜ํ•œ, kubectl expose ๋ช…๋ น์–ด์— --type=LoadBalancer ํ”Œ๋ž˜๊ทธ๋ฅผ ์ด์šฉํ•ด ์„œ๋น„์Šค๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค.

kubectl expose deployment example --port=8765 --target-port=9376 \
        --name=example-service --type=LoadBalancer

์ด ๋ช…๋ น์€ ๋™์ผํ•œ ๋ฆฌ์†Œ์Šค๋ฅผ ์…€๋ ‰ํ„ฐ๋กœ ์ฐธ์กฐํ•˜๋Š” ์ƒˆ๋กœ์šด ์„œ๋น„์Šค๋ฅผ ๋งŒ๋“ ๋‹ค. (์œ„ ์˜ˆ์‹œ์˜ ๊ฒฝ์šฐ, example๋กœ ๋ช…๋ช…๋œ ๋””ํ”Œ๋กœ์ด๋จผํŠธ(Deployment) ).

๋ช…๋ น์ค„ ์˜ต์…˜ ํ”Œ๋ž˜๊ทธ๋ฅผ ํฌํ•จํ•œ, ๋” ์ž์„ธํ•œ ๋‚ด์šฉ์€ kubectl expose ๋ ˆํผ๋Ÿฐ์Šค ๋ฌธ์„œ๋ฅผ ์ฐธ๊ณ ํ•œ๋‹ค.

IP ์ฃผ์†Œ ์ฐพ๊ธฐ

kubectl ๋ช…๋ น์–ด๋ฅผ ์‚ฌ์šฉํ•ด ์„œ๋น„์Šค ์ •๋ณด๋ฅผ ์–ป์–ด, ์ƒ์„ฑ๋œ ์„œ๋น„์Šค์— ๊ด€ํ•œ IP ์ฃผ์†Œ๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ๋‹ค.

kubectl describe services example-service

์ถœ๋ ฅ์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

Name:                     example-service
Namespace:                default
Labels:                   app=example
Annotations:              <none>
Selector:                 app=example
Type:                     LoadBalancer
IP Families:              <none>
IP:                       10.3.22.96
IPs:                      10.3.22.96
LoadBalancer Ingress:     192.0.2.89
Port:                     <unset>  8765/TCP
TargetPort:               9376/TCP
NodePort:                 <unset>  30593/TCP
Endpoints:                172.17.0.3:9376
Session Affinity:         None
External Traffic Policy:  Cluster
Events:                   <none>

๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ์˜ IP ์ฃผ์†Œ๋Š” LoadBalancer Ingress ์˜†์— ๋‚˜ํƒ€๋‚œ๋‹ค.

ํด๋ผ์ด์–ธํŠธ ์†Œ์Šค IP ๋ณด์กดํ•˜๊ธฐ

๊ธฐ๋ณธ์ ์œผ๋กœ ๋Œ€์ƒ ์ปจํ…Œ์ด๋„ˆ์— ๋ณด์ด๋Š” ์†Œ์Šค IP๋Š” ํด๋ผ์ด์–ธํŠธ์˜ ์›๋ž˜ ์†Œ์Šค IP๊ฐ€ ์•„๋‹ˆ๋‹ค. ํด๋ผ์ด์–ธํŠธ์˜ IP๋ฅผ ๋ณด์กดํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋ ค๋ฉด, ์•„๋ž˜์˜ ์„œ๋น„์Šค .spec ํ•„๋“œ ๊ตฌ์„ฑ์„ ๋”ฐ๋ฅธ๋‹ค.

  • .spec.externalTrafficPolicy - ์ด ์„œ๋น„์Šค๊ฐ€ ์™ธ๋ถ€ ํŠธ๋ž˜ํ”ฝ์„ ๋…ธ๋“œ-๋กœ์ปฌ ๋˜๋Š” ํด๋Ÿฌ์Šคํ„ฐ-์ „์ฒด ์—”๋“œํฌ์ธํŠธ๋กœ ๋ผ์šฐํŒ…ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ธ๋‹ค. ๋‘ ๊ฐ€์ง€ ์˜ต์…˜์ด ์žˆ๋‹ค. Cluster (๊ธฐ๋ณธ) ๊ทธ๋ฆฌ๊ณ  Local. Cluster ๋Š” ํด๋ผ์ด์–ธํŠธ ์†Œ์Šค IP๋ฅผ ๊ฐ€๋ฆฌ๊ณ  ๋‹ค๋ฅธ ๋…ธ๋“œ์— ๋Œ€ํ•œ ๋‘ ๋ฒˆ์งธ ํ™‰(hop)์„ ๋ฐœ์ƒ์‹œํ‚ฌ ์ˆ˜ ์žˆ์ง€๋งŒ, ์ „์ฒด์ ์ธ ๋ถ€ํ•˜ ๋ถ„์‚ฐ์—์„œ ์ด์ ์ด ์žˆ๋‹ค. Local ์€ ํด๋ผ์ด์–ธํŠธ ์†Œ์Šค IP๋ฅผ ๋ณด์กดํ•˜๊ณ  LoadBalancer์™€ NodePort ํƒ€์ž…์˜ ์„œ๋น„์Šค์—์„œ ๋‘ ๋ฒˆ์งธ ํ™‰(hop) ๋ฐœ์ƒ์„ ํ”ผํ•  ์ˆ˜ ์žˆ์ง€๋งŒ, ํŠธ๋ž˜ํ”ฝ ๋ถ„์‚ฐ์ด ๋ถˆ๊ท ํ˜•์ ์ธ ์ž ์žฌ์ ์ธ ์œ„ํ—˜์ด ์žˆ๋‹ค.
  • .spec.healthCheckNodePort - ์„œ๋น„์Šค๋ฅผ ์œ„ํ•œ ํ—ฌ์Šค ์ฒดํฌ ๋…ธ๋“œ ํฌํŠธ(์ •์ˆ˜ ํฌํŠธ ๋ฒˆํ˜ธ)๋ฅผ ์ง€์ •ํ•œ๋‹ค. healthCheckNodePort๋ฅผ ์ง€์ •ํ•˜์ง€ ์•Š์œผ๋ฉด, ์„œ๋น„์Šค ์ปจํŠธ๋กค๋Ÿฌ๊ฐ€ ํด๋Ÿฌ์Šคํ„ฐ์˜ ๋…ธํŠธ ํฌํŠธ ๋ฒ”์œ„์—์„œ ํฌํŠธ๋ฅผ ํ• ๋‹นํ•œ๋‹ค. API ์„œ๋ฒ„ ๋ช…๋ น์ค„ ํ”Œ๋ž˜๊ทธ --service-node-port-range๋ฅผ ์„ค์ •ํ•˜์—ฌ ํ•ด๋‹น ๋ฒ”์œ„๋ฅผ ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค. ์„œ๋น„์Šค type์ด LoadBalancer์ด๊ณ  externalTrafficPolicy๋ฅผ Local๋กœ ์„ค์ •ํ•œ ๊ฒฝ์šฐ, ์„œ๋น„์Šค๋Š” healthCheckNodePort๊ฐ€ ์ง€์ •๋˜์—ˆ๋‹ค๋ฉด, ์‚ฌ์šฉ์ž๊ฐ€ ์ง€์ •ํ•œ ์„ค์ •์„ ์ด์šฉํ•œ๋‹ค.

์„œ๋น„์Šค ๋งค๋‹ˆํŽ˜์ŠคํŠธ์—์„œ externalTrafficPolicy๋ฅผ Local๋กœ ์„ค์ •ํ•˜๋ฉด ์ด ๊ธฐ๋Šฅ์ด ์ž‘๋™ํ•œ๋‹ค. ์˜ˆ์‹œ:

apiVersion: v1
kind: Service
metadata:
  name: example-service
spec:
  selector:
    app: example
  ports:
    - port: 8765
      targetPort: 9376
  externalTrafficPolicy: Local
  type: LoadBalancer

์†Œ์Šค IP๋ฅผ ๋ณด์กดํ•  ๋•Œ ์ฃผ์˜์‚ฌํ•ญ ๋ฐ ์ œํ•œ ์‚ฌํ•ญ

์ผ๋ถ€ ํด๋ผ์šฐ๋“œ ์ œ๊ณต์ž์˜ ๋กœ๋“œ ๋ฐธ๋Ÿฐ์‹ฑ ์„œ๋น„์Šค์—์„œ๋Š” ๋Œ€์ƒ๋ณ„๋กœ ๋‹ค๋ฅธ ๊ฐ€์ค‘์น˜๋ฅผ ๊ตฌ์„ฑํ•  ์ˆ˜ ์—†๋‹ค.

๊ฐ ๋Œ€์ƒ์˜ ๊ฐ€์ค‘์น˜๋Š” ๋…ธ๋“œ๋กœ ์ „์†กํ•˜๋Š” ํŠธ๋ž˜ํ”ฝ์„ ์ธก๋ฉด์—์„œ ๊ท ๋“ฑํ•˜๊ฒŒ ๋ถ€์—ฌํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์™ธ๋ถ€ ํŠธ๋ž˜ํ”ฝ์€ ์„œ๋กœ ๋‹ค๋ฅธ ํŒŒ๋“œ ๊ฐ„์— ๋กœ๋“œ ๋ฐธ๋Ÿฐ์‹ฑ๋˜์ง€ ์•Š๋Š”๋‹ค. ์™ธ๋ถ€ ๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ๋Š” ๊ฐ ๋…ธ๋“œ์—์„œ ๋Œ€์ƒ์œผ๋กœ ์‚ฌ์šฉ๋˜๋Š” ํŒŒ๋“œ์˜ ๊ฐœ์ˆ˜๋ฅผ ์ธ์‹ํ•˜์ง€ ๋ชปํ•œ๋‹ค.

์„œ๋น„์ŠคํŒŒ๋“œ๊ฐœ์ˆ˜ << ๋…ธ๋“œ๊ฐœ์ˆ˜ ์ด๊ฑฐ๋‚˜ ์„œ๋น„์ŠคํŒŒ๋“œ๊ฐœ์ˆ˜ >> ๋…ธ๋“œ๊ฐœ์ˆ˜ ์ธ ๊ฒฝ์šฐ์—์„  ๊ฐ€์ค‘์น˜ ์—†์ด๋„ ๊ฑฐ์˜ ๊ท ๋“ฑํ•œ ๋ถ„ํฌ๋ฅผ ๋ณผ ์ˆ˜ ์žˆ๋‹ค.

๋‚ด๋ถ€ ํŒŒ๋“œ ๊ฐ„ ํŠธ๋ž˜ํ”ฝ์€ ClusterIP ์„œ๋น„์Šค์—์„œ์™€ ๋น„์Šทํ•˜๊ฒŒ ๋ชจ๋“  ํŒŒ๋“œ์—์„œ ๋™์ผํ•œ ํ™•๋ฅ ๋กœ IP ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•œ๋‹ค.

๊ฐ€๋น„์ง€(Garbage) ์ˆ˜์ง‘ ๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ

๊ธฐ๋Šฅ ์ƒํƒœ: Kubernetes v1.17 [stable]

์ผ๋ฐ˜์ ์œผ๋กœ ํด๋ผ์šฐ๋“œ ์ œ๊ณต์ž์™€ ๊ด€๋ จ ์žˆ๋Š” ๋กœ๋“œ๋ฐธ๋Ÿฐ์„œ ๋ฆฌ์†Œ์Šค๋Š” type์ด LoadBalancer์ธ ์„œ๋น„์Šค๊ฐ€ ์‚ญ์ œ๋œ ํ›„ ์ฆ‰์‹œ ์ •๋ฆฌ๋˜์–ด์•ผ ํ•œ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๊ด€๋ จ ์„œ๋น„์Šค๊ฐ€ ์‚ญ์ œ๋œ ํ›„ ํด๋ผ์šฐ๋“œ ๋ฆฌ์†Œ์Šค๊ฐ€ ๊ณ ์•„๊ฐ€ ๋˜๋Š” ์ฝ”๋„ˆ ์ผ€์ด์Šค๊ฐ€ ๋‹ค์–‘ํ•œ ๊ฒƒ์œผ๋กœ ์•Œ๋ ค์ ธ ์žˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ฌธ์ œ๋ฅผ ์˜ˆ๋ฐฉํ•˜๊ธฐ ์œ„ํ•ด ์„œ๋น„์Šค ๋กœ๋“œ๋ฐธ๋Ÿฐ์„œ๋ฅผ ์œ„ํ•œ Finalizer Protection์ด ๋„์ž…๋˜์—ˆ๋‹ค. Finalizer๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด, ์„œ๋น„์Šค ๋ฆฌ์†Œ์Šค๋Š” ๋กœ๋“œ๋ฐธ๋Ÿฐ์„œ ๊ด€๋ จ ๋ฆฌ์†Œ์Šค๊ฐ€ ์‚ญ์ œ๋  ๋•Œ๊นŒ์ง€ ์‚ญ์ œ๋˜์ง€ ์•Š๋Š”๋‹ค.

ํŠนํžˆ ์„œ๋น„์Šค์— type์ด LoadBalancer์ธ ๊ฒฝ์šฐ ์„œ๋น„์Šค ์ปจํŠธ๋กค๋Ÿฌ๋Š” service.kubernetes.io/load-balancer-cleanup ์ด๋ผ๋Š” ์ด๋ฆ„์˜ finalizer๋ฅผ ๋ถ™์ธ๋‹ค. finalizer๋Š” (ํด๋ผ์šฐ๋“œ) ๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ ๋ฆฌ์†Œ์Šค๋ฅผ ์ •๋ฆฌํ•œ ํ›„์—๋งŒ ์ œ๊ฑฐ๋œ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ์„œ๋น„์Šค ์ปจํŠธ๋กค๋Ÿฌ ์ถฉ๋Œ(crash)๊ณผ ๊ฐ™์€ ์ฝ”๋„ˆ ์ผ€์ด์Šค์—์„œ๋„ ๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ ๋ฆฌ์†Œ์Šค๊ฐ€ ๊ณ ์•„๊ฐ€ ๋˜๋Š” ๊ฒƒ์„ ๋ฐฉ์ง€ํ•  ์ˆ˜ ์žˆ๋‹ค.

์™ธ๋ถ€ ๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ ์ œ๊ณต์ž

์ค‘์š”ํ•œ ์ ์€ ์ด ๊ธฐ๋Šฅ์„ ์œ„ํ•œ ๋ฐ์ดํ„ฐ ๊ฒฝ๋กœ๋Š” ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ํด๋Ÿฌ์Šคํ„ฐ ์™ธ๋ถ€์˜ ๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ์—์„œ ์ œ๊ณตํ•œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค.

์„œ๋น„์Šค์˜ type์ด LoadBalancer๋กœ ์„ค์ •๋œ ๊ฒฝ์šฐ, ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค๋Š” type์ด ClusterIP์ธ ๊ฒฝ์šฐ์ฒ˜๋Ÿผ ๋™๋“ฑํ•œ ๊ธฐ๋Šฅ์„ ํด๋Ÿฌ์Šคํ„ฐ ๋‚ด์˜ ํŒŒ๋“œ์— ์ œ๊ณตํ•˜๊ณ  ๊ด€๋ จ ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ํŒŒ๋“œ๋ฅผ ํ˜ธ์ŠคํŒ…ํ•˜๋Š” ๋…ธ๋“œ์— ๋Œ€ํ•œ ํ•ญ๋ชฉ์œผ๋กœ (์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ์™ธ๋ถ€) ๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ๋ฅผ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์„ ํ†ตํ•ด ํ™•์žฅํ•œ๋‹ค. ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ์ปจํŠธ๋กค ํ”Œ๋ ˆ์ธ์€ ์™ธ๋ถ€ ๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ, (ํ•„์š”ํ•œ ๊ฒฝ์šฐ) ํ—ฌ์Šค ์ฒดํฌ ๋ฐ (ํ•„์š”ํ•œ ๊ฒฝ์šฐ) ํŒจํ‚ท ํ•„ํ„ฐ๋ง ๊ทœ์น™์˜ ์ƒ์„ฑ์„ ์ž๋™ํ™”ํ•œ๋‹ค. ํด๋ผ์šฐ๋“œ ๊ณต๊ธ‰์ž๊ฐ€ ๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ์— ๋Œ€ํ•œ IP ์ฃผ์†Œ๋ฅผ ํ• ๋‹นํ•˜๋ฉด ์ปจํŠธ๋กค ํ”Œ๋ ˆ์ธ์ด ํ•ด๋‹น ์™ธ๋ถ€ IP ์ฃผ์†Œ๋ฅผ ์ฐพ์•„ ์„œ๋น„์Šค ์˜ค๋ธŒ์ ํŠธ๋ฅผ ๊ฐฑ์‹ ํ•œ๋‹ค.

๋‹ค์Œ ๋‚ด์šฉ

์ตœ์ข… ์ˆ˜์ • March 26, 2023 at 1:12 AM PST: [ko] Update outdated files dev-1.26-ko.1 (M143 - M148) (eda4f1d533)