AWS 썸네일형 리스트형 [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 옵션을.. 더보기 EC2 CodeDeploy Agent Install (ubuntu) sudo apt-get update sudo apt-get install python-pip sudo apt-get install ruby2.0 wget https://aws-codedeploy-ap-northeast-2.s3.amazonaws.com/latest/install chmod +x ./install sudo ./install auto sudo servie codedeploy-agent status 더보기 CloudFormation을 통한 개발서버 On/Off 스케줄링 (실패) # CloudFormation 생성 # 템플릿 추가 후 실행 - https://s3.amazonaws.com/solutions-reference/aws-instance-scheduler/latest/instance-scheduler.template # Service(s) to schedule -> BOTH # Default time zone -> Asia/Seoul # Enable CloudWatch Metrics -> Yes # Started tags -> state=started # Stopped tags -> state=stopped # 다음 - 다음 # AWS CloudFormation에서 사용자 정의 이름으로 IAM 리소스를 생성할 수 있음을 승인합니다. 체크 후 생성 # https://docs.. 더보기 EC2 - Ubuntu에서 composer install / update 시 메모리 부족현상 # 서버 메모리를 증가한다 : EC2 스케일링 Up => 이게 제일 확실한 방법임 # 메모리를 제한한다. sudo php -dmemory_limit=750M /usr/bin/composer install # 이 방법으론 안되었음 # 스왑 추가 (1G) - 경험상 사용시 2G 가량을 사용하는데 모자란다고 생각되거나 실제 메모리가 1G인 경우 sudo swapon --show (스왑 메모리 확인) free -h (메모리 확인) df -h (디스크 용량 확인) sudo fallocate -l 1G /swapfile (스왑파일 생성) ls -lh /swapfile (스왑파일 확인) sudo chmod 600 /swapfile (스왑파일 권한 수정) ls -lh /swapfile (스왑파일 확인) sudo mks.. 더보기 이전 1 2 3 4 다음