본문 바로가기

AWS WorkMail 만들기 (도메인, 이메일 서비스, 사용자, 인증) AWS WorkMail로 메일 서비스를 사용하실 수 있죠. 간단하게 어떻게 구성되는지 정리해둡니다. 또 언젠가는 작업하게 되겠죠? WorkMail 서비스는 US East, US West, Europe region에서만 사용이 가능합니다. 접속하면 Region 선택하는게 나와요. 저는 US East 선택했어요. 편하신대로 선택하시면 됩니다. 작업 순서는 Organization 생성 > 도메인 추가 및 Route53 셋팅 > 사용자 생성 > 메일 서비스 접속으로 이루어집니다. Organization 생성하면 아래와 같은 화면이 나옵니다. 여기서 Default mail domain을 확인해두셔야 합니다. 메일 서비스 접속을 위해서요. Organization 생성된거 선택하시면 세부 메뉴화면으로 넘어갑니다. 여.. 더보기
Nginx install in EC2 Amazon Linux AWS EC2 - Amazon Linux에서 Nginx를 비롯한 많이 사용되는 패키지를 인스톨하려면 아래와 같은 명령어로 가능합니다. amazon-linux-extras list sudo amazon-linux-extras install nginx1.12 amazon-linux-extras list 를 입력해보시면 여러 패키지들이 나와요. 그 중에 nginx가 있는 것이고요. sudo amazon-linux-extras install nginx1.12 명령어를 통해서 설치가 가능합니다. 버전은 변경될 수 있으니까 list 명령어로 나오는 패키지를 그대로 복사해서 사용하시면 되요. 처음에는 yum에 nginx가 검색이 안되서, 다른 방법으로 설치하려고 막 알아보고 그랬는데 amazon-linux에서는 am.. 더보기
(다시쓰는) AWS CloudWatch Alarm Writing to Slack Using Lambda AWS CloudWatch에서 알람이 울리면 그 내용을 관리자 이메일로 보내고 추가로 슬랙(slack)의 특정 채널에 메세지를 작성하는 내용을 예전에 정리한 적이 있습니다. 부족한 부분이 있더라고요. 그래서 다시 정리해봅니다. \ 1. 준비하기 - 순서는 상관없습니다. - Slack WebHook URL 생성 > https://.slack.com/services/new 에 접속해서 'incomming webhooks' 검색합니다. > Add Configuration을 통해서 Webhook URL을 하나 생성합니다. 잘 가지고 있다가 Lambda에서 사용합니다. 2. CloudWatch Alarm 생성 - 여러 Metric 중에서 원하는 것을 생성하고 Define Alarm 에서 Actions에 Send .. 더보기
CloudWatch 로그 기록 에러 : timestamp is more than 2 hours in future. AWS CloudWatch에 로그를 모을 수 있는데요. 모으는 방법은 이전에 포스팅했습니다. 아래 링크를 참고해주세요. 2017/03/04 - Log File to AWS CloudWatch 이번에 새로운 인스턴스를 작업하다 보니깐 아래와 같은 에러를 만날 수 있었습니다. reason: timestamp is more than 2 hours in future. 라는 메세지를 받을 수 있는데요. 요 메세지는 /var/log/awslogs.log 에 기록됩니다. 서버 시간을 잘 설정하면 되는데요. 제가 했던 실수는 tzselect 로 timezone 설정을 끝낼 수 있다고 생각한 것입니다. 아래 URL에서도 나와 있듯이 tzselect는 보여지기 위한 부분만 변경하는 것이라 위와 같은 에러가 발생하는 것입니.. 더보기
NGINX timeout in AWS EC2, ELB 정말 오랜만에 기술 관련 포스팅을 작성하는군요 ! 반성하고 있습니다. NGINX 웹서버에서 timeout이 발생하는 경우에 아래와 같은 설정을 nginx.conf에 추가하면 됩니다. uwsgi를 사용하지 않으시면 아래 proxy* 부터 작성하시면 되겠죠? 웹서버 timeout 관련 키워드로 구글 검색하면 정말 많이 나오는데요. 설정을 마치고 몇 번 웹서버 재시작을 해도 60초 정도 안에 timeout이 되는거에요. 서버는 아마존 클라우드에서 생성해서 사용하고 있는데요.거기서 문제가 있더라고요. 아마존 클라우드 EC2 콘솔에 접속해서 아래 그림과 같이 Load Balancers로 들어갑니다. 해당 서버의 ELB Attributes를 보시면 기본적으로 Idle timeout이 60초로 설정되어 있어서 NGI.. 더보기
AWS S3 Bucket Share AWS S3 Bucket Share 하는 과정을 정리해봅니다. AWS는 문서화가 잘되어 있어서 제가 정리해보려는 내용도 이미 나와 있습니다. Amazon S3 리소스에 대한 액세스 권한 관리 : http://docs.aws.amazon.com/ko_kr/AmazonS3/latest/dev/s3-access-control.html 이미 존재하지만 간단하게라도 정리해보려고 합니다. 상황 설정 - 사용자 A : mototest Bucket 소유자- 사용자 B : mototest Bucket 에 접근하고 싶은 사용자 Step 0 : 사용자 B의 AWS 가입 사용자 B는 AWS에 가입해야 합니다. A는 당연히 가입되어 있겠죠. B는 AWS에 가입하고 IAM을 통해서 사용자를 하나 생성합니다. 위 그림과 같이 AR.. 더보기
AWS AMI 제거하기 이번 포스팅에서는 AMI를 제거하는 방법에 대해서 그림으로 정리해보려고 합니다. AWS에서 주요 기능이나 방법은 한글로도 된 문서가 잘되어 있는 것 같아요.제가 여기서 정리해보려고 하는 내용도 아래와 같은 문서가 이미 존재합니다. AWS의 AMI에 대한 소개는 아래 URL을 참고하시면 됩니다. http://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/AMIs.html AMI를 삭제하는 방법도 Text로 잘 나와있고요.http://docs.aws.amazon.com/ko_kr/gettingstarted/latest/wah-linux/getting-started-cleanup-custom-ami.html 그래도 사진으로 남겨두려고 합니다. 아무튼 GOGO 먼저 E.. 더보기
AWS 계정 삭제하기 (account close) AWS 계정을 삭제하는 방법에 대해서 간단하게 정리해둡니다. 방법은 로그인 -> AWS Console -> My Account -> 제일 하단의 Close 버튼 선택 1. 로그인하면 AWS Console에 접근하게 되는데요. 우측 상단에 사용자 이름을 선택하면 다음과 같은 메뉴가 펼쳐집니다. 여기서 My Account를 선택해주세요. 2. My Account에 접속했다면 제일 아래로 내려가면 Close Account가 보입니다. 저는 이미 Close 해서 해당 버튼이 선택 안되는 걸로 나오는데요. 체크박스를 선택하면 Close Account 버튼이 활성화됩니다. 선택하시면 끝입니다. 완료되면 이메일로 등록 취소 이메일이 옵니다. 더보기
Log File to AWS CloudWatch Log File에 작성되는 내용을 AWS CloudWatch의 Log로 기록할 수 있습니다. 아래 그림이나 내용은 Ubuntu 에서 테스트한 것입니다. 0. 기존에 Log File에 작성되고 있는 로그가 이미 있어야 하겠죠. 1. pip로 awslogs를 설치해줍니다. 저는 0.8.0 버전이 설치되었네요. - pip install awslogs 혹은 pip install --upgrade awslogs 2. IAM에서 사용자 추가 및 Permission Attach를 수행합니다. - 사용자 추가는 넘어가고요. Permission Attach는 아래와 같습니다. 3. 우분투에서 적당한 곳에서 wget을 통해 awslogs setup 파일을 다운로드 합니다. - wget http://s3.amazonaws... 더보기
Lambda로 Slack에 메세지 작성하기를 위한 key 생성 및 URL 암호화 2016/12/08 - [ # 클라우드/- AWS,아마존] - Lambda로 Slack에 메세지 작성하기 위 포스팅과 관련이 있습니다. CDN이나 S3에서 발생하는 알람을 Slack에서 확인하기 위해서는 CloudWatch와 Lambda 모두 N. Virginia Region에 생성해야 합니다. 실수한 부분도 포함시켰는데요. region이 us-east-1 이렇게 해야 하더라구요. (1d, 1b 이런식으로 하면 안되는데) kms create-key , kms create-alias, kms encrypt 를 수행해야 하고 아래 그림에서 확인할 수 있습니다. 마지막 명령어로 나오는 CiphertextBlob 값을 lambda 예제의 kmsEncryptedHookUrl 에 입력하면 됩니다. 더보기
AWS EC2 Reserved Instance Purchase 충분한 계획이 있다면 AWS EC2 인스턴스를 온디멘드로 사용하는 것 보다 예약 인스턴스를 사용하는 것이 저렴합니다. 당연한거죠. 휴대폰도 약정걸면 가격이 저렴해지는 것 처럼요. EC2 예약 인스턴스를 구매하는 것은 간단하지만 신중하게 해야 합니다. 되파는 것이 어렵기 때문입니다. 저는 되팔아 본 적은 없지만 문서만 읽었을 때 쉽게 판매가 안될 것 같다는 생각이 들었어요. 신중하게. 신중하게. AWS - EC2 - Reserved Instances 에 들어가서 원하는 인스턴스 타입을 검색합니다. 저는 linux Platform에 타입은 m4.large를 선택했고요.기간은 12개월, Payment Option은 No Upfront로 설정했습니다. No Upfront는 미리 지불하는 금액이 없는 옵션입니다... 더보기
jQuery Ajax with x-api-key AWS Gateway API를 사용해서 Lambda Function을 호출하는 프로세스는 Serverless 환경을 구축하고자 하는 분들에게 매우 유용합니다. 어떤 경우에는 정해진 사용자만 Gateway API를 사용할 수 있도록 해야 하는데 AWS Gateway API의 Key를 설정하면 간단합니다. Key를 설정하면 (꼭 다시 Deploy 해야 함, Deploy 까먹어서 여러 번 시간 낭비함 ㅠ) x-api-key를 header에 같이 보내줘야 합니다. Ajax로 x-api-key를 보낼 때에는 아래와 같이 beforesend에 보내주면 됩니다. $.ajax({ type: "get", url: "https://9d9d9d9d9d9d.execute-api.ap-northeast-2.amazonaws.c.. 더보기
AWS RDS - Reserved Purchases AWS RDS도 예약 인스턴스를 사용하면 가격이 훨씬 저렴하죠. 자세한 요금은 아래 URL에서 확인할 수 있어요. https://aws.amazon.com/ko/rds/pricing/ 바로 아래 사진은 온디멘드 - 다중 AZ 배포 - PostgreSQL 인스턴스에 대한 요금이에요.m4.large의 경우 시간당 $0.504 군요. 아래는 온디맨드가 아니라 예약 인스턴스의 경우 요금이에요동일하게 다중 AZ 배포 - PostgreSQL 인스턴스고요. t2.micro는 1년 예약하면 $0.044 군요.물론 한번에 다 내거나 부분 선결제하면 가격은 더 떨어지고요. m4.large는 선수금 없이도 $0.316 으로 온디맨드에 비해서는 훨씬 저렴하네요. 아무튼 그래서 RDS 예약 인스턴스를 구매해봤어요 !! 예약을 .. 더보기
Lambda로 Slack에 메세지 작성하기 Lambda에 대해서 관심이 생겼서일단 간단하게 Slack에 메세지를 작성하는 것을 구현해봤어요. 좋은 문서가 있어서 이걸 그대로 따라하면 되는데요. AWS Lambda와 Slack을 이용한 DevOps Chatroom 구현하기https://aws.amazon.com/ko/blogs/korea/slack-devops-with-aws-lambda-and-eb/ 위 웹 페이지에 나온 것 처럼 Beanstalk를 활용해도 되지만저는 기존에 운영하는 EC2 인스턴스가 존재하기 때문에 이를 활용해봤어요. 또 다른 참고 문서로는 AWS Lambda와 Slack을 이용한 DevOps Chatroom 구현하기https://aws.amazon.com/ko/blogs/korea/new-slack-integration-bl.. 더보기
AWS Certificate - CF / ELB 연계 HTTP --> HTTPS 요걸 하고 싶었어요 !! AWS에서 말이죠. 하는 방법은 AWS Certificate를 이용하는 건데요.정말 자세하게 나온 문서가 있어요. 링크는 아래와 같습니다. 신규 AWS Certificate Manager – 무료 SSL/TLS 인증 서비스 제공https://aws.amazon.com/ko/blogs/korea/new-aws-certificate-manager-deploy-ssltls-based-apps-on-aws/ 위에서 다 잘 나와있는데요. 몇 가지만 추가로 작성해둡니다. 1. AWS Certificate를 생성하고 ELB랑 연계하는 방법입니다. 일단 EC2로 가셔서 Load balancer 메뉴를 클릭합니다.그리고 아래 그림을 참고해서 선택합니다. Edit를 선택.. 더보기
django to s3 : certificate error hostname Django 에서 사용자가 업로드하는 파일을 S3에 저장하도록 만들어야 하는 경우가 있습니다. 저는 django-storages 라는 것을 사용하고 있고요. django-storages documentation : http://django-storages.readthedocs.io/en/latest/index.html django-storages package : https://pypi.python.org/pypi/django-storages django-storages git : https://github.com/jschneier/django-storages 사용하다 보면 아래와 같은 에러를 만날 수 있습니다. ㅠㅠㅠ CertificateError: hostname 블라블라 하는 에러인데요. setti.. 더보기