
이슈 내용AWS API Gateway에 Edge-optimized(이하 엣지 최적화) 설정이 되어 있을 때, 임의의 리소스를 HTTP로(HTTPS 아님!) 호출한다고 가정하자.이 경우, 포스트맨으로는 정상적으로 호출이 되지만 curl로는 307 Temporary Redirect가 반환되는 기현상이 발생한다!또한, AWS API Gateway 호출 내역을 봐도 아무것도 찍히지 않는다. 즉, AWS API Gateway가 응답하지 않았음에도 누군가가 중간에 307로 반환하고 있는 것! 왜 포스트맨과 curl의 동작이 다르고, 누가 중간에서 요청을 가로채어 307 응답을 반환하고 있는 것일까?원인 분석원인을 분석해보면 다음과 같다:엣지 최적화가 설정된 AWS API Gateway는 게이트웨이 앞단에 Cloud..
브라우저 상에서 uploadPart 호출에 대한 응답 헤더에 ETag가 넘어오지 않아 completeMultipartUpload를 호출할 수 없는 현상이 있었다. completeMultipartUpload에는 각 UploadPart 별 ETag를 필수로 전달해야하기 때문!나와 같은 문제를 겪는 사람이 이미 aws-sdk 깃허브에 문의를 올려두었었고, 답은 버킷의 CORS 설정에 있었다. s3.uploadPart not returning eTag (or any other data) · Issue #384 · aws/aws-sdk-jsWhen using the s3.uploadPart() function, the return data is empty. There is no error response, but..
스토리지 클래스 확인은 aws s3 ls 명령어로 불가능하므로, aws s3api 명령어를 활용하자. aws s3api list-objects-v2 --bucket ingnoh-test-bucket --prefix ingnohFolder 내 경우에는 폴더 내에 있는 파일들을 검색해야해서 prefix 옵션을 사용하였다. 결과 { "Contents": [ { "Key": "ingnoh/", "LastModified": "수정한 날짜임", "ETag": "\"ETag 위치임\"", "Size": 0, "StorageClass": "STANDARD" }, { "Key": "ingnoh/it.png", "LastModified": "수정한 날짜임", "ETag": "\"ETag 위치임\"", "Size": 123..

참고 AWS CodeBuild 문제 해결 - AWS CodeBuild 를 지정한 경우runtime-versions섹션을 참조하고 Ubuntu 표준 이미지 2.0 이상 또는 Amazon Linux 2 (AL2) 표준 이미지 1.0 이상 외의 이미지를 사용하는 경우, 빌드에서 경고가 발생합니다.”Skipping install of run docs.aws.amazon.com [Container] 2022/03/21 01:19:00 Running command docker build -t $REPO_URI:latest . Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running? CodeBuild..
macOS에서 AWS CLI 버전 2 설치, 업데이트 및 제거 - AWS Command Line Interface 설치 관리자의 아무 위치에서나 Cmd+L을 눌러 설치에 대한 디버그 로그를 볼 수 있습니다. 이렇게 하면 로그를 필터링하고 저장할 수 있는 로그 창이 열립니다. 로그 파일도 /var/log/install.log에 자 docs.aws.amazon.com [~] curl "https://awscli.amazonaws.com/AWSCLIV2.pkg" -o "AWSCLIV2.pkg" [~] sudo installer -pkg AWSCLIV2.pkg -target / chime의 create media capture pipeline을 사용하려는데, aws cli에서 해당 명령이 자꾸 나오지 않는 이슈..
CodeArtifact 트와 함께 npm 구성 및 사용 - CodeArtifact 레지스트리 URL은 슬래시 (/) 로 끝나야 합니다. 그렇지 않으면 리포지토리에 연결할 수 있습니다. docs.aws.amazon.com 부서에서 운영하는 aws codeartifact 사설 npm repository의 리소스에 접근하기 위해서는 Dockerfile에 aws cli를 설치하고, aws configure를 하는 작업을 진행할 수 있다. 그러나 이 경우 다음과 같은 문제가 발생할 수 있다: aws credential이 컨테이너 내부에 남게 된다. 또는 Dockerfile에서 aws 명령어를 사용하기 위해 ACCESS_KEY_ID 또는 SECRET_ACCESS_KEY를 컨테이너에 넘겨주어야 한다. 특히 두 번째의..
chime meeting은 us-east-1에 호스팅된다. media region 설정과는 관계 없다! 때문에 eventbridge 역시 us-east-1에서 생성해야 이벤트를 수신할 수 있다. aws cli를 기준으로 aws chime create-meeting을 통해 MeetingStarted 이벤트를 수신할 수 있다. aws cli를 기준으로 aws chime delete-meeting --meeting-id [meeting_id]를 통해 MeetingEnded 이벤트를 수신할 수 있다.
참고 : 링크 인스턴스의 트래픽이 외부로 나가기 위해 라우팅 테이블을 참조하고, IGW로 트래픽이 흐른다. VPC 내부의 통신은 사설 IP만을 사용하므로, IGW와 인스턴스의 통신은(인스턴스에 공인IP가 있음에도) 출발지 필드에 사설 IP를 사용한다. IGW는 해당 트래픽을 외부로 포워딩하며 출발지 필드를 인스턴스의 공인 IP로 변경해준다. (때문에 인스턴스에 공인IP가 없다면 외부와 통신이 불가능하다) 즉, IGW의 역할은 1. 라우팅 테이블에 라우팅 대상을 제공 / 2. NAT 역할을 수행 이 된다. 상세 인스턴스에서 ping 8.8.8.8 등을 통해 외부로 접근을 시도한다. 라우팅 테이블의 0.0.0.0/0에 의해 VPC 네트워크 대역 이외의 트래픽은 모두 IGW로 포워딩된다. 이 때, IGW와 인..
- Total
- Today
- Yesterday
- Spring Cloud Config
- shell
- RancherDesktop
- Puppeteer
- kotlin
- Database
- terraform
- Java
- pgloader
- Node.js
- mysql
- etc
- JPA
- hashicorp
- IntelliJ
- AWS IoT
- Gradle
- Docker
- jQuery
- react
- javascript
- Vault
- spring boot
- Git
- eureka
- AWS
- 코딩테스트
- postgresql
- JEST
- Linux
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |