분류 전체보기 101

Github대신 AWS의 CodeCommit을 사용해 보자 - SSH 인증 방식

개요 중앙 집중화된 소스 관리툴은 에전에도 많았지만 최근 몇년사이 이 부분 defacto는 git으로 통일되고 있는 듯 하다. 요즘은 이러한 git 원격 저장소 역할을 하는 무료/유료의 서비스들이 다양하게 있고 여기서는 AWS의 유료서비스인 CodeCommit에 대해 다루어 보고자 한다. 간단히 github(무상)과 AWS의 CodeCommit에 대해 비교해 보자 구분 GitHub(무상) AWS CodeCommit(유상) 비용 무상 서비스 월 접속 계정 5개, 계정당 요청수 2k까지 무료 그외 유료 편리성 - 상대적 유리 - AWS 서비스와 통합성이 상대적으로 약함 - 상대적 불리 - AWS Code 시리즈와 통합성 강함 보안 암호화 지원 없음 암호화 지원 사실 고객들을 만나 미팅을 하다보면 오픈소스에 ..

GitHub, Code Build 그리고 CodePipeline를 이용한 간단한 배포 실습

개요 이 포스트는 node.js로 작성되어 있는 AWS 한국 리전 홈페이지의 지속적 전달 파이프라인 생성 예제를 spring boot로 변환해 재 구성해서 포스팅하는 글이다. 이 글에서는 git을 통해 소스를 커밋하게 되면 aws의 CodePipeline을 통해 CodeBuild가 컴파일을 완료하게 되고 이를 다시 Elastic Beanstalk에 배포하는 방식이다. 이때, 필요하다면 사용자 승인을 거쳐야만 배포가 되게 할 수도 있다. 다루는 내용 1. GitHub 설정 2. 샘플 앱을 배포할 AWS Elastic Beanstalk 환경 생성 3. GitHub의 소스를 빌드하도록 AWS Code Build 구성 4. AWS CodePipeline을 이용한 소스, 빌드 및 지속적 배포 환경 구성 아키텍처 ..

VPC 간의 연결 방식- VPC Peering, VGW, DGW, TGW 비교

이 페이지는 https://www.megaport.com/blog/aws-vgw-vs-dgw-vs-tgw/ 에 계시된 내용을 한글로 번역 및 이해하기 쉽게 변경되었다. 개요 AWS상에서 가상 사설 네트워크 즉, Virtual Private Cloud(VPC)간의 연결을 위한 방법은 계속해서 진화해 오고 있다. 가장 오래된 방식으로 VGW(Virtual Private Gateway)가 제일 먼저 발표 되었었고 그 다음에 DGW(Direct Connect Gateway)가 2017년에 발표 되었었으며 2018년에는 Transit Gateway(TGW)가 출시되었다. 각각의 기능들은 비용적인 측면과 몇가지 항목에서 기능적 특징들이 있기 때문에 이를 잘 알아보고 선택해서 사용하는 것이 중요하다. 각 기능적 특징..

Cloud Service/AWS 2022.03.01

Route 53과 ALB 연동

개요 이번 포스팅은 Route 53에 임의로 등록한 DNS 도메인에 ALB를 연동해 보는 것이다. ALB는 두개의 서로 다른 서비넷의 웹 서비스를 담당하는 EC2 인스턴스를 로드밸런싱 하도록 설정할 것이다. AWS의 Route 53을 이용한 DNS Name 서비스 등록 절차는 다음과 같다 테스트 시나리오 이 테스트의 시나리오는 아래와 같이 AWS VPC 내에 2개의 서브넷을 만들고 각 서브넷에 httpd 서비스를 담당하는 EC2 인스턴스를 만든 후 ALB로 로드밸런싱이 가능하도록 설정할 것이다. 그리고 이 ALB는 Route53에 임의로 지정한 DNS 명으로 호출할 수 있게 할 것이다. 이 예제에서 나는 sharplee7.com 이라는 개인 domain을 Route 53에 등록할 것이고(2022년 1월 ..

Cloud Service/AWS 2022.02.03

AWS의 DNS 서비스, Route 53

DNS 그리고 Route 53이란? 인터넷 통신을 위해 사용하고 있는 IP는 0~255까지 4 옥텟으로 구성되어 있기 때문에 재 사용을 위해 기억하기 힘들다. 이를 해결하기 위해 숫자로 이루어진 IP를 기억하기 쉬운 이름(e.g. google.com)으로 매핑하여 사용할 수 있게 하는 서비스를 개발했는데 이것이 바로 DNS(Domain Name Service) 서비스이다. AWS의 Route 53은 AWS에서 제공해주는 완전 관리형 DNS 서비스이다. DNS 서버의 기능별 분류 DNS를 통해 서비스를 수행할 경우 DNS 서버가 필요하며 DNS 서버는 DNS Resolver, Root Name Server, TLD Name Server, Authoritative Name Server와 같이 4가지 유형으로..

Cloud Service/AWS 2022.02.02

ELB를 통한 고가용성 및 부하 분산 시스템 구성

ELB(Elastic Load Balancing)이란? ELB(Elastic Load Balancing)는 AWS의 VPC 상에 인스턴스나 서비스들이 단일 구성환경하에서 장애가 발생을 회피하기 위해 구성한 다중 서비스 환경 하에서 부하분산과 로드발란싱을 해주기 위해 사용하는 서비스를 말한다. ELB의 종류 ELB는 ALB(Application Load Balancer), NLB(Network Load Balancer) 그리고 CLB(Classic Load Balancer) 3개의 종류가 존대한다. 그 각각의 기능은 다음과 같다. ALB ALB(Application Load Balancer)는 HTTP나 HTTPS와 같이 웹 어플리케이션에 대한 분산 처리를 제공하는 로드 벨런서이다. NLB NLB(Netw..

Cloud Service/AWS 2022.01.31

VPC에서 NAT Gateway 사용 (인터넷 연결)

개요 VPC와 외부 인터넷 사이에 통신을 위해 Internet gateway를 만들고 퍼블릭 라우팅 테이블에 라우팅 대상을 지정해 Public Subnet내부의 EC2 인스턴스가 통신을 하는 것은 이미 앞서서 구현한 적이 있다. 하지만 대부분의 실 시스템은 보안을 위해 Private Subnet 상에 인스턴스를 구현한다. 이번 포스팅에서 hands on 하는 내용은 앞서 만들었던 vpc , internet gateway, public routing table에 더해 private subnet을 만들고 public subnet상에 NAT gateway를 만들어 외부에서 NAT를 통해 private subnet에 접근하는 방법을 알아 보도록 한다. (이번 포스팅은 반드시 이전 포스팅을 진행 후 실행하기 바란..

Cloud Service/AWS 2022.01.23

VPC에서 Internet Gateway 사용 (인터넷 연결)

개요 AWS의 VPC를 생성하고 Public Subnet을 생성한 후 생성된 Public Subnet의 Instance가 VPC 외부의 인터넷 망과 통신을 하기 위해서는 Inetenet Gateway가 필요하다. 이 포스팅에서는 임의의 VPC를 생성하고 Public Subnet을 만든후 Internet gateway를 이용해 Public Subnet 내부의 EC2 인스턴스가 VPC 내외부와 통신하는 방법을 Hands-on 해보도록 한다. 목표 시스템 이미지 VPC 생성 Public Subnet 생성 Internet Gateway 생성 pubilc subnet을 위한 routing table 생성 VPC 생성 VPC를 다음과 같이 생성한다. Subnet(서브넷) 생성 Subnet을 다음과 같은 조건으로 생..

Cloud Service/AWS 2022.01.23

SSH 키페어 생성 및 이용

SSH(Secure SHell) 란 SSH는 Tatu Ylonen(twitter: @tjssh)에 의해 개발되었으며 보안되지 않은 네트워크(e.g. 인터넷)를 통한 보안 시스템 관리 및 파일 전송을 가능하게 하는 소프트웨어 패키지로써 거의 모든 데이터 센터와 모든 대기업에서 사용되고 있다. 아래와 같이 SSH 프로토콜을 이용해 데이터를 암호화해서 클라이언트와 서버 간의 전송 데이터를 안전하게 보호한다. 모든 사용자의 인증, 데이터 송수신 및 파일 전송등은 암호화되어 전달된다. SSH에 대한 보다 자세한 내용은 http://ssh.com/academy/ssh 에서 보다 상세하게 알아볼 수 있다. SSH 동작 방식 SSH 키(Key)는 공개키(public key)와 비공개키(private key)로 이루어진..

Etc 2022.01.19

Event Broker로써 SQS, SNS, Kinesis, MQ, MSK 선택

MSA(Microservice Architecture)의 핵심은 ①비즈니스 민첩성, 장애대응, 개발 및 운영 조직, 배포중요도, 도메인 관련성의 특성에 따라 서비스를 분리하고(바운디드 컨텍스트를 만들고 서비스를 추출) ②분리된 서비스별 결합도를 낮추기 위해 독립된 데이터베이스를 두며 ③서비스간 데이터 전달은 이벤트 기반의 메시지 전달을 하는 것이라고 생각한다. 이렇게 각 서비스 별로 필요한 데이터를 이벤트 형식으로 비동기적으로 전송하는 아키텍처를 EDA(Event Driven Architectur)라 한다. 최근 MSA를 고려할때 비동기 통신을 위해 반드시 EDA를 고려해야 하고 EDA의 핵심인 Event Broker(Queue)의 제품별 특성을 반드시 이해하고 프로젝트에 적용해야 한다. 이 포스팅에서는..

Cloud Service/AWS 2022.01.17

AWS VPC 만들기

이 포스팅에서는 이전에 알아보았던 VPC(Virtual Private Network)를 직접 AWS상에서 만들어 보도록 하겠다. VPC 만들기 VPC를 만드는 장소는 서울리전(ap-northeast-2)을 사용하기로 한다. 가지고 있는 aws 계정을 이용해 aws 관리 콘솔로 로그인 후, 서비스 찾기에서 아래 그림과 같이 VPC를 찾아 클릭해 VPC 생성 화면으로 들어간다. VPC 생성을 위한 첫 화면, 이때 Available 상태에 있는 VPC는 AWS계정을 만들면 나오는 기본 VPC(Default VPC)로 우리는 기본 VPC가 아닌 새로운 VPC를 만들도록 할 것이다. 상단의 VPC생성을 클릭하도록 한다. VPC 이름테그는 본인이 원하는 이름을 지정하도록 한다. 여기서는 my-vpc-01을 사용한다..

Cloud Service/AWS 2022.01.17

AWS VPC 그리고 VPC 리소스 알아보기

VPC 정의 VPC는 Virtual Private Cloud의 약자로 VPC를 통해 사용자 별로 가상의 사용자 네트워크 환경을 만들수 있도록 해주는 서비스이다. AWS 초창기 부터 있던 서비스는 아니고 2011년 8월부터 정식적으로 서비스 되었다. AWS에 VPC 개념이 도입되면서 기존의 IDC 센터와 차별점이 생겼다고 보아도 무방하다. VPC 리소스 VPC 리소스는 AWS VPC내부에서 VPC와 관련있는 네트워크 리소스들을 말한다. AWS 관리 콘솔로 로그인해 서비스 목록에서 VPC를 선택하면 VPC 대시보드에서 각 리전별 운용 가능한 VPC 리소스들을 확인 할 수 있다. 2022년 1월 AWS 서울리전의 VPC 리소스 VPC 리소스 기능 VPC AWS 사용자 계정 전용 가상 네트워크 서브넷 VPC의 ..

Cloud Service/AWS 2022.01.17

Amazon Web Service 서비스 간단 정리

2021년 11월 Amazon Web Service에서 제공하는 대표 서비스들을 아래와 같이 정리, 구분해 보았음 구분 서비스 내용 서버 EC2 - Amazon Elastic Compute Cloud(Amazon EC2)는 컴퓨팅 용량을 제공하는 서비스임 OS, SW 등을 세트로 사용 할 수 있음. 다양한 사양이 준비되어 있고 자유롭게 소프트웨어를 설치하고 시스템을 구축할 수 있으며 이미 세팅된 서버를 사용하는 것도 가능 성능은 가변적이며 일시 정지 등을 통해 성능을 높이거나 낮추는 것이 가능 ECS Amazon Elastic Container Service는 Docker Container로 제작된 이미지를 실행과 관리해 주는 관리형 컨테이너 관리 서비스 Lightsail Amazon Lightsail은..

Cloud Service/AWS 2022.01.17

AWS 클라우드 소개

AWS란? Amazon Web Services(AWS)는 개인, 기업 및 정부에 대해 종량제 방식의 주문형 컴퓨팅 플랫폼 및 API를 제공하는 Amazon의 자회사이다. AWS의 가장 유명한 서비스로 중 하나는 EC2(Elastic CCompute Cloud)로 이를 통해 사용자는 가상의 컴퓨터 클러스터를 원하는 대로 이용할 수 있다. AWS에는 현재 EC2이외에도 수많은 서비스들이 존해하고 있다. 또한 전 세계적으로 분포한 데이터 센터에서 200개가 넘는 완벽한 기능의 서비스를 제공하는, 세계적으로 가장 포괄적이며, 널리 채택되고 있는 클라우드 플랫폼이다. 빠르게 성장하는 스타트업, 가장 큰 규모의 엔터프라이즈, 주요 정부 기관을 포함하여 수백만 명의 고객이 AWS를 사용하여 비용을 절감하고, 민첩성을..

Cloud Service/AWS 2022.01.17

Spring Boot 와 ELK (ElasticSearch, Logstash, Kibana)

이미 이 블로그를 통해 나는 Microservice Architecture 기반의 응용 프로그램을 설계 할때 고려해야 하는 6가지 영역(API Gateway, Service Mesh, Container Management, Backing Service, Telemetry, CI/CD)에 대해 언급한 적이 있다. Microservice Architecture 컴포넌트 Microservice Architecture를 구성하는데 필요한 각각의 필요 요소들에 대해 이를 그룹화 하고 잘 정리한 자료를 찾는 것은 쉽지 않다. 사실 이 분야 전문가는 Gartner라고 생각하고 있고 그 분야의 전문 sharplee7.tistory.com 이 6개 영역 중 Telemetry 혹은 Observation 이란 영역은 '로깅..

Spring Boot tomcat access log 출력

Spring Boot의 web module에 있는 내장 톰캣은 기본적으로 access log를 출력하지 않는다. 다양한 방법으로 access log 혹은 그와 유사한 로그를 남길수 있지만 여기서는 전통적인 설치형 tomcat에서 access log를 남긴 것과 동일한 log 출력 방법을 알아 보도록 한다. 예제를 위한 tomcat 프로젝트 생성 Hands on을 위해 https://start.spring.io 로 접속해 Spring Web Dependency를 추가 후 Generate 버튼을 클릭한다. 다운로드 받은 tomcat-log 프로젝트의 압축을 풀고 사용하는 IDE를 통해 프로젝트 파일을 오픈한다. TomcatLogApplication.java 파일을 다음과 같이 작성한다. package com..

IP Class, Subnet mask 그리고 CIDR 이란?(사이더 란?)

IP Class IP v4는 255.255.255.255 32bit(4byte) 길이로 구성된 논리적 주소 체계로 구성되어 있고 하나의 IP는 Network Address와 Host Address로 구성되어 있다. 특히 여기서 Network Address는 관리하기 쉽게 그 범위를 나누어 영역을 나누었는데 우리는 그것을 Class라 부른다. 이 Class는 다음과 같이 A~E까지의 5개로 구성되어 있고 각 Class의 Network Address 영역과 Host Address 영역은 그림과 같다. 각 Class의 시작 범위는 다음과 같은 식으로 계산하면 기억하기 쉽다. IP에 입력하는 범위가 256개가 존재한다 (0 ~ 255) 256부터 2씩 나눈다. 256 / 2 = 128 - 1 = 127 (A C..

Back To The Basic 2021.11.27

Hub, Switch, Router 비교

네트워크 연결 장치로 허브, 스위치, 브릿지 및 라우터가 있다. 네트워크 연결 장치는 동일 네트워크 간 혹은 다른 네트워크 간 연결을 하는 장치이다. 이 각각의 연결장치를 OSI 7 Layer의 하위 3계층으로 표시하면 다음과 같이 표현 할 수 있다. 허브(HUB) 로컬 네트워크를 구성해 주는 장비 허브에 물린 장비들끼리는 통신이 가능 데이터 통신을 위해 브로드캐스트 방법 사용 반이중(Half-duplex) 방식 통신 Only detects that a device is physically connected to it 스위치(Switch) 허브와 동일한 역할(물려 있는 장비들끼리 통신) 허브와 달리 연결된 장비들의 MAC Address를 가지고 있음 데이터 통신을 위해 저장되어 있는 Mac Address..

Back To The Basic 2021.11.25
반응형