목록Devops (17)
땡글이LAB
도커는 리눅스 컨테이너에 여러 기능을 추가함으로써, 애플리케이션을 컨테이너로서 좀 더 쉽게 사용할 수 있게 만드러진 오픈소스 프로젝트입니다. 도커는 Go 언어로 작성되어 있다. 기존에 쓰이던 가상화 방법인 가상 머신과는 달리 도커 컨테이너는 성능의 손실이 거의 없어서 차세대 클라우드 인프라 솔루션으로서 주목받고 있다. 기존의 가상화 기술은 하이퍼바이저를 이용해 여러 개의 운영체제를 하나의 호스트에서 생성해 사용하는 방식이었다. 이러한 여러 개의 운영체제는 가상 머신이라는 단위로 구별되고, 각 가상머신에는 우분투(Ubuntu), CentOS 등의 운영체제가 설치되어 사용된다. 하이퍼바이저에 의해 생성되고 관리되는 운영체제는 게스트 운영체제(Guest OS)라고 하며, 각 게스트 운영체제는 다른 게스트 운영..
Auto scaling이란? AWS Auto scaling을 사용하여 관련 또는 연결된 크기 조정 가능한 리소스에 대한 자동 크기 조정을 몇 분 만에 구성할 수 있다. 예를 들어 태그를 사용하여 프로덕션, 테스트 또는 개발과 같은 카테고리로 리소스를 그룹화할 수 있습니다. 그런 다음 각 카테고리에 속하는 크기 조정 가능한 리소스에 대한 크기 조정 계획을 검색 및 설정할 수 있습니다. 또는 클라우드 인프라에 AWS CloudFormation이 포함된 경우 리소스 컬렉션을 만드는 데 사용할 Stack 템플릿을 정의할 수 있습니다. 그런 다음 각 Stack에 속하는 크기 조정 가능한 리소스에 대한 scaling plan을 생성합니다. AWS Auto Scaling은 다음 서비스 및 리소스에 대한 scalin..
RDS 서비스에서 Database를 생성하기 전에 먼저 해둬야할 "사전작업" 이 있다. 보안그룹 생성 RDS를 위한 서브넷 그룹 생성 RDS - Database 생성 (Multi AZ deployment) RDS 를 통해 Database를 만들다보면, 이렇게 템플릿을 선택하는 란이 있는데 특별한 차이가 있는 것이 아니라, 템플릿에 따라서 스토리지(Storage)의 범위가 자동으로 결정된다. 하지만, "프리티어"를 선택하게 되면, Multi Availabilty Zone으로 이중화 구성 옵션이 비횔성화된다는 점에 주의해야 한다. 그리고 "가용성 및 내구성(Availabilty & durabilty)" 란에서는 Multi AZ deployment 에서 "대기 인스턴스 생성 (Create a standby i..
AWS에서 ALB(Application Load Balancer)를 만드는 방법에 앞서 Load Balancer의 개념부터 알아보도록 한다. Load Balancer Concept Elastic Load Balancing은 둘 이상의 가용 영역(Availability Zone) 에서 EC2 인스턴스, 컨테이너, IP 주소 등 여러 대상에 걸쳐 수신되는 트래픽을 자동으로 분산한다. 등록된 대상의 상태를 모니터링하면서 상태가 양호한 대상으로만 트래픽을 라우팅합니다. Elastic Load Balancing은 수신 트래픽이 시간이 지남에 따라 변경됨에 따라 로드 밸런서를 확장한다. 대다수의 워크로드에 맞게 자동으로 조정할 수 있다. AWS에서 Elastic Load Balancing은 다음 로드 밸런서를 지원..
Bastion Host 아키텍처를 구성하다보면, 퍼블릭으로 모든 인스턴스를 만들 수도 있겠지만 요즘은 퍼블릭으로 접근 가능한 인스턴스와 퍼블릭으로 접근하지 못하는 프라이빗(Private) 인스턴스를 구분해서 아키텍처를 구성한다. 일반적으로 Private 인스턴스에 접근하려면 Public 인스턴스를 통해 접근할 수 있다. 그런 Public 인스턴스를 Bastion host라고 한다. 즉, Public 인스턴스는 Private 인스턴스에 접근하기 위한 중개 서버 역할을 하게 된다. Private 인스턴스는 외부와의 접속을 하지 못한다. 즉, Bastion host(베스천 호스트)는 침입 차단 소프트웨어가 설치되어 내부와 외부 네트워크 사이에서 일종의 게이트 역할을 수행하는 호스트이다. 이 글에선, 침입 차단..
AWS EFS 란? 우선, EFS 에 대해 알아보자. EFS의 명칭은 Elastic File System을 의미한다. EFS는 서버리스, set-and-forget 사용할 탄력적 파일 시스템AWS 클라우드서비스 및 온프레미스 리소스. 애플리케이션을 중단하지 않고 온디맨드 방식으로 페타바이트 규모까지 확장되도록 구축되어, 사용자가 파일을 추가하고 제거할 때 자동으로 확장/축소되므로 데이터 증가에 맞춰 용량을 프로비저닝 및 관리할 필요가 없습니다. Amazon EFS에는 파일 시스템을 빠르고 쉽게 만들고 구성할 수 있는 간단한 웹 서비스 인터페이스가 있습니다. 이 서비스에서 모든 파일 스토리지 인프라를 관리해 주므로 사용자는 복잡한 파일 시스템 구성을 배포, 패치 및 유지 보수하는데 따르는 복잡성에서 벗어날..
AWS EC2를 사용하다보면 재부팅 시에, IP 주소 값이 바뀌는 것을 막기 위해 탄력적 IP를 사용한다. 탄력적 IP (Elastic IP)를 사용하면 EC2를 재부팅하더라도, IP 주소가 바뀌는 것을 막을 수 있다. Elastic IP 설정 방법 우선 EC2 를 이용해서 생성할 때에, '퍼블릭 IP 자동 할당 (Auto-assign Public IP)'를 비활성화시켜준다. 이후 '탄력적 IP (Elastic IP)' 란에서 EC2 인스턴스에 할당할 탄력적 IP를 할당해준다. 이렇게 탄력적 IP를 생성한 뒤, EC2 인스턴스에 해당 IP 주소를 붙여준다. 아래 보이는 사진에서 '탄력적 IP 주소 연결' 란을 들어가서 해당 IP 주소를 인스턴스에 연결해주면 된다. 매우 간단한 내용이지만 인스턴스를 생성할..
최근 컨테이너라는 말이 자주 등장하면서 개발자들 사이에서도 '컨테이너' 없는 인프라는 주변에서 찾아보기 힘들다는 말이 많다. 그래서 '컨테이너 인프라'에 대해 알아보자. 컨테이너 인프라는 컨테이너를 중심으로 된 인프라 환경인데, 여기서 컨테이너가 의미하는 바는 무엇일까?? 컨테이너 컨테이너는 하나의 운영체제 커널에서 다른 프로세스에 영향을 받지 않고 독립적으로 실행되는 프로세스 상태를 의미한다. 조금 더 쉽게 풀어 말하자면, 소프트웨어 서비스를 실행하는 데 필요한 특정 버전의 프로그래밍 언어 런타임 및 라이브러리와 같은 종속 항목과 애플리케이션 코드를 함께 포함하는 경량 패키지입니다. 컨테이너는 운영체제 수준에서 CPU, 메모리, 스토리지, 네트워크 리소스를 쉽게 공유할 수 있게 해주며 컨테이너가 실제로..