아래 조건을 만족하는 플라스크 애플리케이션을 개발하고 쿠버네티스 클러스터에 배포해 보세요.
플라스크 애플리케이션은 /whoareyou 요청에 대해 작성자 이름, 호스트 이름, IP 주소를 반환
예) 홍길동, hostname-deployment-7d4f978855-2kkw6, 10.0.0.4
플라스크 애플리케이션을 구동하는 컨테이너 이미지의 이름은 whoami-flask:v1 으로 설정해 본인의 도커 허브에 등록
디플로이먼트의 레플리카는 5개로 설정해서 배포하고, LoadBalancer 타입의 서비스를 이용해서 디플로이먼트를 연동
1) 플라스크 애플리케이션은 /whoareyou 요청에 대해 작성자 이름, 호스트 이름, IP 주소를 반환
가상환경을 만들어 flask 서버를 설치
(whoami-flask) C:\kubernetes\whoami-flask>
작성자이름 / 호스트 이름/ IP 주소를 반환하는 파일 생성
2) 플라스크 애플리케이션을 구동하는 컨테이너 이미지의 이름은 whoami-flask:v1 으로 설정해 본인의 도커 허브에 등록
현재 가상환경에 설치된 python 패키지를 버전과 함께 작성하여 requirements.txt 파일에 저장
Dockerfile 작성
Docker 이미지 생성
컨테이너 실행
도커 허프에 이미지 등록
디플로이먼트의 레플리카는 5개로 설정해서 배포하고, LoadBalancer 타입의 서비스를 이용해서 디플로이먼트를 연동
MetalLB 설치
strict ARP mode 활성화
MetalLB 설치
라우팅 정의
디플로이먼트와 서비스 생성
EXTERNAL - IP 10.0.0.30 임을 확인
=> pod의 ip 확인
LoadBalancer IP 10.0.0.30 으로 접속했을때 5개의 파드로 요청이 분배되는 것을 확인 할수 있다.
'K8s' 카테고리의 다른 글
k8s - pod (0) | 2023.10.25 |
---|---|
쿠버네티스(kubernetes, k8s) (1) | 2023.10.23 |