AWS 24

『RedShift』 Amaznon Redshift란?

Amazon Redshift란? Amazon Redshift는 데이터 웨어하우스로 OLAP(데이터 분석)에 특화된 Database입니다. 기존의 RDS와 같은 OLTP방식의 데이터 베이스는 트랜잭션에 특화되어 있는 반면, Redshift는 트랜잭션 작업은 느리다. 즉 OLAP 방식의 DB과 OLTP방식의 DB는 서로의 기능을 제공하지만 무척 느리다. OLAP란? OnLine Analytical Processing의 약어로 데이터 분석에 특화된 방식이다. 대표적으로 Redshift가 있다. 아래의 3가지가 OLTP에서 데이터 분석을 사용하지 않는 이유이다. 복잡한 JOIN 연산을 여러 테이블에 수행해야 하므로 분석 질의에 컴퓨팅 자원이 많이 소모 읽기 작업이 많은 분석 질의는 인덱스가 더 많아야 유리한데 ..

AWS/DB 2022.07.11

『KMS』KMS를 이용한 파일 암호화

KMS란? KMS는 Key Management Service이다. 즉 암호화 키를 관리해주는 서비스라고 생각하면 된다. 암호화,복호화 하는법 권한을 제공한 KMS키 ID를 복사한다음 다음과 같이 입력한다. aws kms encrypt \ --key-id \ --plaintext fileb:// \ --output text \ --query CiphertextBlob | base64 \ --decode > 이렇게하면 OutPut_File_Name부분에 넣은 이름으로 암호화가 진행된다. 아래 명령어를 사용하여 다시 복호화가 가능하다. aws kms decrypt \ --ciphertext-blob fileb:// \ --key-id \ --output text \ --query Plaintext | base..

AWS/KMS 2022.06.23

『EKS』EKS기반 인프라 및 CICD구성 실습 - 4

아키텍쳐 이전 포스팅을 보고 설정을 해야한다. CodeBuild 및 ECR aws에서 codebuild로 들어간다. 이제 처음에 다운받았던 node.js파일로 돌아가서 Dockerfile을 열어보자 # Docker Base Image # 기본이 되는 이미지 FROM node:16.15 # Use Command # 사용하는 명령어 RUN mkdir -p /apiapp # WORKDIR mean fixed and working dir # WORKDIR의 의미는 작업하는 디렉토리를 지정하는 것. WORKDIR /apiapp # copy files to /apiapp # 현재 디렉토리에 있는 파일을 /apiapp으로 복사한다. ADD . /apiapp # Use Command # 사용하는 명령어 RUN npm ..

『EKS』EKS기반 인프라 및 CICD구성 실습 - 3

아키텍쳐 다시 말하지만 이전 글 안봤으면 꼭 보세요.. 작동이 안되는건 제 오류 일수도 있지만 안보고 오류난건...저도 뭐 어쩔 수가 없습니다. ArgoCD ArgoCD에 대한 내용은 따로 블로그에 서술해두었으니 바로 시작! kubectl create namespace argocd kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml 이렇게하면 ArgoCD가 생성이 된다. 그러나 ArgoCD의 Service가 ClusterIP로 되어있기 때문에 NodePort로 바꿔주고 해당 Port를 나의 localhost와 연결할 생각이다. kubectl edit service ..

『EKS』EKS기반 인프라 및 CICD구성 실습 - 2

아키텍쳐 아직 전 포스트를 읽지 않은 사람은 어서 읽고도록 하자 해당 포스트는 이전 포스트와 이어진다. 반드시 그렇게 하도록 하자 EKS환경 구축 단계 - VPC yaml 작성 및 생성 - EKS Cluster yaml 작성 및 생성 - EKS Cluster에서 LoadBalancer Controller 설치 - ArgoCD생성 및 포트포워딩 VPC yaml 작성 및 생성 Description: This template deploys a VPC, with a pair of public and private subnets spread across two Availability Zones. It deploys an internet gateway, with a default route on the public..

『EKS』EKS기반 인프라 및 CICD구성 실습 - 1

개요 해당 아키텍쳐를 참고하여 구성을 할 예정이다. 이번 글에서는 Node.js SDK를 사용해 DynamoDB에 값을 넣을 수 있도록 해볼 것이다. 방향 및 난이도, 소요시간 난이도는 보면서 따라하면 충분히 따라할 수 있는 정도의 난이도이다. 그러나 시간은 조금 걸릴 수 있다. 첫번째 포스트에서는 애플리케이션을 생성하고 SDK 및 DynamoDB를 생성할 것이다. 두번째 포스트에서는 EKS환경을 구축할 것이다. 세번째 포스트에서는 ArgoCD를 구축할 것이다. 네번째 포스트에서는 Codebuild와 같은 환경을 구축할 것이다. Node.js Application Node.js란? 시작하기 앞서 Node.js에 대한 간단한 설명을 하고 시작하겠다. Node.js는 Chrome을 만든 Google사의 V8..

『EC2』X-Ray란?

AWS X-Ray란? X-Ray는 애플리케이션이 처리하는 요청에 대한 데이터를 수집하는 서비스이다. 데이터를 필터링하고 확인까지 가능하다. 모든 트레이스된 요청에서, 요청 및 응답뿐 아니라 애플리케이션이 다운스트림에 대해 하는 호출에 대해서도 상세한 정보를 확인이 되서 편하다. AWS X-Ray동작방식 SDK를 사용하여 애플리케이션이 UDP 트래픽을 수신 대기하는 Deamon을 통해 JSON세그먼트 문서를 전송한다. 그 다음 X-Ray API에서 JSON을 받고 연결할 다른 클라이언트에게 트래픽을 전송한다. 이 과정을 X-Ray Console에 띄워 트래픽의 현재 상황을 알 수 있다. CLI를 통해서나 다른 SDK에게 전송이 되면 똑같이 Deamon->API-> Console 단계를 거친다. 이럴 경우 ..

AWS/EC2 2022.06.20

『EC2』CloudWatch Agent

Cloudwatch Agent란? Cloudwatch Agent는 EC2인스턴스의 내부 시스템에 대한 지표나 로그를 수집하여 Cloudwatch로 내보낼 수 있다. Cloudwatch Agent는 MIT라이선스에 따른 오픈소스이다. https://github.com/aws/amazon-cloudwatch-agent/ GitHub - aws/amazon-cloudwatch-agent: CloudWatch Agent enables you to collect and export host-level metrics and logs on instance CloudWatch Agent enables you to collect and export host-level metrics and logs on instances..

AWS/EC2 2022.06.20

『Lambda』Lambda 파일 구조 및 이론

AWS Lambda란? AWS Lambda는 Server Less 서비스중 하나이다. Serverless는 Code만 업로드해도 작동이가능하게 해주는 완전관리형태를 지닌 것을 말한다. Server설정에 대한 걱정없이 사용이 가능하여 개발자들로 하여금 서버에 대한 걱정을 덜어준다. AWS Lambda 특징 Code를 작동시키는데 있어서 필요한 모든 파일들은 root아래에 있어야한다. 여기서 말하는 root는 생성하면 바로 보이는 곳이 root이다. 그리고 zip파일을 업로드해도 root이다. 사용할만한 사례 일정 시간마다 여러군데에서 이미지를 다운받고 해당 이미지를 zip로 묶어서 S3로 업로드하는 작업 (단, 이때는 /tmp를 사용 해야한다. 중복되는 파일이 생기면 안되기 때문에 /tmp로 파일을 넣어 ..

AWS/Lambda 2022.06.20

『EC2』EC2 LifeCycle

EC2 LifeCycle이란? EC2 Instance가 생성이 되고, 삭제가 되기까지의 과정들을 말한다. EC2 LifeCycle 위 사진은 AWS 공식 홈페이지에서 제공하는 Instance의 LifeCycle이다. 각각에 대한 설명을 하자면 Pending: Running의 전단계로 AMI를 통해 Instance를 생성중인 상황이다. Running: Instance가 작동하고있는 상황이다. Stopping: 중지 혹은 최대절전모드 전환 준비중인 상황이다. Stopped: 이미 중지가 되어있고 사용이 불가능한 상황이다. Shutting-down: Instance를 종료할 준비중인 상태이다. Terminated: 영구적으로 삭제가 된 상태이고 시작이 불가능하다. 요금 Pending: 비용이 미청구 된다. R..

AWS/EC2 2022.06.20