AWS & GCP
-
[GCP] GKE 인그레스와 cloud Load balancingAWS & GCP 2025. 3. 31. 23:39
GKE에서 인그레스를 세팅하고 배포하면 자동으로 cloud load balancing 서비스를 전개합니다. 여기서 ingress나 service에 어노테이션을 추가하여 cloud load balancing 서비스의 옵션을 설정하거나 정상 실행을 하려면 꼭 있어야 하는 옵션에 대해 설명합니다.설정다음과 같이 values, service, ingress가 세팅이 되어있고 배포를 했다고 가정합니다.# Default values for mario.# This is a YAML-formatted file.# Declare variables to be passed into your templates.replicaCount: 2resources: limits: cpu: 1000m memory: 4G..
-
[GCP] GKE에서 인바운드를 허용하도록 구성하기AWS & GCP 2025. 3. 30. 19:42
개요일반적으로 클러스터를 private으로 구성한 다음, 외부에서 트래픽을 허용하도록 서비스를 구성합니다. 이 때, 외부에서 어떻게 내부로 트래픽을 허용할 수 있는지를 설명합니다.NodePort는 주로 클러스터 내부적인 테스트나 디버깅 목적으로 사용되며 Private 클러스터에서 직접적인 외부 접근을 허용하는 데는 적합하지 않습니다. 여기선 service 타입을 ClusterIP + ingress 와 service 타입을 loadbalancer로 설정하는 두 가지에 대해 설명합니다.service 타입 ClusterIP + ingress 로 구성GKE에서 외부 클라이언트에게 대시보드를 제공하는 서비스를 구성하기 위해서는 Service, Ingress, 그리고 GCP의 부하분산 서비스를 설정해야 합니다. 이..
-
[GCP] vpc, subnet, 방화벽 설명 및 생성해보기AWS & GCP 2025. 3. 30. 15:01
VPCVPC 네트워크 예시Subnet1은 us-west1 리전에서 10.240.0.0/24로 정의됩니다.us-west1-a 영역의 두 개 VM 인스턴스가 이 서브넷에 있습니다. 두 개의 IP 주소는 모두 subnet1의 가용 주소 범위에 속합니다.Subnet2는 us-east1 리전에서 192.168.1.0/24로 정의됩니다.us-east1-b 영역의 두 개 VM 인스턴스가 이 서브넷에 있습니다. 두 개의 IP 주소는 모두 subnet2의 가용 주소 범위에 속합니다.Subnet3도 us-east1 리전에서 10.2.0.0/16으로 정의됩니다.us-east1-b 영역의 VM 인스턴스 하나와 us-east1-c 영역의 두 번째 인스턴스는 각각 subnet3에 있으며 사용 가능한 범위에서 IP 주소를 수신합니..
-
[GCP] 워크로드 아이덴티티 제휴 (Workload Identity Federation)AWS & GCP 2022. 2. 1. 03:43
GCP Workload Identity Federation 이란? 외부 어플리케이션에서 GCP의 리소스를 접근하기 위해선 보통 서비스 계정을 발급 받고 해당 계정에 권한(IAM)을 준 뒤, 물리적인 key file을 외부 어플리케이션에 전달해야 합니다. 여기서 문제는 전달한 key file은 만료 시간이 없거나 엄청 길다는 것입니다. 또한 해당 키가 어디에 저장되는지 보장할 수도 없고 누가 접근하는지도 모릅니다. 이를 막기 위해선 해당 키의 만료시간을 짧게 두는 방법밖에 없는데 이럴 때마다 물리적인 파일을 전달해야 하므로 현실성이 떨어지는 방안입니다. 이런한 문제는 워크로드 아이덴티티 제휴 (workload identity federation)를 사용하면 해결할 수 있습니다. 이후 ID 제휴 서비스라 함..
-
[AWS] 람다 레이어(Lambda Layer)란?AWS & GCP 2019. 1. 27. 16:04
특정 패키지 또는 라이브러리를 여러 람다 함수에서 공유하여 사용하는 경우가 자주 있습니다. 이러한 공유되는 패키지는 비즈니스 로직의 구현을 간소화하기 위해 추가하는 사용자 정의 코드이거나, 하나 이상의 함수가 사용하는 코드이거나, 표준 라이브러리일 경우가 많습니다. 람다 레이어의 출시 이전에는 공유되는 패키지와 해당 패키지를 사용하여 실제 동작을 원하는 코드를 패키징하여 람다에 배포해왔습니다. 이러면 패키징의 사이즈가 커진다는 점과 다른 람다함수에서 해당 공유 패키지를 사용할 수 없다는 단점이 있었습니다. 람다 레이어는 이러한 불편한 점을 해소하기 위해 나왔습니다. 공통적으로 사용할 패키지 또는 라이브러리를 압축 파일에 담아 하나의 람다 레이어로 업로드한 다음, 사용자는 함수 코드를 변경할 필요 없이, ..
-
[AWS] 람다(Lambda)란?AWS & GCP 2019. 1. 27. 15:28
AWS람다를 찾아보면 서버리스(serverless) 라는 단어를 볼 수 있습니다. 처음 접했을 때 서버가 없는데 어떻게 요청을 받고 실행할 지 햇갈렸는데 여기서 서버리스는 내가 요청받고 처리하는 서버가 없는 것을 뜻합니다. 한 마디로 내 서버가 필요없이 AWS 서버가 알아서 처리해준다는 것입니다. 간략하게 람다를 사용하는 목적은 서버에 대한 걱정 없이 코드를 실행하고 사용한 컴퓨팅 시간에 대해서만 비용을 지불합니다. 아래에서 좀 더 자세하게 설명하겠습니다.AWS Lambda 란? 서버를 프로비저닝하거나 관리할 필요 없이 코드를 실행모든 유형의 애플리케이션이나 백엔드 서비스에 대한 코드를 별도의 관리 없이 실행 가능코드를 업로드하면 Lambda에서 높은 가용성으로 코드를 실행 및 확장하는 데 필요한 부분을..
-
[AWS-EC2] 리눅스, 맥 터미널로 EC2 Instance 접속하기AWS & GCP 2016. 9. 23. 16:53
$ chmod 400 인스턴스키.pem #ssh -i 인스턴스키.pem [리눅스계열에 맞는 사용자이름]@publicIP 또는 publicDNS $ ssh -i 인스턴스키.pem ubuntu@100.100.100.1리눅스계열에 맞는 사용자 이름 목록Amazon Linux AMI의 경우 사용자 이름은 ec2-userRHEL5 AMI의 경우 사용자 이름은 root 또는 ec2-userUbuntu AMI의 경우 사용자 이름은 ubuntuFedora AMI의 경우 사용자 이름은 fedora 또는 ec2-userSUSE Linux의 경우 사용자 이름은 root 또는 ec2-user 만약 리눅스계열에 맞지 않은 사용자이름으로 접속을 시도할 시 Permission denied (publickey) 에러가 납니다.