이번 블로그에서는 여러 EC2들을 대상으로 CI/CD를 구축하는 과정을 알아보도록 하겠습니다. 우선 CI/CD 도구는 깃허브 액션을 사용할것이고, 스프링 서버를 기반으로 배포를 진행할 것입니다. CI/CD를 구축할 서버 구조환경은 아래의 글에서 확인 하실 수 있습니다. https://tioon.tistory.com/184 EC2 도메인 연결 및 HTTPS 적용하기 이번엔 AWS에서 서버 배포를 할때, 도메인을 적용시키고, 추가적으로 HTTP가 아닌 HTTPS로 적용시켜 배포하는것을 알아보도록 하겠습니다. 우선, 이 과정을 진행하기 위해선 필요한것들은 다음과 tioon.tistory.com 즉, 아래가 저희가 CI/CD를 구축해야할 서버의 환경입니다. 로드밸런서와 RDS는 CI/CD를 구축할 필요가 없으므..
이번 글에서는 도커를 활용해 스프링서버를 배포하는 과정을 설명하겠습니다. 저희가 서버 1대를배포하거나, 서버의 환경설정이 간단하다면, 일반적으로 EC2에서 파일을받아 빌드하면되겠지만, 만약 여러대의 서버를 배포해야한다던가, 서버배포하기전에 환경설정작업이 매우 복잡하다면, 이렇게 일반적으로 빌드하게 될때 매우 복잡해집니다. 따라서, 도커는 가상환경의 장점을 통해 빠른 서버 배포와 환경설정이 가능하게 해줍니다. 배포 과정 먼저, 도커를 이용해 배포하는 과정을 간략하게 설명 드리겠습니다. Dockerfile 생성 Dockerfile 기반으로 도커이미지 생성 도커 이미지를 도커허브로 Push EC2에서 도커허브에서 도커 이미지 Pull 받기 도커이미지 기반으로 컨테이너 생성 후 실행 (도커 컴포즈로 대체가능) ..
이번 장에서는 로드밸런서를 활용한 Scale-Out 구현하겠습니다. Scale-Out을 구현하기에 앞서, Scale-Out의 개념과 이게 왜필요한지에 대해서 먼저 알아보도록 하겠습니다. Scale-Out(수평확장)이란?? Scale-Out이란 Scale-Up과 대비되는 말로, 서버의 처리능력을 증가시키기 위해 추가적은 노드(서버)를 시스템에 추가하는 것을 의미합니다. 즉, 서버의 성능을 높이기위해 단일 서버가 아닌 다수개의 서버를 이어붙여 트래픽을 분산시켜 서버 성능을 높이는 기법을 뜻합니다. 이해하기 쉽게 예시를 들어서 설명을 해보겠습니다. 위와 같은 상황의 서버가 있다고 가정을 하겠습니다. 현재 단일 서버로 서버 1대가 존재하고, 서버와 DB가 1대1로 매핑이 되어있는 서버라고 가정하겠습니다. 가장 ..
이번엔 AWS에서 서버 배포를 할때, 도메인을 적용시키고, 추가적으로 HTTP가 아닌 HTTPS로 적용시켜 배포하는것을 알아보도록 하겠습니다. 우선, 이 과정을 진행하기 위해선 필요한것들은 다음과 같습니다. EC2 (서버실행되는 EC2) 도메인 (가비아 사용) Route53 (도메인서비스) Certfication Manager (SSL/TLS 인증서) Load Balancer (로드밸런서) RDS 데이터베이스 (필수X) 우선 진행과정은 다음과 같습니다. 1. EC2, RDS 배포(여기서는 생략) 2. 도메인 구매 3. Route 53 도메인 적용 4. Certification Manager 인증서 발급 및 도메인 적용 5. 로드 밸런서 생성 및 타겟그룹 설정 6. 로드밸런서와 Route 53 연결 일단 ..
RDS란? -AWS에서 제공하는 관계형 데이터베이스 서비스로, 다양한 데이터베이스를 생성 및 운영할 수 있어, 개발자가 필요한 것을 선택하여 데이터베이스를 사용할 수 있는 서비스 입니다. 또한, 자동으로 백업, 복구, 패치관리, 등의 데이터베이스 관리 작업을 자동화하며, 필요에 따라 데이터베이스의 크기를 늘리거나 줄일 수 있습니다. 즉, RDS는 AWS에서 따로 자체적으로 운영하는 데이터베이스 서비스로, 우리가 서버를 개발할때 편의성을 높이는 서비스입니다. 그러면 저희가 따로 데이터베이스를 운영하는거에 비해 RDS를 통해 데이터베이스를 운영할때 어떤 장점이 있을까요?? RDS의 장점은 다음과 같습니다. RDS의 장점 관리 편의성 증가 - 자체적으로 데이터베이스를 운영할땐 백업, 패치 관리, 장애복구 등의..
서버를 배포할 때 도커 컴포즈를 사용해 환경 구축할 수 있습니다. 도커 컴포즈를 이용해 구축하는 과정은 다음과 같습니다. 도커 이미지 파일 생성 및 도커 허브 push 도커 컴포즈 파일 생성 클라우드에 도커 이미지 다운 도커 컴포즈 up 실행 도커 이미지 파일 생성 및 도커허브 push 도커 파일 생성 -서버의 설정을 기반으로 Docker file을 작성합니다. 도커 이미지 빌드 -도커 파일 기반으로 사용자가 원하는 이름으로 도커 이미지 빌드합니다. docker build -t [생성할 이미지 이름] . 도커 로그인 docker login (docker desktop이 무조건 실행되고 있어야함.) 이미지 태깅 docker tag [빌드된 이미지 이름] [유저 닉네임]/[도커 레포지토리 이름]:[tag 버..
쿠버네티스(Kubernates)란? -컨테이너 오케스트레이션 도구이며, 컨테이너화된 어플리케이션들을 자동으로 배포, 확장 및 관리를 하는 도구입니다.쿠버네티스를 이용해 여러개의 컨테이너들을 관리하며 k8s라고 줄여쓰기도 합니다. 쿠버네티스 특징 컨테이너 오케스트레이션 -여러 노드에서 동작하는 많은 컨테이너들을 관리하고 조정합니다. 자동 스케일링 -트래픽 변동시 자동으로 컨테이너를 추가하거나, 제거하여 애플리케이션을 확장하거나 축소 시킬 수 있습니다 자동 복구 -특정 컨테이너나 노드에 문제가 발생하면 자동으로 재시작하거나 대체합니다. 서비스 디스커버리 및 로드 밸런싱 -DNS 이름이나 자체 IP 주소를 사용해 서비스를 구별하여 트래픽을 분산시켜 여러 파드에 골고루 나눌 수 있습니다. 쿠버네티스 내부 노드 ..
- Total
- Today
- Yesterday
- 인공지능
- sql
- 테이블
- 문법
- 데이터베이스
- JPA
- 파인튜닝
- 포트포워딩
- 보안
- 데이터
- 깃허브
- 스프링
- DB
- 서버
- 배포
- 깃
- 네트워크
- IP주소
- nat
- 프로토콜
- 자동화
- 웹소켓
- 도커
- 클라우드
- 쿼리
- 소프트웨어공학
- 컴퓨터구조
- 컨테이너
- 자바
- 메세지큐
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |