AWS 썸네일형 리스트형 ACM 멀티 인증서 적용하기 ACM은 AWS안에서 ALB, Cloudfront 등 웹을 통해 https를 통해 들어오는 경우 제공해주는 인증서 서비스이다. https://docs.aws.amazon.com/ko_kr/acm/latest/userguide/acm-overview.html AWS Certificate Manager이란 무엇입니까? - AWS Certificate Manager AWS Certificate Manager이란 무엇입니까? AWS Certificate Manager(ACM)는 AWS 웹 사이트와 애플리케이션을 보호하는 퍼블릭 및 프라이빗 SSL/TLS X.509 인증서와 키를 만들고, 저장하고, 갱신하는 복잡성을 처리합 docs.aws.amazon.com ACM의 장점 - 외부에서 구매시 비싼 인증서를 AWS.. 더보기 테라폼 맨땅에서 부터 적용하기 2 진짜 한땀 한땀 넘겨놓고 나니 이젠 어지간한 리소스 그림으로 그려보라면 그릴 수 있을 거 같다. 그리고 모든 브랜치의 리소스도 파악하여 (terraform에 import 된 것 한정) apply도 확인해가며 돌릴 자신은 생겼다. 이 상태에서 2 ~ 3주간의 일상적인 리소스 변경활동도 이어 갔다. 단 1편에서 나온 모듈화 되어 있지 않은 널브러진 파일은 가독성이 떨어지는 부분이 있어서 폴더화가 필요해 보였다. 이게 필요한 것은 알았지만, 적용시 몇가지 불편한 사항이 있었다. 1. state backup이 제대로 되지 않아 간간히 내가 삼실 컴에서 하던 것과 집 컴에서 할때 코드가 같아도 state의 문제로 다시 import 해야 하는 문제가 발생 2. 다른 브랜치가 바뀌는 중에 원하는 브랜치만 따로 적용이.. 더보기 테라폼 맨땅에서 부터 적용하기 1 AWS에서 리소스를 제어할때 기본적으로 AWS Console을 사용한다. 하지만 리소스가 점점 늘어날 수록 손으로 일일이 대응하기엔 시간도 많이 걸리고 휴먼에러도 많이 발생한다. 인프라는 다른 개발자들의 컨텐츠 작업보다는 훨씬 리스크가 큰 작업이다. 예를 들자면, 인프라는 건물이고 개발자는 인프라가 생성한 방에서 일하는 근로자인 것이다. 개발자가 실수를 하면 방에서 불이 나거나, 물 난리가 나는 정도의 레벨이라면 인프라의 실수는 기둥하나를 날리는 것이라던지, 중간 층을 통채로 날리던지 비교 여부를 떠나 개발자 대비 리스크가 훨씬 큰 작업이라는 것이다. 이번 적용기 글에선 사용법이나 이런 것들은 적지 않고 느낀 점만 간단히 적을 생각이다. 이미 많은 분들이 잘 사용할 수 있는 방법을 적어놨기 때문이고 사실.. 더보기 [AWS Lambda] S3 Image Resize with URL Parameter (Cloudfront 요금 30% 감면) 기존에 사용하던 이미지 파일들이 너무 커서 리사이징을 해야 하는 이슈가 발생했는데 파일이 너무 많고 쓰는지 안 쓰는지 알수 없는 상황이었다. 그렇다고 개발팀에선 이미지 파일 리사이징 후 업로드 하는 부분에 대해서 대응할 시간은 없고 인프라쪽은 빠르게 조치를 해야하다보니 람다 function을 이용해서 처리할 방법을 고민하게 되었다. 찾아보다보니 lambda@edge 기능을 이용하여 S3 -> Cloudfront로 보낼때 origin response 부분에 Lambda@edge를 채워 놓고 거기서 리사이징을 한 뒤 Cloudfront로 보내면 URL 파라미터를 포함하여 캐시가 된다는 내용이 있었다. 그렇게 되면 개발팀에서도 굳이 별도의 기능을 구현하지 않고 URL Parameter를 사용하여 처리하면 되기.. 더보기 ngrinder 서버 세팅 # 도커 설치 sudo yum install docker -y # 도커 always on boot sudo chkconfig docker on # controller 기동 sudo docker run -d --name controller -v ~/ngrinder-controller:/opt/ngrinder-controller -p 8080:80 -p 16001:16001 -p 12000-12009:12000-12009 ngrinder/controller # 1 ~ n까지 필요한 만큼 네이밍 바꿔가면서 서버 생성 sudo docker run -d --name agent{n} --link controller:controller ngrinder/agent # html 가져와 지는지 확인 wget localho.. 더보기 ELK 서버 세팅하기 wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add - echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-7.x.list sudo apt install elasticsearch sudo vim /etc/elasticsearch/elasticsearch.yml # edit network.host: localhost :wq # quit sudo systemctl start elasticsearch sudo systemctl enable elasticsearch #.. 더보기 ubuntu apache2 letsencrypt 적용방법 # letsencrypt 설치 sudo apt-get install letsencrypt # 인증서 설치 # ACMEv1 프로토콜의 보안 문제로 ACMEv2를 적용하여야 인증서가 생성됨 sudo letsencrypt certonly --server https://acme-v02.api.letsencrypt.org/directory --webroot --webroot-path={webroot} # 이메일 주소 입력 후 엔터 # SSL 모드 활성화 sudo a2enmod ssl # Rewrite 활성화 sudo a2enmod rewrite # SSL 설정 sudo vim /etc/apache2/sites-available/default-ssl.conf # edit DocumentRoot {webroot} S.. 더보기 AWS EC2 에서 s3 drive 연동하기 (non-root) # AWS EC2 Ubuntu 16.04 LTS 기준 sudo apt-get install s3fs sudo vim /etc/fuser.conf # edit # user_allow_other 주석 제거 # quit echo : ~/.passwd-s3fs sudo vim /etc/passwd-s3fs # add : # quit sudo chmod 600 ~/.passwd-s3fs sudo chmod 640 /etc/passwd-s3fs mkdir ~/s3-drive sudo s3fs -o allow_other -o use_cache=/tmp -o uid=1000,umask=077,gid=1000 ~/s3-drive # 유의사항 - 마지막 구문의 -o uid=1000,umask=077,gid=1000 옵션을.. 더보기 이전 1 2 3 4 다음