인프런 커뮤니티 질문&답변

mincoding님의 프로필 이미지

작성한 질문수

쉽게 시작하는 쿠버네티스(v1.30) - {{ x86-64, arm64 }}

3.4.외부로 노출하는 더 좋은 방법인 로드밸런서(LoadBalancer)

[pending 여부]

해결된 질문

작성

·

464

·

수정됨

1

질문 답변을 제공하지만, 강의 비용에는 Q&A는 포함되어 있지 않습니다.
다만 실습이 안되거나, 잘못된 내용의 경우는 알려주시면 가능한 빠르게 조치하겠습니다!

[질문 전 답변]
1. 강의에서 다룬 내용과 관련된 질문인가요? [예 ]
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? [예 (비슷한 내용은 있습니다)]
3. 질문 잘하기 법을 읽어보셨나요? [예]
(https://www.inflearn.com/blogs/1719)
4. 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.

[질문 하기]

안녕하세요 강의 진행중에

kubectl apply -f ~/_Lecture_k8s_starter.kit/ch2/2.4/metallb.yaml

kubectl create deployment chk-hn --image=sysnet4admin/chk-hn

kubectl scale deployment chk-hn --replicas=3

kubectl expose deployment chk-hn --type=LoadBalancer --port=80

kubectl get services

순을 진행했으나 결과가

위 처럼 pending 상태로 유지되어 있습니다.

 

kubectl delete service chk-hn

kubectl delete deployment chk-hn

kubectl delete -f Lecturek8s_starter.kit/ch2/2.4/metallb.yaml

위처럼 다 삭제하고 진행해도 같은 pending이 발생하여

시도하다 질문 남깁니다.. :)

 

 

 

 

Virtual box안에 있는것들 모두 날리고

두가지 방식 모두 vagrant up으로 해도

로드밸런싱 에서 pending이 걸리는 상황입니다.



답변 1

0

조훈(Hoon Jo)님의 프로필 이미지
조훈(Hoon Jo)
지식공유자

안녕하세요

다음과 같이 실행을 했고, (명령을 붙여서...) 바로 실행했을 때는 되지 않고, 좀 기다려서 서비스(service)를 체크해서는 결괏 값이 나옴을 확인하였습니다.

[root@m-k8s ~]# k get node 
k gNAME     STATUS   ROLES           AGE     VERSION
m-k8s    Ready    control-plane   24m     v1.25.0
w1-k8s   Ready    <none>          16m     v1.25.0
w2-k8s   Ready    <none>          12m     v1.25.0
w3-k8s   Ready    <none>          7m19s   v1.25.0
[root@m-k8s ~]# k get po 
No resources found in default namespace.
[root@m-k8s ~]# kubectl apply -f ~/_Lecture_k8s_starter.kit/ch2/2.4/metallb.yaml
namespace/metallb-system created
serviceaccount/controller created
serviceaccount/speaker created
clusterrole.rbac.authorization.k8s.io/metallb-system:controller created
clusterrole.rbac.authorization.k8s.io/metallb-system:speaker created
role.rbac.authorization.k8s.io/config-watcher created
role.rbac.authorization.k8s.io/pod-lister created
role.rbac.authorization.k8s.io/controller created
clusterrolebinding.rbac.authorization.k8s.io/metallb-system:controller created
clusterrolebinding.rbac.authorization.k8s.io/metallb-system:speaker created
rolebinding.rbac.authorization.k8s.io/config-watcher created
rolebinding.rbac.authorization.k8s.io/pod-lister created
rolebinding.rbac.authorization.k8s.io/controller created
daemonset.apps/speaker created
deployment.apps/controller created
configmap/config created
[root@m-k8s ~]# kubectl create deployment chk-hn --image=sysnet4admin/chk-hn
deployment.apps/chk-hn created
[root@m-k8s ~]# 
[root@m-k8s ~]# kubectl scale deployment chk-hn --replicas=3
deployment.apps/chk-hn scaled
[root@m-k8s ~]# 
[root@m-k8s ~]# kubectl expose deployment chk-hn --type=LoadBalancer --port=80
service/chk-hn exposed
[root@m-k8s ~]# 
[root@m-k8s ~]# kubectl get services
NAME         TYPE           CLUSTER-IP     EXTERNAL-IP   PORT(S)        AGE
chk-hn       LoadBalancer   10.102.14.56   <pending>     80:32111/TCP   1s
kubernetes   ClusterIP      10.96.0.1      <none>        443/TCP        24m

 

[root@m-k8s ~]# kubectl get services
NAME         TYPE           CLUSTER-IP     EXTERNAL-IP    PORT(S)        AGE
chk-hn       LoadBalancer   10.102.14.56   192.168.1.11   80:32111/TCP   86s
kubernetes   ClusterIP      10.96.0.1      <none>         443/TCP        26m 

 

시스템의 성능에 따라 시간이 약간은 더 소요될 수 있으니(metallb.yaml 관련 리소스 배포) 조금 더 기다려서 수행하시면 위와 같은 결과를 얻으실 수 있을 것 같습니다.

 

 

mincoding님의 프로필 이미지
mincoding
질문자

답변 감사드립니다 !


10분 이후에도 이슈가 있어서 추가 질문을 달던 중이였는데..

metalb 계속 지우고 설치하고 반복하더니 지금은 동작하는거 같습니다.

이슈포인트는 모르겠지만 일단 해결한거 같고

답변해주셔서 감사합니다.