-
카카오클라우드 - 클라우드 개발자 교육 11주차 후기bootcamp 2026. 1. 30. 15:17
카카오 클라우드의 실제로 인스턴스들을 생성하고, 조작할 수 있는 권한을 부여받았다.
초기 VPC는 한대를 사용하고, 가용영역은 A만 사용했다.추후 팀이 나뉘며 가용 영역을 분리하게 되었다.
이때 발생한 문제는 CIDR 범위와 넷마스크가 충돌돼 인스턴스들을 팀별로 나누기 어려웠던 문제가 있다.
여기서 VPC 넷마스크는 20을 사용했다.
CIDR 표기 (편리함) 서브넷 마스크 (실제 값) 의미 /24 255.255.255.0 앞에서부터 24비트(3개 옥텟)를 네트워크로 씀 /16 255.255.0.0 앞에서부터 16비트(2개 옥텟)를 네트워크로 씀 /8 255.0.0.0 앞에서부터 8비트(1개 옥텟)를 네트워크로 씀 - 같은 네트워크라면: 그냥 바로 옆 컴퓨터로 직접 보낸다. (스위칭)
- 다른 네트워크라면: "어? 이건 우리 동네가 아니네?" 하고 게이트웨이(라우터)에게 토스한다.
서브넷은 넷마스크 16으로 나누어 C 클래스를 분리해 100번대 이하는 1팀, 이상은 2팀이 사용하기로했다.
카카오 클라우드는 NAT 설정을 인스턴스를 지정해서 설정해주어야 한다.
*NAT 설정
Nat 인스턴스를 통해 nat 게이트웨이 만들기
kakaocloud는 nat 게이트웨이를 만들기 위해 인스턴스를 직접 nat인스턴스로 사용하게 만들어 주어야한다.
우리는 조당 1개의 nginx에 퍼블릭ip가 있기 때문에 nginx를 nat인스턴스로 만들어줄것 이다.
- NAT 인스턴스 보안 그룹 설정
인바운드 규칙
프로토콜 패킷 출발지 포트 번호 설명 TCP 10.0.0.0/20 80 프라이빗 서브넷 인스턴스의 HTTP 트래픽 인바운드 허용 TCP 10.0.0.0/20 443 프라이빗 서브넷 인스턴스의 HTTPS 트래픽 인바운드 허용 TCP 관리자 네트워크의 퍼블릭 IP 주소 범위 22 관리자 네트워크에서 NAT 인스턴스의 SSH 접속 인바운드 허용 아웃바운드 규칙
프로토콜 패킷 목적지 포트 번호 설명 TCP 0.0.0.0/0 80 HTTP 트래픽 아웃바운드 허용 TCP 0.0.0.0/0 443 HTTPS 트래픽 아웃바운드 허용 프라이빗 라우팅 테이블 업데이트
목적지 대상 유형 대상 이름 VPC CIDR IP Local Local 0.0.0.0/0 인스턴스 선택 Nginx 인스턴스 IP(인스턴스 ID) 선택 프라이빗 서브넷과 퍼블릭 서브넷을 생성한 후, 라우팅 테이블을 설정
[퍼블릭 서브넷] 라우팅 테이블목적지 대상 유형 대상 이름 VPC CIDR IP Local Local 0.0.0.0/0 인터넷 게이트웨이 인터넷 게이트웨이 ID
[프라이빗 서브넷] 라우팅 테이블목적지 대상 유형 대상 이름 VPC CIDR IP Local Local - Nginx 인스턴스로 선택한 이유 : 새로운 인스턴스를 만들수 없었고, 카카오 클라우드 공식문서에 의하면 위 조건에 부합(Nginx 인스턴스)하는 인스턴스가 존재하기 때문.
——————nginx에서——————# 1. 패키지 목록 업데이트
sudo apt-get update -y
# 2. IP 포워딩(중계 기능) 켜기
# (설정 파일에서 forwarding 옵션을 찾아서 1로 바꿔주는 명령어입니다)
LINE=$(grep 'net.ipv4.ip_forward=' /etc/sysctl.conf)
sudo sed -i "s/${LINE}/net.ipv4.ip_forward=1/" /etc/sysctl.conf
sudo sysctl -p
# 3. iptables 설정 (들어온 요청을 마스커레이딩-포장갈이 해서 내보내기)
# (자동으로 네트워크 인터페이스 이름을 찾아서 설정합니다)
INTERFACE=$(ip link | awk -F: '$0 !~ "lo|vir|wl|^[^0-9]"{print $2;getline}')
sudo /sbin/iptables -t nat -A POSTROUTING -o ${INTERFACE} -j MASQUERADE
# 4. 재부팅 해도 설정 유지되게 저장하는 프로그램 설치
sudo apt-get install -y iptables-persistent————————————————
인스턴스의 패킷 송신 허용 IP 수정
- Nginx인스턴스 설정 -> 우측상단 인스턴스 작업 버튼 -> 패킷 송신 허용 IP 설정 -> 0.0.0.0/0 -> 저장
클라우드 콘솔 설정


위와 동일하게 해주면 NAT 게이트웨이는 설정이 완료된다.
*로드밸런싱 설정
Certification Maneger 등록
1. 프라이빗 키 (Private Key) 생성
openssl genrsa -out private.key 2048
- CSR (인증서 서명 요청) 생성
openssl req -new -key private.key -out request.csr

- 인증서 본문 (Certificate Body) 생성
openssl x509 -req -days 365 -in request.csr -signkey private.key -out certificate.crt
**포맷 확인: 모든 파일은 PEM 형식이어야 합니다.
- 프라이빗 키 확인
Cat private.key
- 인증서 본문확인
Cat certificate.crt

- 콘솔에 인증서 내용 복사 붙여넣기.


7. 로드벨런서 탭에서 로드벨런서 생성 클릭
- ALB선택

- VPC 와 서브넷, 리스너를 추가한다. 리스너는 80과 443을 추가한다.

- 인증서 생성 단계에서 만들었던 인증서를 등록한 후 저장한다.


- 퍼블릭 IP를 연결해준다.
t1

퍼블릭 IP연결


8. 대상그룹 생성
- 대상그룹에 이전 단계에서 생성한 ALB (로드벨런서) 를 추가한다.

- 대상그룹의 이름과 프로토콜을 설정후 다음을 클릭한다.

- 퍼블릭 인스턴스(nginx)를 선택하고 트래픽포트, 443,80을 적어 추가한다.






T1





9. 로드벨런서에 대상그룹 연결
- 로드밸런서 탭에서 리스너 추가 탭 클릭


- 80, 443 포트에 대상그룹 선택

**t2의 error상태는 일시적오류. 시간이 지난후 정상 동작 확인 완료.

10. DNS영역에 로드벨런서 DNS추가




로드벨런싱 설정 완료
**트러블슈팅
증상 : 대상 그룹에서 헬스체크 Unhealthy 상태임

Nginx ssl/tls설정 안함 443의미없음
따라서 Unhealthy 상태
보안그룹 및 Nginx 설정 오류
——————————————————————————
본 후기는 [카카오엔터프라이즈x스나이퍼팩토리] 카카오클라우드로 배우는 AIaaS 마스터 클래스 3기(B-log) 리뷰로 작성 되었습니다.'bootcamp' 카테고리의 다른 글
카카오클라우드 - 클라우드 개발자 교육 13주차 후기 (0) 2026.02.09 카카오클라우드 - 클라우드 개발자 교육 12주차 후기 (0) 2026.01.30 카카오클라우드 - 클라우드 개발자 교육 10주차 후기 (0) 2026.01.20 카카오클라우드 - 클라우드 개발자 교육 8주차 후기 (1) 2025.12.31 카카오클라우드 - 클라우드 개발자 교육 7주차 후기 (0) 2025.12.31