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

임현강님의 프로필 이미지
임현강

작성한 질문수

데브옵스(DevOps)를 위한 쿠버네티스 마스터

애플리케이션 배포와 쿠버네티스 아키텍처 이해

create, expose 질문

작성

·

404

0

kubectl create deployment http-go --image=gasbugs/http-go 

이 명령어가 docker실습에서 나왔던 create 개념과 동일하고 

kubectl expose deployment http-go --port=8080 --target-port=8080 --type=LoadBalancer

이 명령어가 docker에서 나온 start랑 같은 역할이라고 생각하면 맞게 이해한건가요..?

답변 6

0

강사님은 : 사용자 → WAF+CloudFront →  ELB → EC2(Web Server)로 구현 말씀하신거 같은데,

정적 DATA (S3)를 사용안해도 Cloudfront를 사용해야 하는 것인지요? 

꼭 그런 것은 아닙니다.

그리고 만약 WAF 3rd party (ex. 포티넷) 으로 구현을 하고, 허용된 DATA 만 서비스 IP (ELB) 로 보내주는 것 (Private 존에 생성이 가능할까요?)

무조건 서비스 IP는 Public 존에 생성되는 것인지요? 

노드 포트를 사용해 로드밸런싱하시면 꼭 퍼블릭 IP를 사용하지 않아도 됩니다.

서드파티를 사용하시면 VM 형태로 사용하게되는 것인데 말씀하신대로 설정해 연결이 가능합니다. 이런 경우에는 벤더사의 도큐먼트가 더 자세히 설명돼 있습니다 ㅎㅎ

https://cookbook.fortinet.com/configuring-aws-elb-vip-fortigate-vm/index.html

그리고, Classic ELB로 생성되는데, ALB 나 NLB로 변경을 할 수 있는지요? (CLB 종료되는거로 알고 있어서요)

네 강의를 어디까지 들으셨는지 확인이 어렵긴합니다만 노드포트를 배우셨다면 이를 사용해 로드밸런서를 배치해서 수동으로 LB를 구현할 수 있습니다(CSP가 이걸 자동으로 구현할 뿐이니 충분히 수동으로 만드는것도 가능합니다.).

https://aws.amazon.com/ko/premiumsupport/knowledge-center/public-load-balancer-private-ec2/

일단 하나씩 답변을 달았긴 했지만 말씀하신 내용을 전체적으로 정리하면 eks에서 제공하는 로드밸런서 기능을 쓰지 말고 nodeport를 생성 후 ELB를 원하시는 대로 만드는것이 좋아보입니다~ WAF를 연결할때는 벤더사의 도큐먼트를 참고하시면 될 것 같아요!

좋은 질문 감사합니다.

0

답변 감사드립니다.

제가 현재 고려하는 구성도인데, 이렇게도 구성이 가능할까요?

강사님은 : 사용자 → WAF+CloudFront →  ELB → EC2(Web Server)로 구현 말씀하신거 같은데,

정적 DATA (S3)를 사용안해도 Cloudfront를 사용해야 하는 것인지요? 

그리고 만약 WAF 3rd party (ex. 포티넷) 으로 구현을 하고, 허용된 DATA 만 서비스 IP (ELB) 로 보내주는 것 (Private 존에 생성이 가능할까요?) - 무조건 서비스 IP는 Public 존에 생성되는 것인지요? 

그리고, Classic ELB로 생성되는데, ALB 나 NLB로 변경을 할 수 있는지요? (CLB 종료되는거로 알고 있어서요)

감사합니다~^^

0

안녕하세요 OKY님

가능합니다. VPC로 하나로 구성하고 앞에 CloudFront를 배치하면 될 것 같습니다. 

AWS에서 관리할 때는 베스천 호스트나 VPN을 통해서 관리하시면 보안 요구 사항을 충족할 수 있을 듯 하고요.

외부에서 접속되는 부분은 AWS의 기능인 Cloud  Front 기능을 사용해 ELB를 연결하시면 됩니다.

ELB는 정해진 CloudFront에서만 트래픽을 받을 수 있게 조절할 수 있습니다.

아래 그림에서는 WebApplication Resources 부분이 될 것 같습니다.

출처: https://aws.amazon.com/ko/solutions/implementations/aws-waf-security-automations/

감사합니다.

0

안녕하세요.

Service 를 수행하여 외부IP 생성후 접속테스트를 성공했습니다.

근데 궁금한것이, AWS EKS에서 구축을 하려는데, 보안팀에서 Public 존에 WAF를 경유하여 아키텍처 구성 요구가 있어서요. 

지금은 Service 를 생성하면 무조건 퍼블릭IP가 생성되는데

Private 존에 쿠버네티스를 구성하고, Public존에 WAF 나 UTM 장비로 승인된 대상만 전달하여 구성하는 것이 가능할까요?

감사합니다.

0

임현강님의 프로필 이미지
임현강
질문자

kubectl create deployement가 docker run(create + start)라고 보면 되는군요. 답변 감사드립니다.

0

안녕하세요 강사 최일선입니다.

kubectl create deployment http-go --image=gasbugs/http-go 

이 명령어가 docker실습에서 나왔던 create 개념과 동일하고 

이부분에서 컨테이너 가 만들어져서 시작된 것이고요.

kubectl expose deployment http-go --port=8080 --target-port=8080 --type=LoadBalancer

이 명령어가 docker에서 나온 start랑 같은 역할이라고 생각하면 맞게 이해한건가요..?

이부분은 쿠버네티스에서 외부에 서비스를 오픈하는 기능입니다! 도커에서 비교할 만한 부분은 딱히 없어 보이네요 있다면 -p 옵션의 역할을 대신한다고 봐도 되겠습니다.

감사합니다. 파이팅!

임현강님의 프로필 이미지
임현강

작성한 질문수

질문하기