목록2026/01 (58)
Spring & Java
자! 드디어 배포까지 왔습니다. 우리는 이번에 EC2 서버에 Spring 앱을 배포 해서 동작 하는것까지 확인하는 법을 배우게 될 것입니다.자 이제 그럼 시작해 볼까요? 학습 목표● EC2에 Spring 앱 배포 실습 배포를 위한 Spring 프로젝트 implementation 'io.awspring.cloud:spring-cloud-aws-starter-parameter-store:4.0.0-RC1'server.port=8080management.endpoints.web.exposure.include=health,info spring.config.import=aws-parameterstore:/camp-health-app/prod/management.endpoint.health.show-details..
이번 시간은 AWS Parameter Store 학습 해볼까 합니다. 학습 목표● AWS Parameter Store란 무엇인가?● EC2 - AWS Parameter Store 권한 설정 어떻게 EC2 서버에 연결할 수 있는지 확인해보겠습니다. AWS Parameter Store란?AWS System Manager Parameter Store는 설정값을 안전하게 저장하고 관리하는 서비스입니다. 2. 파라미터 생성 ● 이름 규칙 : /{앱이름}/{환경}/{키} - 계층 구조로 관리하면 권한 제어가 쉬움● Type ○ String : 문자열 ○ StringList : 콤마( , ) 로 구분된 문자열 리스트 ○ SecureString : 암호화된 문자열 환경 변수를 전 시간에 어떻게 쓰는지 확인 했..
이번 시간은 Profile별 설정 분리를 학습해 보도록 하겠습니다. 학습 목표● Profile별 설정 분리 이유● Spring Boot에서 Profile별 설정 분리 방법 Profile별 설정 분리 이유코드는 같고 설정만 다르게 하면 환경별 배포가 가능해집니다.-> Pofile을 환경이라고 이해하면 쉽습니다. 잘못된 방식● 환경 변수 하드 코딩 ( 위험 ! )# application.propertiesspring.datasource.url=jdbc:mysql://localhost:3306/test # 고정 되어버림!spring.datasource.password=12345678 # 고정 되어버림!● 문제점 ○ 운영 배포 시 코드 수정 필요 ○ 비밀번호가 코드에 노출..
이번 시간에는 운영 로그 전략을 학습해 보겠습니다. 이번 학습에서는 로그를 배워볼 것입니다.우선 학습 자료를 토대로 우선 공부후 실습을 통해 느낀점을 작성해 보는 시간을 가져보겠습니다. 학습 목표● 로그 레벨 개념● 로그 출력 및 확인 로그 레벨로그 레벨이란?로그 레벨 ( Log Level) 은 로그의 심각도를 나타내는 분류입니다. 개발 시에는 상세한 DEBUG 로그가 필요하지만, 운영 시에는 성능을 위해 INFO 이상만 출력합니다.로그 레벨용도예시ERROR에러, 예외 상황DB연결 실패, NPEWARN경고, 잠재적 문제느린 쿼리, 재시도 발생INFO일반 정보앱 시작, 요청 처리 완료DEBUG디버깅용 상제 정보변수 값, SQL 쿼리TRACE매우 상세한 정보메서드 진입/종료 ● application.yml..
이번 시간에는 Spring Boot Actuator 학습해 보도록 하겠습니다. 수동 헬스체크를 통해서 어떤 문제가 있는지 알아보고 Spring Boot Actuator를 확인해 보겠습니다. 학습 목표● 수동 헬스체크● Spring Boot Actuator란?● Actuator 주요 엔드포인트● Actuator 보안 Intelli J 를 열고 Spring 프로젝트를 생성 하도록 하겠습니다. DB 생성 완료! Health 패키지를 만들고 Controller와 Response를 생성 합니다.HealthResponse 구현@Getterpublic class HealthResponse { private final String status; private final String timestamp; ..
이번 시간에는 운영 가능한 스프링은 무엇이며 운영 3요소는 무엇인지 확인해보는 시간을 가져보겠습니다 학습 목표● 운영 가능한 Spring이란?● 운영 3요소 운영형 Spring " 운영형 " 이 중요한 이유!1. 새벽 3시 장애 발생● X 운영 불가 : " 서버 들어가서 확인해봐야... " -> 2시간 소요● O 운영 가능 : 헬스체크 DOWN -> 로그 확인 -> 10분 내 원인 파악 2. 스테이징 -> 프로덕션 배포: 로컬 환경 > 내부 환경 > QA환경 > 스테이지 환경 > 프로덕션 환경( 로컬 > DEV > QA >스테이징 > 프로덕션 환경별 5단계 )● X 운영 불가 : DB 설정 하드코딩 -> 프로덕션 DB 연결 실패● O 운영 가능 : 환경변수로 설정 주입 -> 무사히 배포 운영 3요소..
이번 학습은 VPC부터 EC2까지 실습 하면서 하나하나 가이드를 잡아 볼까 합니다. 사전 준비 - Region 설정!제일 처음 AWS 사이트 접속!로그인을 먼저 합니다. 그럼 AWS 사이트에 접속 가능한데요 이렇게 나올겁니다. 사전 준비 - Budget 설정! ● 예산 설정 이런 창이 나올겁니다. 예산 생성 버튼 클릭 각자의 email 입력 해주시면 됩니다. 예산이 무사히 생성 됐습니다. 다음은 이렇게 VPC 생성을 실습 해보겠습니다 다시 콘솔 검색창으로 갑니다. -> VPC 입력 VPC를 만든적이 없는데 VPC가 생성 되어 있는것을 확인할 수 있습니다.이거는 이제 Default VPC입니다. (기본 VPC) 기존의 있던 vpc를 제거 하겠습니다. Default VPC를 막 ..
이번 수업은 EC2를 배워볼까 합니다. EC2 ( Elastic Compute Cloud ) EC2는 AWS에서 제공하는 클라우드 컴퓨팅 서비스입니다. 쉽게 말하면, 마음대로 세팅해볼 수 있는 AWS 컴퓨터 입니다.지금까지 " 내 컴퓨터 ( 로컬 ) 에서 " 코드를 짜고 프로젝트를 실행했습니다. EC2 그 환경을 로컬에서 아마존 데이터 센터로 옮길 수 있는 원격 컴퓨터 입니다.⚠️EC2 인스턴스*는 실제 컴퓨터 1대가 아닙니다. 물리적 서버(하드웨어) 1대를 여러 개의 작은 가상 서버로 나누어 사용합니다. 이를 가상화(Virtualization)이라고 합니다.인스턴스*: 가상 서버 한 대→ EC2 뿐만 아니라 AWS의 모든 서비스가 실제 물리적 하드웨어 1개가 아닙니다. AMI ( Amazon Machi..
네트워크 학습을 계속 이어나가서 해보도록 하겠습니다. 이전 시간에는 IP/Port/HTTP를 학습 했었습니다. 학습목표● VPC/Subnet/Route Table● Public/Private Subnet VPC ( Virtual Private Cloud) 란?1. 정의● AWS 클라우드 내에 만드는 사설 네트워크입니다.● 다른 AWS 계정의 네트워크와 논리적으로 완벽히 격리되어 있습니다. 2. IP 주소 범위 ( IP Range ) 설정VPC를 만들 때는 이 네트워크에서 총 몇 개의 IP를 쓸 것인가를 정해야 합니다.● 사설 IP 대역 : VPC 내부는 외부 인터넷과 직접 연결되지 않는 IP를 사용합니다. ( 주로 10.x.x.x 로 시작하는 번호를 사용 )● IP 크기 설정 : 우리는 복잡한 게산 ..