EKS 구성을 완료했다면 드디어 ! 컨테이너를 배포해보자 배포한 어플리케이션의 전체 시스템 구성도는 다음과 같다. ✔️ Application 배포 Database 배포하기 만약 배포할 어플리케이션이 로컬 sqlite DB 대신 외부 RDBMS(maridDB, mysql 등) 리소스를 연동한 경우에는 쿠버네티스 위에 DB app을 배포해야한다. 배포를 위해 Deployment manifast 파일을 작성한다. 참고할 문서는 다음과 같다. 디플로이먼트 디플로이먼트(Deployment) 는 파드와 레플리카셋(ReplicaSet)에 대한 선언적 업데이트를 제공한다. 디플로이먼트에서 의도하는 상태 를 설명하고, 디플로이먼트 컨트롤러(Controller)는 현재 상태에서 의 kubernetes.io 디플로이먼트에서..
초기 설정 글에 이어서 EKS를 구성하는 방법에 대해 상세히 기록한다. ✔️ Deploy EKS Cluster 만약 쿠버네티스의 Cluster와 내부 구조에 대한 개념이 없다면 다음 글을 읽고와도 좋다. 쿠버네티스(Kubernetes)란 ? 들어가기 앞서 ✔️ 컨테이너 오케스트레이션(Container Orchestration)이란 ? 컨테이너 오케스트레이션이란 컨테이너를 쉽고 빠르게 배포/확장하고 관리를 자동화해주는 도구이다. 여러개의 서버에 nice-engineer.tistory.com 빠르게 훑고 싶다면 ! 더보기 쿠버네티스에는 Cluster라는 개념이 있다. 클러스터 내부 구성은 다음과 같다. Master Node - 클러스터 전체를 관리하고 통제하는 역할을 수행 API Server - 클러스터의 ..
✔️ Docker 컨테이너를 EKS를 이용해 배포해보는 실습 AWS를 처음 사용해보는 사람도 따라할 수 있도록 자세히 적어놨으니 따라하면 EKS 실습을 완료할 수 있을 것이다. Windows Terminal에서 Ubuntu 20.04 LTS 환경으로 진행 ✔️ AWS CLI 설치 및 초기 설정 첫번째로 AWS CLI를 설치한다. AWS CLI는 현재 버전 1, 2가 있는데 나는 2를 설치했다. * AWS CLI(Command Line Interface)란 AWS 서비스를 관리하는 통합 도구이다. AWS 서비스를 명령줄에서 제어하고 스크립트를 통해 자동화할 수 있다. AWS 공식 문서에서도 버전 2를 권장하므로 업데이트를 하면 좋을거 같다. 📌 Linux AWS CLI 2 설치 방법 curl "https:..
✔️ AWS EKS(Elastic Kubernetes Service)란 ? AWS EKS란 자체 쿠버네티스 컨트롤 플레인이나 작업자 노드를 설치 및 운영할 필요 없이 AWS에서 쿠버네티스를 손쉽게 실행할 수 있도록 지원하는 관리형 서비스이다. AWS EKS는 컨테이너 시작 및 중지, 가상 시스템에서 컨테이너 일정 수립, 클러스터 데이터 저장 및 기타 작업을 담당 하는 쿠바네티스 제어 플레인 노드의 가용성과 확장성을 자동으로 관리 해준다. EKS를 사용하면 Kuberenetes 설치부터 운영까지 EKS가 해주기 때문에 직접 Kubernetes Cluster를 구성하고 관리하는 것보다 쉽게 Kubernetes를 사용할 수 있다. EKS는 오픈 소스 Kubernetes의 최신 버전의 실행하므로 kubernet..
✅ Amazon Compute Services ✅ Amazon EC2 AWS에서 안전하고 크기 조정이 가능한 컴퓨팅 용량을 클라우드에서 제공하는 웹서비스이다. 이 서비스를 통해서 아마존이 각 세계에 구축한 데이터 센터의 서버용 컴퓨터들의 자원을 원격으로 사용할 수 있다. AWS가 제공하는 URL(Public DNS)를 통해 이 컴퓨터에 접근할 수 있다. ✅ EC2 장점 용량을 늘리거나 줄일 수 있다. (탄력성) 사용한만큼 지불하므로 저렴하다. 사용자가 인스턴스를 완전히 제어할 수 있다. 보안 및 네트워크 구성, 스토리지 관리 효과적이다. ✅ EC2의 지역 및 가용 영역 선택 각 리전은 개별 지역 내 존재하는 지리적 위치를 의미한다. 가용영역(AZ)은 리전 내 있는 구분된 가용성 영역을 의미하며 전용선으로..
✅ VPC (Virtual Public Cloud)란 ? 사용자가 정의하는 가상의 네트워크이다. VPC를 통해 인스턴스가 속하는 네트워크를 구분하여 각 네트워크에 맞는 설정을 부여할 수 있다. 만약 VPC가 없다면 EC2 인스턴스들이 서로 거미줄처럼 연결되고 인터넷과 연결된다. 이런 구조는 시스템의 복잡도를 매우 끌어올릴 뿐 아니라 하나의 인스턴스만 추가돼도 모든 인스턴스를 수정해야하는 불편함이 생긴다. 마치 인터넷 전용선을 다시 까는 것과 같다. VPC를 적용하면 위 그림과 같이 VPC별로 네트워크를 구성할 수 있고 각각의 VPC에 따라 다르게 네트워크 설정을 줄 수 있다. 또한 각각의 VPC는 완전히 독립된 네트워크처럼 작용하게 된다. ✅ 기본 VPC의 구성 요소 VPC 서브넷 라우트 테이블 인터넷 ..