반응형

전체 글 110

EKS란? EKS Cluster Architecture

Kubernetes란? EKS란?Kubernetes란 컨테이너화 된 애플리케이션을 관리하고 운영하기 위한 오픈 소스 플랫폼입니다.Kubernetes는 Cluster의 상태를 관리하고 조정하는 Control Plane과 실제 컨테이너 애플리케이션이 실행되는 영역인 Data Plane(Worker Node)으로 구성됩니다.EKS(Elastic Kubernetes Service)는 Kubernetes의 Control Plane과 Worker Node들을 설치, 운영 및 유지 관리하지 않아도 되는 Managed Kubernetes 서비스입니다.EKS Cluster ArchitectureEKS Cluster는 Control Plane과 Control Plane에 의해 관리되는 Node(Data Plane)들로 구..

📂 AWS/EKS 2025.03.09

[Python] PEP8에서 권장하는 import 순서와 isort 사용법

Python 코드를 작성할 때 여러 라이브러리를 import 하게 됩니다.특히 여러 사람이 함께 작업하는 경우, 일관된 import 규칙을 따르면 코드의 가독성과 유지보수성이 높아지고, 불필요한 git 변경 사항도 줄일 수 있습니다.이 글에서는 Python 스타일 가이드인 PEP 8에서 권장하는 import 규칙을 살펴보고, 이를 자동으로 정리해 주는 도구인 isort에 대해 알아보겠습니다.Python Import 순서 Best PracticePEP 8에서는 import 문을 다음과 같은 방식으로 정리할 것을 권장합니다.# 1. Standard Library(표준 라이브러리)import osimport sysimport json# 2. Third-party Library(서드파티 라이브러리)import ..

[AWS] Networking Specialty #3 VPC Endpoint와 PrivateLink

VPC Endpoint란?VPC Endpoint란 IGW, VPN, NAT, Proxy를 사용하지 않고 AWS에서 호스팅되는 서비스(AWS 서비스, Virtual appliance, 3rd party SaaS, VPC Resource 등)에 프라이빗하게 연결하는 서비스입니다.일반적으로 AWS에서 호스팅 되는 서비스에 접근하기 위해서는 Internet Gateway를 경유해야합니다.이때, 같은 Region 내에 존재하는 AWS에 액세스하는 경우, Internet Gateway를 경유하더라도 트래픽이 AWS 네트워크를 벗어나지는 않습니다.즉, 인터넷 트래픽 비용이 발생하지 않습니다.VPC Endpoint를 통해 전달되는 트래픽은 Amazon 네트워크를 벗어나지 않습니다.VPC Endpoint는 여러가지 타입..

[AWS] Networking Specialty #1 VPC 기초와 심화

VPC(Virtual Private Cloud)란?VPC(Virtual Private Cloud)란 AWS 내에 논리적으로 격리된 사용자 전용 가상 네트워크입니다.VPC는 사용자가 지정한 IP 주소 범위를 사용하고, VPC의 IP 주소는 CIDR로 표현되며 RFC 1918에 명시된 프라이빗 IP 대역 사용을 권장합니다.VPC의 IP 주소로 공인 IP CIDR 블록을 사용할 수 있으나, AWS는 VPC CIDR 블록의 IP 주소를 절대로 인터넷에 직접 노출하지 않습니다.그렇기 때문에 VPC의 CIDR 블록이 공인IP 대역이더라도 인터넷과 직접 통신은 불가능합니다.각 VPC 간에는 IP 대역을 겹치지 않게 사용하는 것이 좋습니다.VPC는 IPv4에 대해 5개의 IP 대역(Primary 1개, Secondar..

[AWS] Developer Associate #12 Lambda

Serverless(서버리스)란?Serverless(서버리스)는 개발자가 서버를 직접 관리하지 않고 애플리케이션을 구축하고 실행할 수 있는 개발 모델입니다.서버리스는 서버가 없음을 의미하는 것이 아니라 개발자가 관리할 서버가 없다는 의미로 개발자에게 서버가 보이지 않는다는 개발자 경험을 의미합니다.개발자는 서버리스 서비스를 사용하면 인프라 관리에서 벗어나 비즈니스 로직과 코드 작성에만 집중할 수 있습니다.서버리스는 초기에 FaaS(Function as a Service)만을 의미했지만 현재는 사용자가 인프라를 지정하거나 관리하지 않는 모든 서비스를 의미합니다.AWS는 다양한 서버리스 서비스(Lambda, DynamoDB, API Gateway, S3, SQS, SNS, Cognito등)를 제공합니다.AW..

[AWS] Developer Associate #11 DNS(Route53)

DNS(Domain Name System)란?Domain Name(도메인 이름)은 사용자가 쉽게 웹 사이트나 온라인 서비스를 찾을 수 있도록 만든 이름으로, 숫자로 된 IP 주소 대신 기억하기 쉬운 문자열을 사용하여 인터넷에서 리소스를 식별할 수 있게 합니다DNS(Domain Name System)란 www.example.com과 같이 사람이 읽을수 있는 주소(도메인)을 인터넷 주소(IP) 주소로 변환하는 시스템입니다.Domain Registrar는 사용자가 인터넷에서 도메인 이름을 등록할 수 있도록 도와주는 서비스 제공자입니다.Name Server는 도메인 이름과 해당 도메인의 IP 주소를 매칭하는 정보를 저장하고 사용자가 쿼리한 도메인 이름을 IP 주소로 변환하는 역할을 합니다.Zone file은 특..

[AWS] Developer Associate #10 IaC(CloudFormation)

IaC란?Infrastructure as code (IaC)는 수동 프로세스 및 설정 대신 코드를 사용하여 인프라를 생성하고 관리하는 방식입니다.코드와 VCS를 활용해 인프라의 버전을 관리할 수 있으며, 이를 통해 변경 사항을 쉽게 추적하고 이전 상태로 신속하게 롤백할 수 있습니다.수동 인프라 관리는 시간이 오래 걸리고 휴먼 에러가 발생하여 일관성을 유지하기 어려우나, 코드로 인프라를 관리하면 배포를 자동화하고 동일한 환경을 반복적으로 재현할 수 있기 때문에 일관성을 유지할 수 있습니다.AWS는 IaC 서비스로 CloudFormation을 제공합니다.CloudFormationCloudFormation은 인프라를 코드로 정의하여 AWS 리소스를 자동으로 생성, 관리, 업데이트하는 서비스입니다.Templat..

[AWS] Developer Associate #9 모니터링(CloudWatch, X-Ray)

모니터링이란?모니터링이란 시스템이나 애플리케이션의 상태와 성능을 관찰하고 분석하는 과정으로 이를 통해 문제를 사전에 감지하고, 성능 및 안정성을 유지할 수 있습니다.AWS는 CloudWatch, X-Ray, CloudTrail 등을 포함한 다양한 모니터링 서비스를 제공합니다.CloudWatch란?CloudWatch는 시스템의 Metric, Log, Event를 수집하여 Alarm를 설정하고 Dashboard를 통해 시스템 상태를 실시간으로 모니터링하고 관리하는 서비스입니다.CloudWatch는 AWS, On-Premise에 상관 없이 리소스와 애플리케이션을 모니터링 할 수 있습니다.CloudWatch는 Internet Monitoring, Real User Monitoring과 같은 다양한 서비스를 제공..

[AWS] Developer Associate #8 메세징(SQS, SNS)

메세징이란?어플리케이션의 통신 방식에는 크게 Synchronous communication(동기 통신)과 Asynchronous communication(비동기 통신)이 있습니다.동기 통신은 요청을 보낸 후 응답을 기다리는 방식이고 비동기 통신은 요청을 보낸 후 응답을 기다리지 않고 다른 작업을 수행하는 방식입니다.동기 통신은 응답을 기다리는 동안 리소스를 점유하기 때문에 하나의 서비스가 느려지면 다른 서비스도 연쇄적으로 영향을 받게 되는 문제가 있습니다. 이런 경우 비동기 통신으로 애플리케이션 간의 결합도를 낮추는 것이 좋습니다.메세징은 비동기 통신을 구현하는 주요 방법 중 하나입니다.대표적인 메세징 패턴으로 Queue model과와 Pub/Sub model이 있습니다.AWS는 Messing Queue..

[AWS] Developer Associate #7 CloudFront

CDN이란?CDN(Content Delivery Network)은 사용자와 물리적으로 가까운 곳에 캐시 서버를 운영하여 컨텐츠를 빠르게 전송하는 캐싱 기술입니다.CDN은 클라이언트와 서버 간에 중개 서버(intermediary servers)를 두어 latency를 줄이고 통신 과정에서 delay를 줄이는 것이 목적입니다.CDN을 사용하면 사용자는 지리적으로 가까운 CDN 서버에서 저장된 콘텐츠를 제공받게 됩니다.CDN은 데이터 사용량이 많은 애플리케이션의 웹 페이지 로드 속도를 높이는 서버 네트워크로 콘텐츠 전송 네트워크 또는 콘텐츠 배포 네트워크를 의미하기도 합니다.AWS는 CDN 서비스로 CloudFront를 제공합니다.CloudFront란?Cloud Front는 AWS의 CDN 서비스로 Edge ..

반응형