Service(name: traefik)μ EXTERNAL_IP κ° Pending μ λλ€.
23
1 asked
[πμ’μ μ§λ¬Έμ νμ λ μ’μ λ΅λ³μ΄ λμ μ΅λλ€]
0. μ§λ¬Έ μ μν μ§λ¬Έμ κ·Έλλ‘ λ³΅μ¬ νκ±°λ μ΄λ―Έμ§ μΊ‘μ³λ₯Ό μ¬λ¦¬μ§ λ§μ μ£ΌμΈμ.
1. μ€μ΅ μ€ λ³ΈμΈμ νκ²½μ΄ κ°μ΄λμ λ€λ₯Έ λΆλΆμ΄ μμλ€λ©΄ λ§μν΄μ£ΌμΈμ.
2. ν΄λΉ λ¬Έμ μ λ°μ λΉλ(μ¬μ€μΉ μ¬λΆ)μ λ¬Έμ ν΄κ²°μ μν΄ μλν΄λ³Έ μΌμ΄μ€λ₯Ό λ§μν΄ μ£Όμλ©΄ μμΈ νμ μ ν° λμμ΄ λ©λλ€.
3. μλ¬ λ©μμ§λ§ λ΄μλ μ λ λͺ¨λ₯΄λ κ²½μ°κ° λ§μμ. κ·Έμ μ νλ μμ μ΄ ν¬ν¨λ μΊ‘μ³ νλ©΄λ λΆν λλ €μ.
4. μμ λ΄μ©μ λν μ§λ¬Έ μ ν΄λΉ μκ°μ κ°μ΄ μ¬λ € μ£Όμλ©΄ λ΅λ³μ λ리λ μκ°μ΄ λ λΉ¨λΌμ§λλ€.
5. κΈ΄ λ‘κ·Έλ μ λ©μΌλ‘ 보λ΄μ£ΌμΈμ. (k8s.1pro@gmail.com)
6. μΉ΄ν [κ°μ μλ£μ€]μλ λ§μ μ§λ¬Έκ³Ό λ΅λ³λ€μ΄ μμ΄μ!
μλ νμΈμ. μΌνλ‘λ. κ°μ μ λ³΄κ³ μμ΅λλ€.
κ°μ 7:27 μ―€ k get svc -n traefik λͺ
λ Ήμ μ
λ ₯νμ λ, ν΄λΉ μλΉμ€ κ°μ²΄μ externalIPκ° κ°μμμλ 보μ΄μ§λ§, μ€μ΅ νκ²½μμλ PendingμΌλ‘ λμ΅λλ€. μ΄λ² κ°μμ νκ²½μΈν
μμ λͺ
λ Ήμ μ
λ ₯νκ³ , λ€μ νκ²½μΈν
μ ν΄λ³΄μλ κ°μ μν©μ
λλ€.
μλΉμ€ νμ
μ LoadBalancer μ΄μ§λ§, μ€μ΅ νκ²½μ λ‘컬 ν΄λ¬μ€ν°μ΄κΈ°μ metalLB μ€μ / μλΉμ€ νμ
μ NodePortλ‘ λ³κ²½ / μΈλΆ λ‘λλ°Έλ°μ μ¬μ©κ³Ό κ°μ μμ
μ΄ νμν κΉμ?
(νμ¬) μΈλΆ IPκ° μλ€λ³΄λ μ΅μ’
κ²μ¦ λͺ
λ Ήμ΄μΈ curl http://external.app.local/ μ
λ ₯ μ, curl: (7) Failed to connect to external.app.local port 80: Connection refused μ΄λ¬ν μλ¬κ° λμ΅λλ€.
νμΈ ν λ² ν΄μ£Όμλ©΄ κ°μ¬νκ² μ΅λλ€...!
Answer 2
1
μλ νμΈμ.
μ νν νμΈμ μν΄ μλ λͺ λ Ήμ΄μ λν κ²°κ³Όλ₯Ό μ¬λ €μ£Όμ€ μ μμΌμ€κΉμ?
k get svc -A
k get pod -A
k get node -o wide
0
[candidate@k8s-master ~]$ kubectl create ns external
kubectl create -f https://raw.githubusercontent.com/kubetm/exam-ad/main/ingress/1/deployment.yaml
kubectl create -f https://raw.githubusercontent.com/kubetm/exam-ad/main/ingress/1/service.yaml
cat << EOF >> /etc/hosts
192.168.56.41 external.app.local
EOF
namespace/external created
deployment.apps/web-app created
service/web-app created
[candidate@k8s-master ~]$ k get svc -n traefik
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
traefik LoadBalancer 10.105.49.242 <pending> 80:30000/TCP,443:30465/TCP 24h
[candidate@k8s-master ~]$ curl http://external.app.local/
curl: (7) Failed to connect to external.app.local port 80: Connection refused
[candidate@k8s-master ~]$ k get svc -A
NAMESPACE NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
calico-system calico-api ClusterIP 10.101.90.70 <none> 443/TCP 24h
calico-system calico-kube-controllers-metrics ClusterIP None <none> 9094/TCP 24h
calico-system calico-typha ClusterIP 10.109.63.111 <none> 5473/TCP 24h
calico-system goldmane ClusterIP 10.106.209.98 <none> 7443/TCP 24h
calico-system whisker ClusterIP 10.100.216.251 <none> 8081/TCP 24h
default kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 24h
external web-app ClusterIP 10.106.222.42 <none> 8080/TCP 56s
kube-system kube-dns ClusterIP 10.96.0.10 <none> 53/UDP,53/TCP,9153/TCP 24h
kube-system metrics-server ClusterIP 10.105.241.127 <none> 443/TCP 24h
traefik traefik LoadBalancer 10.105.49.242 <pending> 80:30000/TCP,443:30465/TCP 24h
[candidate@k8s-master ~]$ k get pod -A
NAMESPACE NAME READY STATUS RESTARTS AGE
calico-system calico-apiserver-5fb8b68b6c-l25h4 1/1 Running 1 (108s ago) 24h
calico-system calico-apiserver-5fb8b68b6c-vw4cx 1/1 Running 1 (108s ago) 24h
calico-system calico-kube-controllers-7f84bbbb6d-2dj9v 1/1 Running 1 (108s ago) 24h
calico-system calico-node-vr8gq 1/1 Running 1 (108s ago) 24h
calico-system calico-typha-d54c47c8b-6gf25 1/1 Running 1 (108s ago) 24h
calico-system csi-node-driver-h67bw 2/2 Running 2 (108s ago) 24h
calico-system goldmane-6b5f6c9bcf-w8vdq 1/1 Running 1 (108s ago) 24h
calico-system whisker-75bf8654c5-hnhmh 2/2 Running 2 (108s ago) 24h
dev node-exporter-67fc4b7bc7-gxlhb 1/1 Running 1 (108s ago) 16h
dev scraper-56f954bb86-vk5z9 1/1 Running 1 (108s ago) 16h
external web-app-675f5c9658-kfbxf 1/1 Running 0 62s
kube-system coredns-7d764666f9-nh6vc 1/1 Running 1 (108s ago) 24h
kube-system coredns-7d764666f9-ppbxv 1/1 Running 1 (108s ago) 24h
kube-system etcd-k8s-master 1/1 Running 1 (108s ago) 24h
kube-system kube-apiserver-k8s-master 1/1 Running 1 (108s ago) 24h
kube-system kube-controller-manager-k8s-master 1/1 Running 1 (108s ago) 24h
kube-system kube-proxy-9kr2d 1/1 Running 1 (108s ago) 24h
kube-system kube-scheduler-k8s-master 1/1 Running 1 (108s ago) 24h
kube-system metrics-server-5f54fb74d9-6th6q 1/1 Running 1 (108s ago) 24h
tigera-operator tigera-operator-59fccd9889-m48x8 1/1 Running 1 (108s ago) 24h
traefik traefik-84f8cf496f-274l2 1/1 Running 1 (108s ago) 24h
[candidate@k8s-master ~]$ k get node -o wide
NAME STATUS ROLES AGE VERSION INTERNAL-IP EXTERNAL-IP OS-IMAGE KERNEL-VERSION CONTAINER-RUNTIME
k8s-master Ready control-plane 24h v1.35.2 192.168.56.41 <none> Rocky Linux 9.6 (Blue Onyx) 5.14.0-570.17.1.el9_6.aarch64 containerd://1.7.29λ€λ₯Έ μ€μ΅ νκ²½μ κΈ°λ‘μ λͺ¨λ μ§μ°κ³ μλ‘κ² μ€μ΅ νκ²½ μΈν
μ ν ν μμ²νμ λͺ
λ Ήμ΄λ€μ μ
λ ₯ν κ²°κ³Όμ
λλ€.
(19κ°: [λ¬Έμ νμ΄] Ingress μμ±νκΈ° - 7:24μ―€)
κ°μ¬ν©λλ€.
1
μ.. μ’ μ΄μνκΈ΄ νλ€μ.
Traefik μ€μΉμ extenalIPκ° μΈν μ΄ λμΌνλλ°,
νλ² μλ λͺ λ ΉμΌλ‘ μμ ν λ€μ μ€μΉν΄ 보μκ² μ΄μ?
helm uninstall traefik -n traefik
echo '======== [10-2] Ingress Traefik μ€μΉ ========'
helm repo add traefik https://traefik.github.io/charts
helm install traefik traefik/traefik --version 39.0.5 -n traefik --create-namespace --set service.externalIPs[0]=192.168.56.41
1
λ§μ½ μ μλμλ©΄ μ§κΈ μμ±λ NodePort 30000μ μΆκ°ν΄μ apiλ₯Ό λ λ €λ³΄μ λ λ©λλ€
0
μλ νμΈμ, μΈνλ° AI μΈν΄μ λλ€. Jihoon Shinλ.
μΏ λ²λ€ν°μ€ νκ²½μμ LoadBalancer νμ
μλΉμ€μ EXTERNAL_IPκ° Pending μνλ‘ λ¨λ κ²μ μΌλ°μ μΌλ‘ ν΄λΌμ°λ νλ‘λ°μ΄λμ λ‘λλ°Έλ°μ μλΉμ€κ° λ‘컬 νκ²½μμ λμνμ§ μκΈ° λλ¬Έμ
λλ€. λ‘컬μ΄λ λ΄λΆ λ€νΈμν¬ νκ²½μμ μ΄ λ¬Έμ λ₯Ό ν΄κ²°νκΈ° μν΄μλ λͺ κ°μ§ λ°©λ²μ κ³ λ €ν μ μμ΅λλ€:
MetalLB μ¬μ©: λ‘컬 νκ²½μμ
LoadBalancerλ₯Ό ꡬννλ €λ©΄ MetalLBμ κ°μ λ©ν λ‘λλ°Έλ°μ μ루μ μ μ¬μ©ν μ μμ΅λλ€. MetalLBλ λ‘컬 ν΄λ¬μ€ν°μ ꡬμ±μ μΆκ°νμ¬,LoadBalancerνμ μλΉμ€λ₯Ό μ§μνλλ‘ ν΄μ€λλ€. λ Έλν¬νΈ μ€μ μμ΄ μΈλΆ IPλ₯Ό ν λΉλ°κ³ μ ν λ νΉν μ μ©ν©λλ€.NodePort μ€μ μΌλ‘ λ³κ²½:
LoadBalancerλμNodePortλ‘ μλΉμ€ νμ μ λ³κ²½ν μλ μμ΅λλ€. μ΄λ κ² νλ©΄ ν΄λ¬μ€ν° μΈλΆμμ μ§μ λ Έλμ IPμ λ Έλν¬νΈλ‘ μ μνμ¬ μλΉμ€λ₯Ό μ΄μ©ν μ μμ΅λλ€.μΈλΆ λ‘λλ°Έλ°μ μ¬μ©: ν΄λ¬μ€ν°κ° ν΄λΌμ°λ νκ²½μ λ°°ν¬λ κ²μ΄λΌλ©΄, ν΄λΉ ν΄λΌμ°λ 곡κΈμμ λ‘λλ°Έλ°μ μλΉμ€λ₯Ό μ¬μ©ν΄ λ¬Έμ λ₯Ό ν΄κ²°ν μ μμ΅λλ€.
κ΄λ ¨ λ§ν¬μμ μ μ¬ν λ¬Έμ μ ν΄κ²°λ°©λ²μ νμΈνμ€ μ μμ΅λλ€:
- ingress κ΄λ ¨ μ§λ¬Έ λ립λλ€.
- kubernetes-anotherclass-sprint2/2211
μμ λ§ν¬μμλ λ‘λλ°Έλ°μ μ€μ κ³Ό κ΄λ ¨λ λ¬Έμ ν΄κ²° λ°©λ²λ€μ λ€λ£¨κ³ μμΌλ©°, νΉν λ‘컬 νκ²½μμμ λ‘λλ°Έλ°μ μ€μ μ λμμ΄ λ μ μλ μ 보λ€μ΄ ν¬ν¨λμ΄ μμ΅λλ€.
μ λ μ§λ¬Έμλμ μ΄ν΄λ₯Ό λκ³ μ μ§μ곡μ μλμ κΈ°μ‘΄ λ΅λ³μ μ°Έκ³ νμ¬ μ μ¬ν λ΅λ³ λ§ν¬λ₯Ό μΆμ²ν΄λλ¦¬κ³ μμ΅λλ€. νμ¬ λ² ν κΈ°λ₯μΌλ‘ λ΅λ³μ΄ λ§μ‘±μ€λ½μ§ μμ μ μλ μ μν΄ λΆνλ립λλ€. π μΆκ°μ μΌλ‘ κΆκΈν μ μ΄ μμΌμλ©΄, μ΄μ΄μ μ§λ¬Έν΄ μ£ΌμΈμ. κ³§ μ§μ곡μ μκ»μ λ΅λ³ν΄ μ£Όμ€ κ²μ λλ€.
curl 200 λ°ν μ€ν¨μ 건
0
6
1
[15. ConfigMap, Secret - μ€μ΅] Env (File) μ€μ΅ μ λ¬Έμμ¬ν
1
19
2
νμ΅λ°©λ² λ¬Έμ
1
27
2
μ§λ¬Έμμ΅λλ€!!
0
32
1
kakao_app_icon νμΌμ΄ μμ΅λλ€.
0
29
1
νμ¬ μμ κΈ°μ€μΌλ‘ μ΅μ μν μΆμ λ²μκ° λ°μλμλ€κ³ 보면 λ κΉμ?
0
24
2
44λ² κ°μ "AWS VPCμ Gateway endpoint ꡬμ±"μμ μ§λ¬Έ λ립λλ€.
0
18
1
μΉμ 17ν΄μ¦ 1λ² λ΅ μ€λ₯ νμΈ
0
25
1
section5,6 κ°μμλ£λ₯Ό μ΄λμμ λ°λμ?
0
21
2
Node Schedule μ€μ΅ μ pod3 μμ± μ λ©λͺ¨λ¦¬ μμ²λμ΄ μ¬λΌκ°μ§ μλ μ¬ν
1
28
1
1λ² μ§λ¬Έ
0
33
2
μλ νμΈμ
0
36
1
[μκ° μ°μ₯ λ¬Έμ] μ§μ₯ λ³νμΌλ‘ μΈν κΈ°κ° μ°μ₯ μμ²λ립λλ€.
0
30
2
Readiness Probe κ΄λ ¨ μ§λ¬Έλ립λλ€.
0
28
1
κ°μ μΈ κ°λ λ° μν κ΄λ ¨ μ§λ¬Έ
0
49
3
κ°μ μλ£ μ μμ μ΄λ»κ² νμ ¨λμ§ κΆκΈν©λλ€!
0
56
1
μ λ§ν¬ λ²νΌμ΄ μ 보μ¬μ
0
40
2
κ°μμλ£μΈμκ° μλΌμ~
0
24
2
ꡬ맀ν λ°λ‘ μ§λ¬Έ νλλ§μ..
0
51
1
κ°μ¬λ κ°μ΄λ λΆνλ립λλ€.
1
39
1
localhost:30000 μ μ μλλ λ¬Έμ κ΄λ ¨ μ§λ¬Έ
0
45
2
Guest OS
1
45
2
μ§λ¬Έμμ΄μ!
2
71
2
deployment μ λ°μ΄νΈ λ° λ‘€λ°± μ€ννκΈ° -2
1
49
2

