Service(name: traefik)μ EXTERNAL_IP κ° Pending μ λλ€.
114
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
μμ λ§ν¬μμλ λ‘λλ°Έλ°μ μ€μ κ³Ό κ΄λ ¨λ λ¬Έμ ν΄κ²° λ°©λ²λ€μ λ€λ£¨κ³ μμΌλ©°, νΉν λ‘컬 νκ²½μμμ λ‘λλ°Έλ°μ μ€μ μ λμμ΄ λ μ μλ μ 보λ€μ΄ ν¬ν¨λμ΄ μμ΅λλ€.
μ λ μ§λ¬Έμλμ μ΄ν΄λ₯Ό λκ³ μ μ§μ곡μ μλμ κΈ°μ‘΄ λ΅λ³μ μ°Έκ³ νμ¬ μ μ¬ν λ΅λ³ λ§ν¬λ₯Ό μΆμ²ν΄λλ¦¬κ³ μμ΅λλ€. νμ¬ λ² ν κΈ°λ₯μΌλ‘ λ΅λ³μ΄ λ§μ‘±μ€λ½μ§ μμ μ μλ μ μν΄ λΆνλ립λλ€. π μΆκ°μ μΌλ‘ κΆκΈν μ μ΄ μμΌμλ©΄, μ΄μ΄μ μ§λ¬Έν΄ μ£ΌμΈμ. κ³§ μ§μ곡μ μκ»μ λ΅λ³ν΄ μ£Όμ€ κ²μ λλ€.
jenkins λ Έλ κ΅¬μ± μ€μ΅ μ€λ₯ μμ
1
11
1
μμΈ μ€μ κΉμ§ μ΄ν΄νμλ λΉκ²°μ΄ κΆκΈν©λλ€
1
20
2
ClusterIP μ€μ΅ μ Connection refused
0
11
1
Apple Siliconμμ CI λΉλ μ΄λ―Έμ§κ° μ¬μμμ λ°λ³΅ν λ (jib platforms μμ )
1
29
1
μ 곡λ μ€ν¬λ¦½νΈλ₯Ό μ΄λμ λ°μ μ μλμ?
0
16
0
λ―Έμ μ μΆ λ°©μ 건μ
0
17
0
Deployment μ λ°μ΄νΈ-2 ν΄κ²° λ°©μ λ¬Έμ
1
26
1
λ―Έμ μ§ν λ°©μμ λν μ§λ¬Έμ λλ€.
0
38
1
μκ°κΈ°κ° μ°μ₯λΆνλ립λλ€
0
43
2
ννΉ νμ΄μ§μ λκΈ°μ΄ ν μ§λ¬Έμ λλ€.
0
42
1
virtualbox μ€μΉμ
1
45
1
μ€νμ€μΈ 컨ν μ΄λλ₯Ό λͺ¨λ μμ νλ λ°©λ²(μλμ°λ²μ )
0
68
3
winpty docker μ€μ
0
60
3
vs codeμ€μΉνλλ°λ, easy docker νμΌ μ΄κΈ°μμ vs code μμ΄μ½μ μ보μ¬μ
0
44
1
1κ³Όμ μ΄ν λ¬Έμ
0
57
2
https:// studio.opentofu.click λ‘ μ μμ΄ μλΌμ
0
44
1
μλ£
0
41
1
μμ΄μ νΈ νλ‘κ·Έλ¨ λ€μ΄λ‘λ λΆκ°
0
73
2
verify.sh 4λ¨κ³ μ€ν¨ β Jenkins 컨ν μ΄λμμ 127.0.0.1:6443 connection refused
0
61
2
μλ νμΈμ.
0
52
1
κ΅μ‘ μλ£ μ΅μ λ³Έ μ 곡 κ°λ₯ λ¬Έμ
0
59
2
3κ° μννκ²½ μ€λͺ λ° κ°μμ€μ΅μ λν κ°μ΄λμ λ¬Έμ νμ΄ μμμ΄ λ§λμ?
1
111
3
4. Container λΉλ & μ μ₯νκΈ° - μλ£ κ΄λ ¨
1
105
2
deployment μ λ°μ΄νΈ λ° λ‘€λ°± μ€ννκΈ° -2
1
113
2

