
키나 환경변수를 관리하는 툴은 정말 많다. AWS에서 자체적으로 제공하는 경우도 있고, GitHub에서 심어줄 수도 있고 다양한 방법이 있다. 가장 최악의 경우는 Application.yaml 파일에 실수로 그냥 실어버리고 GitHub에 배포하는 경우다. (OpenAI의 경우, 이 부분을 어떻게 캐치해서 강제로 키를 새로 발급해버린다.) 개인적으로 이것저것 써봤을 때, 가장 맘에 들었던게 DotEnv다. 간단하게 사용법을 안내하자면, src아래에 .env 파일에 키를 저장해놓고, 쓰면 되고 .gitignore에 등록해놓고 쓰면 된다. 파일을 만들어놓고 gitignore에 설정해놓으면, 다시 볼일이 없어서 관리하기 편했기 때문에 사용하기 편했다. 이제 설정하는 법을 알아보자. build.gradle.kts..

단일 AWS의 리소스를 사용할 때는 몰랐던 것들이 있다. (루트 사용자로서 EC2만 하나 덜렁 사용할 때는 다른것들을 고려할 필요가 없었다.) AWS 리소스가 다른 AWS 리소스를 사용하려면, 리소스를 사용할 수 있다는 것을 명시해야 한다는 것이다. 그리고 AWS에서는 루트 사용자로 AWS 리소스 접근을 권장하지 않는다. AWS 사용자 별로 역할을 부여해 AWS 리소스에 대한 권한을 주고 사용하길 권장한다. (실수 방지, 모니터링 등 많은 이유가 있다) 이 두 가지는 IAM(AWS Identity and Access Management)이라는 이름으로 관리된다. 해당 페이지에 진입해보면 생소한 내용이 많은데, 하나씩 알아보자. IAM 이란? AWS Identity and Access Management(..

10월 5일에 쓴 글이다. 아래 통계를 보면 뭔가 이상한걸 느낄 수 있다. 두 달 전에 작성한 글인데, 검색을 통해 들어온게 하나도 없다. 흔한 주제라고해도 이건 좀 이상하다. 그래서 구글 서치콘솔로가서 해당 글을 검색해봤다. URL이 검색 인덱스에 등록되지 않았다. 구글님.... 글 쓴지 두달이나 됐는데 너무한거 아닌가요? 그래서 그동안 미뤄왔던 sitemap을 등록하기로 했다. 구글에서 sitemap을 설명한 내용을 봐보자. https://developers.google.com/search/docs/crawling-indexing/sitemaps/overview?hl=ko 사이트맵은 사이트에 있는 페이지, 동영상 및 기타 파일과 그 관계에 관한 정보를 제공하는 파일입니다. Google과 같은 검색엔진..

이전 글들에서 람다와 람다를 사용하기 위해서 Serverless 프레임워크를 사용해봤다. 이 상태로도 사용할 수 있지만 사용 편의를 위해서 Serverless에서는 더 다양한 기능을 제공한다. 진짜 많은 기능들이 있는데, 내가 사용했던 기능들을 순차적으로 알아보려고 한다. 1. yarn 설정 2. 스테이지 설정 가져와서 쓰기 3. 파일 정보 읽어오기(yaml) 4. 환경변수 설정 5. tag 설정 6. 이미 존재하는 API Gateway 가져와서 사용하기 하나씩 알아보자. 1. yarn 설정 가장 첫 글에서 serverless를 설치하면서 yarn도 같이 설치했었는데, 여기서 사용하기 위해서다. package.json에 yarn설정을 해뒀다. { "name": "serverless-options", "v..

이번엔 serverless에서 제공하는 다양한 기능을 써보려고 한다. 이전 포스팅에서는 너무 한가지만 써봤어서 재미가 없었기 때문에 다양한 기능을 엮어서 엔드 투 엔드로 하나의 세트를 만들어 보려고 한다. 약간의 콘솔 작업이 필요하지만, 차근 차근 진행해보려고 한다. 작업 내용은 이렇다. 1. serverless로 람다, API gateway 생성 후 연동 2. Route 53에서 도메인 발급, 서브도메인 생성 3. 발급받은 서브도메인과 API gateway 연동 4. servless에서 API gateway 재사용하도록 설정 5. 람다와 DDB 연결 정리하면, 발급받은 url로 들어와 api gateway로 들어온 이벤트를 람다에 라우팅해, api gateway의 이벤트 정보들을 ddb에 저장하는데까지..

현재 서비스하는 서버에는 DB에 직접 접근하지 않거나 이벤트 성으로 관리할 것들은 람다로 관리한다. 그러다보니 람다가 계속해서 늘어나는데, 각각의 람다들을 매번 콘솔에서 람다를 관리하기는 꽤나 번거롭다. 이럴 때 여러 serverless 서비스(AWS Lambda의 Event나 function)을 관리하기 위한 도구가 있다. Serverless framework인데, BE 개발만 하던 나에겐 좀 생소해서 가볍게 사용해보면서 사용법을 익혀보려고 한다. Installation 패키지 매니저로 yarn을 사용할 것이다. npm 설치, yarn 설치 sudo apt install npm sudo npm install --global yarn serverless 설치 npm install -g serverless..

해당 에러는 리눅스 우분투 18.04 LTS 버전에서 나타나는 문제입니다. 이 문제는 serverless 프레임워크를 WSL에 설치하면서 있었던 일이다. serverless 프레임워크를 사용하기 위해서는 npm이 필요해서 node도 함께 설치했다. 그래서 npm 명령어를 쓰려고 하니까 $ node -v node: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.28' not found (required by node) 위와 같이 에러가 발생했다. 에러 내용을 확인하면, GLIBC 2.28 버전을 찾을 수 없다. 인데, 이 에러가 나는 이유는 최신 GLIBC 버전은 2.28버전인데 우분투 18버전은 2.27을 쓰기 때문이다. 이 문제를 해결하기 위해서는 세 가지 해..

AWS 관리자가 되면서 AWS 프로필을 왔다갔다할 일이 많이 생겼다. (일단 나는 Windows, Powershell로 작업을 했다) 그래서 아래와 같이 프로필을 여러개를 두고 왔다갔다 했다. 그렇게 이런저런 AWS 관련 설정을 하고 나서(EKS 관련 설정을 할일이 있었다) 다시 개발작업으로 넘어오기 위해서 Intellij를 켜보니 아래와 같은 에러가 발생했다. 00:27:42.899 [main] WARN c.a.i.InstanceMetadataServiceResourceFetcher - Fail to retrieve token com.amazonaws.SdkClientException: Failed to connect to service endpoint: .... Caused by: java.net.S..
- Total
- Today
- Yesterday
- 스프링부트
- 오블완
- ChatGPT
- serverless
- CloudFront
- 람다
- ecs
- elasticsearch
- Kotlin
- Log
- AWS
- S3
- java
- cache
- 인프런
- EKS
- Redis
- terraform
- OpenAI
- CORS
- GIT
- docker
- AWS EC2
- Spring
- lambda
- AOP
- JWT
- 티스토리챌린지
- 후쿠오카
- springboot
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 | 31 |