kubernetes를 어떻게 적용해야 할까?
IDEA 1
사용자 1명 당 1개의 Pod를 할당하고 해당 Pod에서 사용자별 container 관리하기
[구현 상세 IDEA]
1) 사용자가 가상 환경 container(container A)를 생성한다. (이때, Pod 1개가 새롭게 생성됨)
a. 사용자에게 생성된 Pod가 없을 때만, Pod가 새롭게 생성됨
2) 사용자가 다른 가상환경 container(container B)를 1개 더 생성한다.
3) 이때, 미리 생성된 Pod(container A가 있는 Pod)에 container B가 할당된다.
IDEA 2
Pod를 만들어 놓고, Pod yaml 파일에 사용자를 추가하는 방식 (사용자 1명 당 vCPU 1EA, 2GB)
[구현 상세 IDEA]
1) 현재 노드 스펙 (vCPU 4EA, 8GB) - 리소스 할당량 결정
a) 사용자 1명 당 vCPU 1EA, 2GB의 제한을 건다고 하면, 1개의 노드에 총 4명의 사용자 할당 가능
2) 동적 리소스 스케줄링 결정
여기 있는 위의 아이디어를 적용시키지는 않았지만, IDEA 2에 가깝다.
살제 적용 방식 (AutoScaling 적용 전 - 1개의 노드만 사용할 때)
설계 방식 (서버는 2종류)
- kubernetes가 돌아가는 서버 (쿠버의 워커 노드 - default 1개)
- kubernetes에게 명령을 내리는 서버
접속 경로
[노드 ip]:[노드 port]
- 지금은 노드 ip가 하드코딩되어있지만, 추후에 확장성을 위해 node의 ip를 동적으로 할당할 것이다.
vpc, subnet 만들고 난 후
[kubernetes service 구축하기]
public으로 설정해야 노드 ip에 접근 가능
default 노드풀 설정 - 4EA, 16GB
[NAT GW 용 Subnet 만들기]
각 서비스 Zone에 NAT Gateway를 배치할 전용 서브넷을 생성해야 함
[KR-1]
[NAT GW 생성]
이때, 공인 IP로만 서비스가 가능하다. (신청해주기)
확인하기
[Route 설정]
kubernetes가 돌아가는 서버 (쿠버의 워커 노드 - default 1개) 구축은 완료가 되었다.
'💻 개발 > 졸업과제' 카테고리의 다른 글
kubernetes server에서 flask 서버로 정보 전송 (0) | 2023.10.19 |
---|---|
kubernetes 사용하기 (2) (with nCloud) (0) | 2023.10.04 |
Kubernetes Service 사용해보기 (0) | 2023.09.10 |
Harbor 접속 문제 해결하기 .. (EBS 늘리기) (0) | 2023.09.09 |
줄인 EBS로 ASG의 AMI 변경하기 (0) | 2023.08.17 |