본문 바로가기

전체 글33

네트워크 영역에서의 NAT와 AWS NAT Gateway: 2편 AWS NAT Gateway https://docs.aws.amazon.com/ko_kr/vpc/latest/userguide/vpc-nat-gateway.html NAT 게이트웨이 - Amazon Virtual Private Cloud 보조 IPv4 주소는 선택 사항이며 NAT 게이트웨이를 사용하는 워크로드가 단일 대상(동일한 대상 IP, 대상 포트 및 프로토콜)에 대한 동시 연결 55,000개를 초과하는 경우 지정하거나 할당해야 합니다 docs.aws.amazon.com AWS NAT Gateway는 AWS 클라우드 환경에서 NAT 서비스를 제공해주는 게이트웨이입니다. 일반적으로 게이트웨이는 외부 인터넷과 연결해주는 엔드포인트를 지칭하곤 하는데요. AWS NAT Gateway는 private subn.. 2023. 6. 20.
네트워크 영역에서의 NAT와 AWS NAT Gateway: 1편 클라우드 환경에서 인프라를 프로비저닝 할 때, 처음 해보면 어렵고 헷갈리는 개념이 있는데, 바로 NAT Gateway입니다. 사람마다 다를 수 있겠지만 초심자 입장에서 이 개념이 어려운 이유는 크게 두 가지입니다. private, public ip(private, public subnet)에 대한 이해 부족 NAT 기술에 대한 이해 부족 개인적으로 어려웠던 부분을 어떻게 이해했는지 소개하며 기술의 배경부터 원리, 클라우드 환경에서의 NAT Gateway 개념까지 소개해보겠습니다. NAT가 무엇이고 왜 필요한가? NAT란 Network Address Translation의 약자로 네트워크 주소 변환을 의미합니다. RFC2663에 따르면 NAT는 다음과 같습니다. Network Address Translat.. 2023. 6. 16.
Dataverse Community Meeting 2023: Sharing data for future generation 1편 Dataverse란? https://dataverse.org/ The Dataverse Project - Dataverse.org dataverse.org Dataverse는 하버드 대학교 IQSS에서 시작된 프로젝트로 데이터를 저장, 공유, 활용하기 위해서 이용할 수 있는 오픈 소스 데이터 플랫폼 프로젝트입니다. Dataverse 프로젝트를 이용해서 사용자들은 자신만의 데이터 관리 시스템을 구축하고 활용할 수 있습니다. 현재 전 세계적으로 99개의 지역, 단체에서 구축하여 사용하고 있는 것으로 알려져 있습니다. Dataverse와 비슷한 프로젝트로는 영국 정부에서 지원하는 CKAN 등이 있습니다. Dataverse Community Meeting Dataverse는 하버드 대학교 IQSS에서 주도하는 .. 2023. 6. 6.
[JPA] 컴파일시에는 발견할 수 없는 @Enumerated와 @Embeddable 오류 문제 상황 JPA 환경에서 Enum 타입에 실수로 @Embeddable 또는 @Embedded Annotation을 적용했을 때 생기는 오류에 대해서 알아보겠습니다. 이 문제는 @Enumerated가 적용된 Enum에 @Embeddable이나 @Embedded를 사용하기 때문에 발생합니다. Java의 Enum과 JPA에서의 Enum Java에는 Enum 타입이 있고 이를 이용해서 더 명시적이고 의미론적인 코드를 짤 수 있습니다. 예를 들어 다음과 같이 활용할 수 있습니다. Enum을 적용하여 코드를 개선하는 예제 먼저 단순하게 String을 이용하여 멤버십 레벨을 다루는 코드입니다. package com.example.EnumTest; import lombok.*; import javax.persiste.. 2023. 6. 1.
[Python] 프로그래머스: 광물 캐기 https://school.programmers.co.kr/learn/courses/30/lessons/172927 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 해결 방법 이 문제의 경우 DFS, BFS로 풀 수도 있지만, 그리디 알고리즘으로 푸는 것이 최선이라고 생각합니다. 먼저 5개가 한 단위가 되기 때문에, 5개씩 끊고 다이아몬드, 철, 돌 곡갱이를 사용했을 때 피로도를 계산해놓으면 돌 곡갱이를 사용했을 때를 기준으로 내림차순 정렬하면 최선의 경우의 수를 찾을 수 있습니다. 이렇게 해결할 수 있는 이유는 돌, 철, 다이아몬드를 비교했을 때 효율이 .. 2023. 3. 28.
클라우드 네이티브를 위한 쿠버네티스 실전 프로젝트 p.92 오류 해결 https://github.com/dybooksIT/k8s-aws-book GitHub - dybooksIT/k8s-aws-book: 동양북스 저장소 동양북스 저장소. Contribute to dybooksIT/k8s-aws-book development by creating an account on GitHub. github.com p.92 전까지 잘 따라오셨다면 백엔드 애플리케이션 배포에는 성공하셨을겁니다. 그 후에 프론트엔드 애플리케이션을 빌드하고 배포해야 하는데, 빌드하는 데 많은 시행착오를 겪어서 이를 해결할 수 있게 해결 과정을 공유하고자 합니다. 실패 원인 Python version node.js version 먼저 의존하고 있는 Python 버전이 중요한데요. Python 버전이 중요한 이.. 2023. 3. 3.
클라우드 네이티브를 위한 쿠버네티스 실전 프로젝트 p.78 오류 해결 https://github.com/dybooksIT/k8s-aws-book GitHub - dybooksIT/k8s-aws-book: 동양북스 저장소 동양북스 저장소. Contribute to dybooksIT/k8s-aws-book development by creating an account on GitHub. github.com 클라우드 네이티브를 위한 쿠버네티스 실전 프로젝트를 공부하던 중 docker image build에 실패해 관련 오류를 해결하다 다른 분들께 도움이 될 수 있도록 해결 과정을 공유하고자 합니다. p.78 전까지 잘 따라오셨다면 spring boot 프로젝트를 .jar 파일로 빌드하셨을겁니다. 그러면 이 jar 파일을 이용해서 docker image build를 할 차례입니다.. 2023. 3. 1.
[Python] 프로그래머스: 호텔 대실 https://school.programmers.co.kr/learn/courses/30/lessons/155651 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 이 문제는 두 가지로 풀이 가능합니다. 1. Python의 datetime과 같은 시간 관련 모듈을 이용해서 푸는 것 2. 모든 시간을 분으로 환산하여 table을 만든 다음, 시작 시간과 종료 시간을 기록하고 부분합으로 푸는 것 제한 사항에서 명시하는 범위가 작기 때문에 어느 쪽으로도 풀이가 가능합니다. datetime과 같은 시간 관련 모듈을 이용하여 정석적으로 풀고 싶은 경우 첫 번째 풀이.. 2023. 2. 6.