![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/ZoiJo/btsESnisPSw/zCdHuyDuKgMP0PRW9rbD8K/img.png)
ECS + Fargate 구축 과정에서 Log 를 보기 위해서는 아주아주 번거롭다. Private Subnet에 구축된 서버리스 환경에 컨테이너에 접근하기 위해 EC2에 접근하고 컨테이너에 접근하여야하는데, 이마저도 ECS에 execute command 설정이 필요하다. 따라서 외부에서 로그를 편하게 볼 수 있는 방법에 대해 고민에 빠졌다. Log Appender를 구축하여 클러스터 외부에 Fluent를 구축하여 한곳에서 로그를 받아 처리할까 했지만 AWS에서는 FireLens라는 기능을 출시했다하여 사용해본 과정과 후기를 적어보려고 한다. Fluentd: 플러그인 구조를 갖고 있는 로그 라우팅, 정제, 변환, 수집을 담당하는 툴 Fluent Bit: Fluentd의 경량화 버전 AWS FireLens는..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/vVSwz/btrNmznyJ0o/BfRZTHJjhYgmWCs94JM7q0/img.png)
이전에 AWS Lightsail에서 서버를 빌리고 도메인 연결 후 https로 띄우는 작업까지 마쳤다. 실제 프로젝트를 돌리기 위해서는 당연히 DB는 필수적이다. 이번에는 AWS Lightsail에서 제공하는 DB서버까지 활용해서 터미널을 통해 DB서버에 접근하고 WorkBench에 연결해보려한다. 1. AWS Lightsail 데이터베이스 생성 데이터베이스 탭에서 데이터베이스를 생성 2. 생성한 DB 옵션 필자는 MySQL로 첫 3개월이 무료인 1G DB를 생성하려고 한다. 생성 후 다소 시간이 걸릴 수 있다. 3. 사용자 명, 암호, 엔드포인트 확인 사용자명과 DB 암호, 그리고 엔드포인트와 포트를 확인할 수 있고 이를 통해서 DB에 접근이 가능하다. 4. 데이터베이스 연결 접속한 서버에서 DB에 접..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/xYOjw/btrNkDwMkhU/scqwA8uVEkPAJPa7CL6Xc0/img.png)
이전에 포스팅한 AWS Lightsail (1), AWS Lightsail (2) 에 이어서 HTTP로 띄운 서버를 Certbot을 통하여 HTTPS로 전환하여 보안을 강화하려한다 1. HTTPS 란 HyperText Transfer Protocol over Secure Socket Layer, HTTP over TLS, HTTP over SSL, HTTP Secure 등으로 불리는 HTTPS는 HTTP에 데이터 암호화가 추가된 프로토콜이다. HTTPS는 HTTP와 다르게 443번 포트를 사용하며, 네트워크 상에서 중간에 제3자가 정보를 볼 수 없도록 암호화를 지원하고 있다. 2. certbot 설치 Let's Encrypt라는 비영리 기관을 통해 무료로 TLS인증서를 발급받을 수 있다. certbot ..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/egTFq9/btrNkaOoGbl/DGhjk3xLPK6cTr612dBrkK/img.png)
이전에 AWS에서 제공하는 Lightsail Ubuntu Linux를 빌려 키파일을 생성하고 서버에 접속하는 시간을 가졌다. 이번에는 nginx를 설치하고 도메인을 구입하여 이 서버의 IP와 연결하려고 한다. 1. 서버 접속 2. nginx 설치 sudo apt install nginx -y 3. nginx 설정 nginx를 설치하면 /etc/nginx 폴더 안에 sites-available, sites-enabled 폴더가 존재 sites-available은 가상 서버 환경들에 대한 설정 파일들이 위치하는 부분으로 가상 서버를 사용하거나 사용하지 않던간에 그에 대한 설정 파일들이 위치하는 곳이다. sites-available에 있는 가상 서버 파일들중에서 실행시키고 싶은 파일을 symlink로 연결한 ..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/bY6H3U/btrM5Q4QYFO/5nh54KBmA7u0TwGS3JQGqk/img.png)
EC2는 회사에 인프라 관리자가 있거나 자신이 가상 서버, 네트워크, 디스크 볼륨, 보안 그룹 등의 관리를 하드하게 해야하는 분에게 상대적으로 더 적합하다. 상세 설정을 통해서 비용이든 성능이든 이득을 얻을 수 있는 환경에서 일하고 있다면 EC2와 관련 서비스들의 유연한 환경설정은 큰 장점이기 때문이다. 또한 EC2는 네트워크 트래픽보다는 CPU 연산 위주의 프로젝트를 돌릴 때 더 유리하다. 무엇보다 서버를 껏다 켰다 하면서 과금되는 시간을 조절할수도 있다는 온디멘드 방식은 매우 매력적인 옵션이다. 그러나 뒤집어 이야기하면 세팅 하려고 정작 개발을 못하거나, 개발하는 시간보다 인프라 관리하는 시간이 더 들어야 하는 분에게는 주객이 전도된 상황이 생기게 된다. Lightsail은 인프라 관리해줄 사람이 없..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/bFK7gz/btrM6YBnslH/UQTkOWqeIlqsQzVpCUXn5k/img.png)
AWS EC2에서 Git을 설치하고 리액트 프로젝트를 생성하기 위해 node 최신버전을 받아보도록 하자. 먼저 Git을 설치하도록 한다. git을 설치하는 명령은 다음과 같다. sudo yum install git git 설치가 정상적으로 이루어졌는지 git --version으로 확인해보도록 하자 다음은 node를 설치해보겠다. node 설치 또한 어렵지 않다. sudo yum install curl curl --silent --location https://rpm.nodesource.com/setup_8.x | sudo bash - sudo yum install -y nodejs node -v 순서대로 입력해주고 마지막에 설치가 잘 되었는지 버전을 확인하도록 하자. 여기까지 모두 정상적으로 설치가 되었..