본문 바로가기

IT/AWS26

AWS EC2에 AWS EKS 쿠버네티스 클러스터 엑세스 권한 제공 이번 글에서는 프라이빗 서브넷으로 구축된 AWS EKS 클러스터에 접근할 수 있는 권한을 제공하는 방법에 대해 알아볼 것이다. EC2 인스턴스에 AWS EKS 클러스터 엑세스 권한을 제공한 이유는, AWS EKS 쿠버네티스 클러스터를 프라이빗 서브넷으로 구축했을 때, 쿠버네티스 관리를 위한 EC2 인스턴스가 추가적으로 필요했다. 하지만 EC2 인스턴스는 쿠버네티스 클러스터 워커 노드가 아니기 때문에 클러스터 접근 및 관리가 불가능했다. 그래서 해당 EC2 인스턴스에 쿠버네티스 클러스터에 엑세스 할 수 있게 권한을 부여하게 되었다. 실습 순서는 다음과 같다. 1. AWS EKS 구축 2. EC2 인스턴스 생성 & IAM 계정 생성 3. AWS EKS 쿠버네티스 클러스터 접근권한 제공 1. AWS EKS 구.. 2020. 10. 3.
AWS SSM으로 Private Subnet EC2 접근하기 이번 글에서는 Amazon EC2 Systems Manager (SSM)를 활용하여 프라이빗 서브넷(Private Subnet)에 구축된 EC2 인스턴스에 접근해보도록 하겠다. 1. 왜 AWS SSM을 활용해서 접근해야 하는가? Private Subnet에 구축된 EC2 인스턴스는 퍼블릭 IP주소가 없고 프라이빗 IP주소만 가지고 있다. 그렇기 때문에 외부에서는 해당 EC2 인스턴스로 접근할 수가 없다. 프라이빗 IP주소만 가지고 있는 EC2 인스턴스에 접근하기 위해서는 1)바스티온 서버를 통해 접근하거나 2)AWS SSM 을 통해 접근 해야한다. 바스티온 서버를 통해 접근하는 방법은 프라이빗 서브넷 위의 EC2 인스턴스와 동일한 VPC의 퍼블릭 서브넷에 바스티온 서버를 구축한 후 SSH를 통해서 EC2.. 2020. 9. 28.
AWS EKS에 로그 트레이싱 구축(2)-kubernetes에 Jaeger 설치 지난 글에서 AWS EKS로 구축된 쿠버네티스 클러스터에 EFK 스택을 구성하였다. 이번 글에서는 AWS EKS로 구축된 쿠버네티스 클러스터에 Jaeger를 설치하여 분산 환경 로그 트레이싱을 구축해보도록 하겠다. Jaeger는 EC2 인스턴스에 별도로 구성하는것이 아닌, 쿠버네티스 클러스터 내에 구성할 것이다. 이 글의 실습을 진행하기 전에 다음과 같은 실습환경이 준비되어 있어야 한다. -º AWS EKS 구축(AWS EKS를 활용한 쿠버네티스 클러스터 구축 참고) - AWS EKS에 스프링부트 서비스 배포(AWS EKS에서 CodePipeline을 활용하여 스프링부트 서비스 배포하기 참고) - AWS EKS에 EFK 스택 구성(AWS EKS에 로그 트레이싱 환경 구축하기(1) - EFK 스택 구성하기.. 2020. 8. 23.
AWS EKS에 로그 트레이싱 구축(1)-kubernetes에 EFK 스택 설치 이번 글에서는 AWS EKS로 구축된 쿠버네티스 클러스터에 EFK 스택을 구성하고, Jaeger를 설치하여 분산 환경에서 로그 트레이싱 진행할 수 있도록 구축해 보겠다. 첫번째 장에서는 EFK 스택을 구성할 것이고, 그 다음 장에서는 Jaeger를 설치할 것이다. EFK스택은 EC2 인스턴스에 별도로 구성하는것이 아닌, 쿠버네티스 클러스터 내에 구성할 것이다. 이 글의 실습을 진행하기 전에 다음과 같은 실습 환경이 준비되어 있어야 한다. 1. AWS EKS 구축(AWS EKS를 활용한 쿠버네티스 클러스터 구축 참고) 2. AWS EKS에 스프링부트 서비스 배포(AWS EKS에서 CodePipeline을 활용하여 스프링부트 서비스 배포하기 참고) 이 글의 순서는 다음과 같이 진행된다. 1. 분산환경 로그 .. 2020. 8. 23.
AWS EKS에서 CodePipeline을 활용한 스프링부트 서비스 배포 이번 글에서는 AWS EKS에 CodePipeline(CodeCommit & CodeBuild)을 활용하여 스프링부트 서비스를 배포해보도록 하겠다. 이 글의 순서는 다음과 같다. 1. AWS CodeCommit 생성 2. AWS CodeBuild 생성 3. AWS CodePipeline 생성 4. 스프링부트 서비스 배포 추가로 실습하기 전에 AWS EKS가 이미 구축되어 있어야 한다. AWS EKS는 퍼블릭 서브넷과 프라이빗 서브넷을 각각 2개씩 가진 VPC위에서 동작하며, EC2 인스턴스는 프라이빗 서브넷에서만 구동되게끔 셋팅되어 있어야 한다(AWS EKS를 활용한 쿠버네티스 클러스터 구축 참고) 1. AWS CodeCommit 생성 우선 AWS CodeCommit을 생성해보자. CodeCommit을 .. 2020. 8. 22.
AWS EKS를 활용한 쿠버네티스 클러스터 구축 이번 글에서는 AWS EKS를 활용하여 쿠버네티스 클러스터를 구축해 볼 것이다. 사실 필자는 스터디 팀원들과 상용 오픈을 목표로 자체 프로젝트를 진행중인데, 돈을 많이 쓰지 않으면서 최대한 효율적으로 PaaS 환경을 구축하기 위해, AWS에 Kops를 활용해서 쿠버네티스 클러스터 구축/활용해 본 경험이 있다(마스터노드를 한개만 사용해도 되기 때문에 가격이 더 저렴했다. 물론 프로젝트가 어느정도 안정기에 도달하여 트래픽이 늘게 되면 AWS EKS를 도입할 생각이었다). 하지만 회사에서 진행하는 클라우드 교육 과제의 일환으로 AWS EKS로 쿠버네티스 클러스터를 구축하게 되어 이렇게 글을 남긴다. 이 글은 보는 사람이 최대한 이해하기 쉽도록 eksctl이 아닌 AWS Management Console을 활용.. 2020. 8. 6.
AWS RDS MariaDB 한글 깨짐 현상 해결(character_set, collation) 이번 글에서는 AWS RDS에 구축한 MariaDB에 데이터 입력 시 한글 깨짐 현상이 발생하는 문제를 해결하는 법에 대해 알아볼 것이다. 작업을 진행한 MariaDB는 10.2버전이다. 1. 왜 AWS RDS로 MariaDB를 생성하면 한글 깨짐현상이 발생할까? AWS RDS에서는 DB를 생성할 때 속성값으로 파라미터 그룹을 지정하게 되어 있다. 파라미터 그룹은 간단히 말해서 해당 DB의 속성값이라고 보면 되는데 이 속성값에 character-set도 있다. 그런데 파라미터 그룹을 별도로 지정하지 않으면 기본 파라미터 그룹으로 설정되는데, 이 기본 파라미터 그룹의 character-set이 utf8이 아니기 때문에 한글이 깨지는 현상이 발생하게 된다. 그렇기 때문에 RDS로 DB를 생성할 때 chara.. 2020. 4. 12.