일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 |
- 몽골여행
- 게임
- codility
- AWS
- pycon
- flask
- 먹방
- 프로젝트오일러
- django
- 우분투
- 알고리즘
- 인디게임
- 퍼즐게임
- Python
- lambda
- 중국맛집
- coursera
- 워킹데드
- certbot
- 블라디보스토크
- Project Euler
- 컴퓨터네트워크
- C#
- 스팀
- API
- FPS
- https
- github
- 그래픽노블
- 파이썬
- Today
- 19
- Total
- 323,616
목록개발/AWS (11)
YUDA't

서론; 카카오 오픈빌더는 현재 OBT라 사용 사례가 그닥 많지 않다. 때문에 오픈빌더 공식 문서와 함께 약간의 삽질이 필요했다. 내가 오픈빌더에서 하고자 했던 건, "사용자가 급식 메뉴를 물어보았을 때 API로 date 값을 넘겨 menu를 받아오는 것"이다. 오픈빌더에서는 스킬이라는 항목을 이용해 API POST 요청(반드시 POST)을 보낸 뒤 응답을 받아올 수 있다. API를 만드는 방법은 다양하나 난 익숙한 AWS Lambda + API Gateway를 택했다. API 제작은 얼마 전 간단한 예시로 포스팅을 올린 적 있다. ([AWS] Lambda 프록시 통합을 사용하여 API Gateway로 간단한 곱셈 API 만들기) 이 글은 AWS Lambda와 API Gateway로 (혹은 다른 방법으로)..

읽지 않아도 되는 서론; 2016년에 Lambda랑 API Gateway로 API 만드는 튜토리얼을 올렸었는데 이제 시간도 좀 지나고 AWS 콘솔 UI도 바뀌어서 업뎃해보고자 한다. 그리고 이번엔 Lambda 프록시 통합으로! Lambda 함수는 Python 3.6으로 작성했으나 워낙 간단해서 무슨 언어로 하든 상관 없다. 빨리빨리 하면 5분 안에 끝낼 수 있다. 0. AWS Lambda 함수 생성 AWS 콘솔의 Lambda 서비스로 가서 '함수 생성'을 누르고 함수를 빨리 생성한다. 아놔 곱셈 API인데 GuguFunction이라 했다. 뭐 어쨌든 Lambda 권한을 가진 role이 없다면 하나 생성한다. 1. Lambda 코드 작성 아래로 스크롤을 내리면 코드를 작성하는 부분이 있다. 여기에 아래 코..
이 포스팅은 AWS 클라우드 실무자 에센셜 교육을 요약한 것입니다. 글로벌 인프라 리전(Region)2개 이상의 가용 영역(AZ)을 호스팅하는 지리 영역을 뜻함리전은 완전히 독립된 엔티티(entity)이며, 한 리전의 리소스는 다른 리전으로 자동 복제되지 않는다. 가용 영역(AZ; Availability Zone)특정 리전 내에 존재하는 데이터 센터들의 모음가용 영역들은 서로 격리되어 있지만 빠르고 지연 시간이 짧은 링크로 연결되어 있다.(장애 처리에 유용)각 가용 영역은 물리적으로 구분된 독립적 인프라에 속한다. 물리적/논리적으로 구분되어 있다.각 영역은 별도의 무정전 전원공급장치, 발전기, 냉각장비, 네트워킹 및 연결수단을 자체적으로 갖추고 있다.모범 사례에 따르면, 다중 AZ에 걸쳐 데이터를 프로비..
이 포스팅은 AWS 클라우드 실무자 에센셜 교육을 요약한 것입니다. 컴퓨팅의 정의 Cloud Computing이란 인터넷을 통해 IT 리소스와 애플리케이션을 온디맨드(*on demand: 수요 중심) 로 제공하는 서비스를 말하며, 요금은 사용한 만큼만 청구된다. 이전엔 이론적으로 추측한 최대 피크를 기반으로 용량을 프로비저닝해야 했다. (*provisioning: 사용자의 요구에 맞게 시스템 자원을 할당, 배치, 배포해 두었다가 필요 시 시스템을 즉시 사용할 수 있는 상태로 미리 준비해 두는 것) 민첩성(Agility) AWS 클라우드로 이전하는 이유 중 하나는 향상된 민첩성(Agility) 속도 물리 데이터센터를 둘 필요 없이 단 몇 분만에 IT 리소스 사용 가능 실험 안전하게 운영 절차를 개발하고 장..
버블정렬, 삽입정렬 등 각 정렬별 실행 시간을 출력하는 Lambda 함수를 API Gateway로 트리거해 가져오는데 이상한 점을 발견했다.시간이 너무 오래 걸렸다.처음엔 내가 코드를 잘못 짠 줄 알고 고치려 했는데 버블정렬 같은 경우는 너무 간단해서 딱히 잘못될 게 없어보였다.무엇보다 똑같은 코드가 로컬에서는 제속도로 돌아가니...문제는 Lambda에 있다고 생각해 구글링을 해봤다. 가장 위에 뜨는 포스팅이 "My Accidental 3–5x Speed Increase of AWS Lambda Functions"여서 읽어봤다.(글이 재밌으니 읽는 것을 추천)포스팅 첫 줄이 이렇다.Allocate to your function as much memory as your wallet can allow.그렇다..
1단계: Route 53 설정 & 2단계: 도메인 등록 AWS 서비스에서 Route 53에 들어가 'Domain registration'을 선택해 'Register Domain' 버튼을 눌러 도메인을 생성한다. 내가 갖고픈 도메인 이름을 검색하고 TLD(Top Level Domain; .com, .org와 같은 최상위 도메인)를 선택하면 그에 따른 가격이 나온다. 난 내 깃헙 아이디를 따라 yuda110.com을 샀다. 대체로 1년에 12달러다. 도메인이 활성화되는 데에는 최대 3일이 걸리지만 대체로 두어 시간 안에 완료된다. 3단계: ACM에서 SSL/TLS 인증서 받기 - HTTPS를 사용하려면 SSL/TLS 인증서가 필요하다.* 전송 계층 보안(Transport Layer Security, TLS,..
Route 53은 AWS 프리티어에 해당하지 않아 고민했는데, 계속 미루다가는 공부하지 못할 것 같아 그냥 도메인을 12달러 주고 샀다.아래의 설명은 Amazon Route 53 시작하기에서 정리/복사한 것이다. 사실 내 글보다는 자습서를 보는 것이 더 나을 테지만 예시가 필요한 사람은 참고하길 바란다. Amazon Route 53 인터넷상의 모든 컴퓨터는 IP 주소라고 하는 숫자를 사용하여 서로 통신한다. 이 IP 주소에는 192.0.2.44와 같은 IPv4 주소와 2001:0db8:85a3:0000:0000:abcd:0001:2345와 같은 IPv6 주소가 있다. 그러나 우리가 해당 웹 사이트로 이동할 때는 이런 긴 숫자를 기억해 입력할 필요가 없다. 그 대신 example.com과 같은 도메인 이름..
AWS EC2(Elastic Compute Cloud)는 확장식 컴퓨팅을 제공하는 클라우드 환경이다. 만들어보자. AWS EC2 항목에 들어간다. 처음 들어가면 Instance나 Security Group 등이 다 비어 있을 것이다. (난 왜 5개..이것저것 하느라 만들었나보다.) 본인이 하고 싶은 OS를 고른다. 프리티어 계정이라면 왼쪽의 'Free tier only'를 체크해주어야 한다. 우분투 14로 하겠노라... 프리티어에게 제공되는 타입은 한정적이다. Security group을 만들어야 하는데....난 이미 있지만 또 만들었다. 저 노란 박스 안의 'Edit security groups'를 타고 들어가자. key pair를 받게 되는데, 이름을 적당히 지어주고 나서 오른쪽의 'Download ..
나는 facebook의 휴나지움(연세대 공학원 학생식당) 페이지에서 메뉴를 긁어왔는데 그냥 def sum(x, y): result = x + y return result 이런 함수를 만들어도 괜찮다. 일단은 API를 만들어보고 이해하기 위함이니까... 내 코드는 이렇다. _hunasiu,_menu()는 당연히 휴나지움의 메뉴를 str 형식으로 긁어오는 함수다. 중요한 것은 lambda_handler()다. 이건 함수명도 굉장히 중요한데, [AWS] API Gateway로 API를 만들어보자 2 에서 미리 말한 바 있지만, AWS Lambda에서 아래와 같은 식으로 handler를 정의해야 하기 때문이다. 어쨌든 저렇게 하고 이를 zip 파일로 만들어 업로드하면 된다. ** pip을 사용해 기본 라이브러리..
API Gateway에서 API의 구조를 갖췄다. 그러면 이제 API가 호출될 때 가져올 데이터를 실행하는 함수가 필요하다. 이때 AWS Lambda를 사용한다.(프로그래밍 언어로 사용되는 lambda와는 다르다.) AWS Console에서 Lambda 페이지에 들어간다. Get Started Now!! 이런 복잡한 화면이 나오면 침착하게 왼쪽 상단에서 본인이 사용할 언어를 선택한다. Node.js 4.3과 Python 2.7을 사용할 수 있다.(내 기억엔 java도 있었는데...안 보인다.) 다 좋은데 Python3을 쓰지 못한다는 엿같은 단점이 있다. 무튼 Python을 선택하고 오른쪽 아래 보이는 hello-world-python을 선택한다. 이런 화면이 뜰 것이다. 우린 API Gateway로 A..
Amazon API Gateway를 이용해 API를 만들어보자. 맨 처음 써봤을 때는 헷갈렸는데 한 번 익히고 나면 그다지 어렵지 않다. **본 문서는 AWS Lambda를 기반으로 한다. AWS 콘솔에서 Amazon API Gateway 페이지로 들어간다. 아무것도 만들지 않았다면 아래와 같은 화면이 나타날 것이다. 그럼 Start! New API를 선택하자. 혹시 Swagger를 사용할 줄 안다면 Swagger로! Swagger는 API document라고 할 수 있는데, 갖춰진 틀만 따르면 손쉽게 API를 만들 수 있다. 여러 명이서 API 작업을 할 경우, Swagger를 통해 버전 관리를 하면 편하다. 나는 페이스북에서 학생식당 메뉴를 얻어올 API를 만들 것이기 때문에 API이름을 YumYum..