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-blueprints-for-aws-lambda/
위 웹 페이지에 나와 있는 그림을 참고하시면 내용 이해에 도움이 됩니다.
요 포스팅에서는 간단하게만
(나중에 또 까먹을지도 모르니깐)
기록용으로 남겨봅니다.
1. CloudWatch에서 EC2 인스턴스 CPU 평균 사용량에 대해서 Alarm 생성.
2. Lambda 함수 생성
위 Blueprint를 선택해서 진행하면
함수 코드 자체를 건들 필요는 없어요.
대신 아래 변수 2개는 작성해주셔야합니다.
채널 이름은 slack에 있는 채널 이름을 그냥 작성해주시면 됩니다.
대신 kmsEncryptedHookUrl은 첫 번째 문서를 보고 따라 하셔서 생성하시면 됩니다.
kmsEncryptedHookUrl을 만드는 과정에서 IAM을 활용해야 하는데요.
만드는 사용자에게 권한설정을 잘 해줘야 합니다.
조금 복잡할수 도 있지만..
IAM에 접속해서 Users 탭에서 사용자를 선택합니다.
어떤 사용자를 선택하냐고요? KMS 권한을 가질 사용자요.
없으면 사용자 / 그룹을 하나씩 만들어주셔야합니다.
위 그림에서 Add permissions을 선택하면 아래와 같은 화면을 볼 수 있습니다.
참고해서 선택해주세요.
create policy를 선택한 화면인데요.
여기서 Copy an AWS Managed Policy를 선택해줍니다.
변경된 페이지에서
key를 검색하고
첫 번째 나와있는 AWSKeyManagementServicePowerUser를 선택해줍니다.
Review Policy 화면에서
"kms:Encrypt",
를 추가해줍니다.
다시 아래와 같은 페이지로 돌아와서
그림을 참고해서 Permission을 추가해줍니다.
요 과정만 조금 헷갈리고 나머지는
그냥 버튼 클릭하는데로 CLI 사용하는데로
문서를 따라하시면 됩니다.
결론은 위와 같이 slack에서 메세지를 확인할 수 있습니다.
제가 위에 첨부한 2개 문서를 잘 참고하시고
이번 포스팅 내용을 약간 사용한다면
쉽게 메세지를 slack에 뿌리실 수 있을꺼에요 :)
끝
'클라우드&도커 > AWS,아마존' 카테고리의 다른 글
AWS EC2 Reserved Instance Purchase (0) | 2017.02.26 |
---|---|
jQuery Ajax with x-api-key (0) | 2017.02.12 |
AWS RDS - Reserved Purchases (0) | 2017.01.30 |
Lambda로 Slack에 메세지 작성하기 (0) | 2016.12.08 |
AWS Certificate - CF / ELB 연계 (0) | 2016.12.07 |
AWS MFA 초기화 / 삭제 (0) | 2016.11.24 |
AWS RDS (postgreSQL) connection (0) | 2016.09.02 |
S3 setting : CORS allow (0) | 2016.08.16 |