본문 바로가기

전체 글

(148)
Docker Intro - 2. Docker 개념 Docker Container를 왜 쓰는지, 어떠한 장점을 지니는지 간략하게 알아봤기 때문에 이제 Docker Container에서 사용되는 용어들에 대해서 알아보도록 하겠습니다. 도커의 전체 구조입니다. Docker Client 도커의 엔드 유저 즉, 실 사용자를 말합니다. 보통은 도커 CLI를 통해 클라이언트에게 명령어를 전달하면, 이를 도커 데몬에게 전달합니다. Docker Daemon 도커 데몬은 빌드, 실행, 배포등 클라이언트에게 받은 명령어를 수행합니다. 도커 데몬은 호스트 머신에서 돌아가나 유저가 직접 도커 데몬을 컨트롤 하지는 않습니다. 도커 클라이언트가 일반적으로는 호스트 머신에서 실행되지만, 다른 머신에 있는 동안 호스트 머신에 있는 도커 데몬과도 소통이 가능하기 때문입니다. Docke..
Docker Intro - 1. Docker Container 와 VM Docker Container를 알기 위해서는 먼저 VM을 간단하게 알아야합니다. EC2 Intro의 VM에 대한 간략한 설명을 보고 오시는 것도 좋습니다. Docker Container가 왜 쓰이는지 알기 위해서 간략하게 설명해보도록 하겠습니다. Docker Container가 많은 대중에게 사용되기 전, VM을 사용하여서 시스템을 구축했습니다. VM은 Virtual Machines의 약자로, 어떠한 프로그램을 한 컴퓨터에서 여러한 컴퓨터 처럼 분리하여 각각 독립적으로 프로그램을 실행하고 운영하기 위해 사용되었습니다. 이를 위해 Hypervisor라는 VM이 실행되는 소프트웨어를 사용합니다. 즉, 호스트 머신위에서 자신의 프로그램을 실행하기 위한 OS, System Binary, Library, 어플리..
AWS Database Intro - 4. ElasticCache ElasticCache는 AWS에서 제공되는 In-Memory 기반의 Cache 서비스 Read Workload가 과중한 경우, Latency와 처리용량을 향상 Memcached와 Redis 기반의 두가지 Engine 제공 완전 관리형 서비스 Multi-AZ 지원 Cluster를 통해 6.1TB in-memory 확장 가능하며, 한 개의 cluste는 15개 까지 shard로 구성 가능합니다. 각 shard는 최대 5개의 read replica node를 multi AZ로 사용 가능합니다. TTL값을 통해 동기화 하는데, 데이터의 양에 따라서 TTL을 설정해야 합니다. 사용 사례로는 MySQL에 대한 Query 결과를 캐싱하여 반복적인 Query를 줄일 수 있습니다. 복잡한 Query 기반으로 처리된 결..
AWS Database Intro - 3. DynamoDB, Document DB, Neptune AWS NoSQL 관리형 서비스인 DynamoDB, DocumentDB에 대해서 먼저 알아보겠습니다. DynamoDB는 AWS 내에서 직접 만들어져서 사용하던 서비스로 내부에서 서비스의 품질이 너무 괜찮다는 평이 많아 사용자에게 출시된 서비스로 알려져 있습니다. DynamoDB를 간략하게 설명하면 아래와 같은 특징을 가지고 있습니다. NoSQL Database Serverless 서비스 - AutoScaling 10ms Latency 제공 Multi - Master (Global Table) Multi - Region (Active - Active) DynamoDB Key, Value 형태로 저장하고, 간단하게 테이블을 만들어서 쓸 수 있는 NoSQL로 Global Table을 통해 원하는 리전에 데이터..
AWS Database Intro - 2. RDS RDS에 대해서 알아보도록 하겠습니다. 먼저 AWS에서 서비스를 제공하는 DB는 Amazon Aurora, MySQL, PostgreSQL, Oracle, SQL Server, MariaDB 입니다. RDS의 장점을 하나씩 보도록 하겠습니다. 먼저 Multi AZ 구성입니다. (Active - Stanby or Mirroring) RDS를 생성할 때 아래와 같은 옵션에서 Multi AZ를 구성할 수 있습니다. (MS SQL Server만 Mirroring 옵션을 가지게 됩니다.) 또한 Multi Region Read Replica를 구성할 수 있는데, SQL Server와 Oralce은 아무래도 라이센스 문제인지, 잘 모르겠으나 지원하지 않는 상태입니다. 또한 언제든지 Database의 스펙을 Scale..
AWS Database Intro - 1. AWS DB Service 오늘은 AWS의 Database Service에 대해서 알아보도록 하겠습니다. 일반적으로 DB를 구축한다고 한다면 아래와 같이 많은 요소들을 고려해야합니다. 서버를 만들 장비부터, 서버 유지보수 관리, OS 설치, 패치, 그 다음에 비로소 DB를 설치하고 패치관리를 해야합니다. 그 다음에는 백업과 관련된 요소를 해결해야 하며, 고가용성이나 DB 디스크나 부하에 따른 것을 고려하여 디스크 스케일링이나 서버 스케일링에 대해서 고려해야합니다. 이 모든 과정이 끝났을 때, 비로소 어플리케이션에 최적화 된 DB 설정을 할 수 있게 됩니다. 그런데, 여기서 만약 EC2위에 DB를 구축한다면 그림이 좌측과 같이 바뀌게 됩니다. 어떠한 장비에 설치할 것인지, 그 해당 장비 및 서버에 대한 유지보수 관리에 대해서는 신경..
Slack Slash Command를 통해 집 근처 약국 마스크 수량 알아보기 Slack Slash Command + API Gateway + Lambda를 통해 간단하게 입력한 주소 근처 마스크 수량을 알아보도록 하겠습니다. 전체 구성도는 아래와 같습니다. Kakao Geocode REST API를 통해 주소 입력 -> 위도, 경도를 받아 마스크 Open API를 콜해 알아보는 방식입니다. 따라서 먼저, Kakao Geocode REST API를 쓰기위해 API Key를 받도록 하겠습니다. https://developers.kakao.com/docs/restapi/local Kakao Developers_ 더 나은 세상을 꿈꾸고 그것을 현실로 만드는 이를 위하여 카카오에서 앱 개발 플랫폼 서비스를 시작합니다. developers.kakao.com 먼저 카카오 API 위의 링크에 ..
AWS Storage Intro - On Premise Storage 연계 AWS에서 온프레미스 Storage와 연동하는 Storage Gateway에 대해 먼저 알아보도록 하겠습니다. Storage Gateway의 경우에는 아래와 같은 아키텍처와 서비스들을 가지고 사용된다고 보시면 됩니다. 기능은 크게 3가지로 나뉘며, 아래와 같습니다. EC2, VMware, Hyper-V 가상머신에 Storage gateway를 위해서 on-premise에 software appliance를 설치해야 하는데 이를 설치하기 위해 VMware ESXi Hypervisor 또는 Microsoft Hyper-V에 설치 가능하다. 또는 AWS EC2에 설치해서 storage gateway로 활용할 수도 있다. * 여기서 Tape에 대한 부분이 생소하여 찾아보니 다음과 같았습니다. 참고하시면 좋을 것..