본문 바로가기

DevOps/AWS

(20)
[AWS] Travis CI와 AWS CodeDeploy를 사용한 자동배포 구축하기 #1 Spring Boot 기반의 서비스를 Travis CI와 AWS CodeDeploy를 사용해 자동 배포 시스템을 구축할 것입니다. 전체적인 구조는 다음과 같습니다. 전달 과정 1 Travis CI →AWS S3 jar 파일 전달 2 Travis CI → AWS CodeDeploy 배포 요청 3 AWS S3 → AWS CodeDeploy jar 파일 전달 4 AWS CodeDeploy → AWS EC2 배포 스프링 부트 서비스는 이전 글을 기반으로 하고 있습니다. 목차 1. CI & CD 소개 (#1) 2. Travis CI 연동하기 (#1) 3. Travis CI와 AWS S3 연동하기 (#1) 4. Travis CI와 AWS S3, CodeDeploy 연동하기 (#2) 5. 배포 자동화 구성 (#2) ..
[AWS] AWS EC2에 스프링 부트 서비스 배포하기 AWS EC2에 스프링 부트 서비스를 jar 파일을 통해 배포할 것입니다. 뿐만 아니라 배포 스크립트를 통해 배포하는 과정을 단순화할 것입니다. 목차 스프링 부트 기반 API 서비스 서버 생성 및 EIP 할당 서버 생성 시 꼭 해야 할 설정들 EC2에서 Git과 Github 사용하기 코드들이 잘 수행되는 지 테스트로 검증 배포 스크립트 만들기 1. 스프링 부트 기반 API 서비스 배포할 서비스는 특정 문자열을 응답하는 API를 가진 매우 간단한 서비스입니다. 코드는 다음과 같습니다. @RestController public class HelloController { @GetMapping("/") public String hello(){ return "안녕하세요~~~"; } } 버전 정보는 다음과 같습니다..
[AWS] AWS RDS 프리티어 만들고 Datagrip 사용해 연결하기 목차 Mysql 보안 그룹 생성 RDS Mysql 생성 Mysql 체크 프리티어 체크 마스터 사용자 이름, 암호 기입 micro 선택 보안그룹 퍼블릭 액세스 클릭 기본 데이터베이스 명시 DataGrip으로 연결 이번에 Amazon RDS를 이용해 Mysql 데이터베이스를 프리티어로 생성하고 데이터베이스 관리 툴인 Datagrip을 사용해 Mysql 서버에 연결해보겠습니다. Mysql 보안 그룹 생성 mysql은 3306 포트를 쓰기 때문에 인바운드 규칙에 3306을 명시하고, 노트북에서 데이터베이스에 연결하기 위해 모든 아이피에서 접근이 가능하게 설정합니다. RDS Mysql 생성 Amazon RDS 페이지에서 DB 인스턴스 > 데이터베이스 생성을 클릭합니다. 표준 생성, Mysql, 프리티어를 선택합니..
AWS Elastic Load Balancing 이해하고 사용하기 #2 이전 글에서는 Elastic Load Balancing 이해하기 위한 기본 개념을 다뤘습니다. AWS Elastic Load Balancing 이해하고 사용하기 #1 이번 글에서는 Elastic Load Balancing 이해하기 위한 기본 개념을 다룹니다. 다음 편에서는 Elastic Load Balancing를 실제로 사용해보고 테스트해볼 것입니다. 이번 글의 목차는 다음과 같습니다. ELB란 무 develop-writing.tistory.com 이번에는 Elastic Load Balancing를 실제로 사용할 것입니다. 이번 글의 목차는 다음과 같습니다. 2개의 다른 가용 영역에 웹서버 생성하기 Application LoadBalancer를 적용해 트래픽이 분산되는지 확인 Sticky Session..
AWS Elastic Load Balancing 이해하고 사용하기 #1 이번 글에서는 Elastic Load Balancing 이해하기 위한 기본 개념을 다룹니다. 다음 편에서는 Elastic Load Balancing를 실제로 사용해보고 테스트해볼 것입니다. 이번 글의 목차는 다음과 같습니다. ELB란 무엇인가 ELB의 특징 ELB의 종류 ELB란 무엇인가? Elastic Load Balancing는 들어오는 애플리케이션 트래픽을 Amazon EC2 인스턴스, 컨텐이너, IP 주소, Lambda 함수와 같은 여러 대상에 자동으로 분산시킵니다. Elastic Load Balancing은 단일 가용 영역 또는 여러 가용 영역에서 다양한 애플리케이션 부하를 처리할 수 있습니다. Elastic Load Balancing이 제공하는 세 가지 로드 밸런서는 모두 애플리케이션 내결함성..
Amazon VPC 생성하기 이전 글에서 Amazon vpc에 대해서 알아봤습니다. Amazo VPC란 무엇일까? Amazon VPC는 AWS 사용자 전용 가상 네트워크입니다. 가상 네트워크가 무엇인지 자세히 알아보겠습니다. 목차 1. VPC(Virtual Private Cloud)란? 아마존 VPC의 공식 웹페이지에서는 VPC를 다음과 같이 소개합 develop-writing.tistory.com 이번에는 실제로 VPC을 생성하고 서브넷 2개 생성할 것입니다. 또한 해당 VPC와 서브넷을 가진 EC2 인스턴스를 생성해 SSH 연결을 해보려고 합니다. 목차는 다음과 같습니다. 1. VPC 생성하기 1.1 DNS 호스트 네임 활성화 2. VPC 생성과 함께 만들어지는 리소스들 2-1. 라우팅 테이블 2-2. DHCP 옵션 셋 2-3 ..
Amazo VPC란 무엇일까? Amazon VPC는 AWS 사용자 전용 가상 네트워크입니다. 가상 네트워크가 무엇인지 자세히 알아보겠습니다. 1. VPC(Virtual Private Cloud)란? 아마존 VPC의 공식 웹페이지에서는 VPC를 다음과 같이 소개합니다. 💡 Virtual Private Cloud (VPC)는 사용자의 AWS 계정 전용 가상 네트워크입니다. VPC는 AWS 클라우드에서 다른 가상 네트워크와 논리적으로 분리되어 있습니다. Amazon EC2 인스턴스 같은 AWS 리소스를 VPC에서 실행할 수 있습니다. IP 주소 범위와 VPC 범위를 설정하고 서브넷을 추가하고 보안 그룹을 연결한 다음 라우팅 테이블을 구성합니다. 이 소개에서 ‘논리적으로 분리되어 있습니다’라는 말에 주목해주세요. AWS는 기본적으로 다양한 ..
AMI를 이용하여 EC2 백업과 복원하기 Amazon Machine Image(AMI)는 인스턴스를 시작하는 데 필요한 정보를 제공합니다. 이번에는 AMI를 이용해 서버를(EC2) 백업하고 복원해보겠습니다. 개발 환경 및 사용 기술 운영체제 : Amazon Linux 2 Java 11 (Amazon Coretto) AWS EC2 AMI (Amazon Machine Image) 1. 기존 EC2에 자바 11 설치 및 버전 확인 이번에 백업할 서버는 Amazon Linux 2 운영체제에 java11가 설치된 환경입니다. 먼저 기존 서버에 ssh로 연결한 이후 java 11을 설치해보겠습니다. 기존 서버 ssh 연결 java 11 설치 yum에는 설치 가능한 JDK가 1.8까지만 존재하기 때문에 JDK 11을 설치하기 위해서는 다른 방법을 이용해야 ..