![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/bCxh38/btqHQG6jl8h/QCGK7B0H9kcPfy7SSveQYK/img.png)
개요 DevOps DevOps란 개발과 운영을 함께하는 소프트웨어 개발 방법론입니다. 소프트웨어 개발 시에는 개발뿐만 아니라 빌드, 테스트, 배포 등 여러 과정이 필요합니다. 따라서 기존의 회사들은 하나의 서비스를 개발과 운영팀으로 나눠 관리했습니다. 이렇게 하나의 서비스를 개발과 운영으로 나누다보니 의사결정과 소통에서 비효율적인 문제가 발생했습니다. 따라서 개발과 운영을 함께 할 수 있는 방법론인 DevOps가 탄생하였습니다. 하나의 서비스를 개발한 후 운영하다보면 필연적으로 그 서비스는 여러 변경사항이 생깁니다. 과거에는 이 변경된 코드를 적용하기 위해서 모든 개발자가 모여 직접 코드를 병합하였습니다. 최근에는 애플리케이션 배포 주기가 짧아지면서 잦은 코드 병합이 일어나고 이 때마다 여러 개발자가 모..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/VbRlT/btqHNxol2UJ/BnrH6sOPoCD3Gys2OrX6Rk/img.png)
AWS EC2와 RDS 서버 생성과 기본 설정을 마치고 실제 서버에 저의 프로젝트를 배포하겠습니다. 전체적인 순서는 이렇습니다. 1. Github에서 AWS 서버로 코드를 가지고 옵니다. 2. gradle을 이용하여 build하고 jar 파일을 생성합니다. 3. jar파일을 실행합니다. 처음 서버를 실행했을 경우 Git이 설치되어있지않습니다. 따라서 git을 설치하고 github에 올라간 코드의 master branch를 clone하여 가지고 옵니다. clone한 프로젝트 디렉토리에 들어가 ./gradlew test를 실행하여 코드가 제대로 수행하는 지 확인합니다. (현재 EC2 서버에는 gradle이 설치되어있지 않지만 ./gradlew 가 실행됩니다. 이것이 가능한 이유는 프로젝트에 포함된 gradl..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/6MJ8C/btqHhPxV7A2/6kt3FqK01Z8CTZLkXgdRd0/img.png)
이전에 AWS EC2 인스턴스를 생성하고 여러 설정들을 했습니다. 이제 데이터 베이스 서버를 설정할 차례입니다. 데이터 베이스 서버는 AWS 관계형 데이터 베이스 서비스인 RDS를 사용해 구축합니다. 프리티어로 사용할 경우 EC2와 마찬가지로 무료이기 때문에 학습용으로 적합합니다. 1. RDS 생성 콘솔로 로그인하여 검색창에 RDS를 검색하고 클릭하면 다음과 같은 화면이 나옵니다. 화면 아래부분에 있는 데이터베이스 생성을 클릭해주세요. 클릭하고 엔진 옵션을 보면 여러 엔진이 있습니다. 저는 MariaDB를 사용하겠습니다. 무료로 사용하기 위해 프리 티어로 선택해주세요. 아래는 설정란입니다. 식별자는 본인 프로젝트 이름을 써주시고 나머지를 모두 작성하고 기억해주세요. 나중에 디비에 접속 시 필요합니다. 연..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/IblLi/btqG9BGtnOw/UNVuwGbzuXo9eFUFXImwwk/img.png)
내가 만든 서비스를 배포(Deployment)하기 위해서는 항상 가동되고 있는 서버가 필요합니다. 일반적으로 기업들은 물리적인 회사 서버를 가지고 서비스를 외부에 제공하거나 클라우드 서비스를 이용하여 제공합니다. 하지만 저는 집 컴퓨터를 24시간 365일 켜놓고 있을 수는 없고 개인 서버 장비를 살 정도로 부유하지 않으니 클라우드를 통해 배포를 진행해보도록 하겠습니다. 그 중에서 IaaS의 대표적인 예시인 AWS EC2를 사용해보도록 하겠습니다. 1. AWS 회원가입 우선 AWS로 접속하여 계정 생성을 클릭합니다. 메일주소, 암호 계정 이름 등을 입력하고 넘어가면 다음과 같은 화면이 나옵니다. 이 때 계정 유형은 개인으로 선택하고 주소는 영문 주소를 기입합니다. (영문 주소 찾기) 다른 칸도 다 기입해주..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/bHqUza/btqG2GMUP0I/PnMKyp8ZOOprdV3XKQBldk/img.png)
클라우드란? 클라우드 서비스란 인터넷을 통해 각종 자원(운영체제, 데이터베이스, 스토리지 .. 등)을 제공해주는 서비스를 말합니다. 예전에는 각자의 물리적인 서버가 존재하고 직접 관리하며 프로젝트를 배포했습니다. 하지만 클라우드 서비스가 발전하면서 많은 기업들이 물리적인 서버를 관리하기 보다는 클라우드로 이전하는 것을 택하고 있습니다. 따라서 저도 클라우드를 이용하여 무중단 배포를 해보겠습니다. 클라우드를 사용하기 전에 클라우드의 몇가지 형태에 대해 알아보겠습니다. (1) Infrastrucure as a Service(IaaS) 서버 운영하기 위해 필요한 자원, IP, 네트워크 등 여러 인프라를 제공해주는 클라우드 서비스입니다. 서버를 운용하기위해서는 물리적인 장비들이 필요한데 이를 미들웨어와 함께 묶..
- Total
- Today
- Yesterday
- 합병정렬
- react
- 알고스팟
- 라이프 사이클
- 백준
- CodeDeploy
- 다익스트라
- 자동화
- greedy
- ci/cd
- 퀵 소트
- oauth
- spring boot
- 정렬
- AWS
- 버블정렬
- 리액트
- Union-FInd
- stack
- 가상환경
- 서버
- EC2
- 선택정렬
- 병합정렬
- RDS
- 스프링 부트
- 알고리즘
- 삽입정렬
- 배포
- 계수정렬
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |