본문 바로가기

IT87

AWS EKS에 Istio 설치 및 삭제하기 - kubernetes에 istio 설치 및 삭제 이번 글에서는 AWS EKS로 구축된 쿠버네티스 클러스터에 Istio를 설치해 볼 것이다. istio 설치는 helm chart를 통한 설치가 아닌, 설치파일을 가지고 설치를 진행해 보겠다. 실습은 다음과 같은 순서로 진행될 것이다. 1. 사전준비 2. AWS EKS 클러스터에 Istio 설치하기 3. AWS EKS 클러스터에 Istio 삭제하기 1. 사전준비 이번 실습은 AWS EKS의 워커노드를 프라이빗 서브넷으로 구축한 후, EC2 인스턴스를 한개 더 생성하여 해당 인스턴스를 통해서 쿠버네티스 클러스터에 접근하 것이다. 따라서 아래와 같은 사전 준비가 되어 있어야 한다(만약 AWS EKS가 아닌 리눅스 환경에 쿠버네티스 클러스터를 구성해 놓았다면 아래와 같은 사전 준비는 필요없다) 1) AWS EK.. 2020. 10. 8.
IntelliJ 필수 단축키 정리 이번 글에서는 IntelliJ 단축키에 대해서 알아볼 것이다. IntelliJ를 활용하여 코드를 작성 시 다양한 단축키를 활용할 수 있다. 단축키를 몰라도 않아도 IntelliJ의 기능을 사용하는데 크게 문제는 없지만 몇몇 단축키에 익숙해지게 되면 코드를 작성하는 속도가 훨씬 더 빨라질 것이다(이렇게 말하지만 정작 나도 단축키를 다 외우고 있지 못하기 때문에 이번 기회에 예전 블로그에 작성했었던 단축키에 대한 내용을 다시 정리해보고자 한다. 그런데 과연 코드를 작성하는 속도가 빨라지면 좋은 것일까.......OTL) IntelliJ 단축키는 1. 코드 편집 관련 단축키(소스 코드를 작성할 때 필요한 단축키) 2. 검색/이동 관련 단축키(소스를 검색/수정 하거나 이동 시 필요한 단축키) 3. 화면/파일 조.. 2020. 10. 5.
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.
The connection to the server localhost:8080 was refused 해결방법 kubectl을 통해서 쿠버네티스 클러스터에 접속하려 할 때 다음과 같은 에러 메시지가 발생하는 경우가 종종 있다. The connection to the server localhost:8080 was refused - did you specify the right host or port? 해당 메시지가 발생하는 경우는 보통 쿠버네티스 컨피그 파일이 $HOME/.kube 디렉토리 밑에 없거나, 현재 유저정보가 쿠버네티스 컨피그 파일에 반영되지 않은 경우에 발생한다. 따라서 해당 문제는 다음 명령어를 통해 해결 가능하다. 1. AWS EKS로 구축한 클러스터에 접근할 때 발생한 경우 다음 명령어를 통해 AWS EKS 클러스터 접근을 위한 컨피그 파일을 생성해준다(물론 해당 명령어를 사용하기 전에 aws c.. 2020. 10. 1.
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.
Istio란 무엇인가? 이번 글에서는 Istio의 정의, 구조 및 특징에 대해 알아볼 것이다. 이 글의 순서는 다음과 같다. 1. 서비스 메쉬(Service Mesh)란? 2. Istio 정의 3. Istio 구조 4. Istio 구성요소 5. Istio 주요 특징 1. 서비스 메쉬(Service Mesh)란? Istio가 서비스 메쉬(Service Mesh)를 구현할 수 있는 오픈소스이기 때문에, 우선 서비스 메쉬(Service Mesh)가 무엇인지 알아보자. 서비스 메쉬(Service Mesh)란 API 등을 사용하여 마이크로 서비스 간 통신을 안전하고, 빠르고, 신뢰할 수 있게 만들기 위해 설계된 전용 인프라 계층이다. 서비스 메쉬는 보통 Application 서비스에 경량화 프록시(Proxy)를 사이드카(sidecar).. 2020. 8. 31.
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.