블록체인 프로젝트의 구현을 위해 Amazon Managed Blockchain(AMB)
에서 Ethereum
의 Rinkeby Testnet
에 가입한 뒤, 노드를 생성했다. 단순히 Geth
처럼 Putty
로 접속해서 사용할 줄 알았던 내가 실수했다는 것을 알았다.
AMB에서 생성한 노드에서는 Websocket
과 HTTP
End Point
를 제공하고, 이를 통해 JSON-RPC
를 사용해야 했다.
그러기 위해서는Web3
를 이용해야 했고, 기본적인 Node 환경
이 필요했다. Local
에 환경을 구성하려고 할까 생각하다가 AMB에서 EC2 인스턴스를 생성해 관리하는 실습과정을 제공해주어, 프리 티어를 이용해 EC2를 활용해보려 한다.
EC2는 작년 대학원 수업에서 잠시 만져봤는데 기억이 온전치 않아 방법도 정리해놓고, 지식의 정확한 습득을 위해 글을 작성해보려 한다.
Free Tier
를 이용하시면 좋고,Free Tier
를 이용할 수 있다.왼쪽 상단에 보이는 서비스나 검색창에 EC2를 검색해 EC2 대시보드에 접속하고, 중간에 보이는 주황색 인스턴스 시작 버튼을 누른다.
그 다음 화면으로는 AWS에서 제공하고 있는 AMI를 확인할 수 있다. Amazon Linux, Window, Red Hat, Ubuntu 등 다양한 환경이 있고 친절하게 프리 티어를 사용할 수 있는 템플릿은 따로 표현해준다.
템플릿을 선택하면 인스턴스 유형을 선택할 수 있는 화면이 나온다. 역시 친절한 아마존은 프리 티어를 사용할 수 있는 유형을 표현해주기 때문에, 2번째 유형을 선택하고, 다음 화면으로 넘어간다.
다음 화면에는 인스턴스의 세부 정보를 구성할 수 있는 화면이 나온다. 특별한 설정이 필요하지 않다면 기본 설정으로 놓고 넘어간다.
다음으로는 스토리지를 추가하거나 선택할 수 있는 화면이 나온다. 스토리지는 프리 티어 용량에 직접적인 영향을 미치기 때문에, 신중히 선택해야 한다. 이 역시 특별한 설정이 필요하지 않다면 기본 설정으로 놓고 넘어간다.
태그 추가에 대한 화면이다. 운영 환경에서 인스턴스를 사용하는 경우 인스턴스를 수백 개를 실행하여 관리가 힘들 수 있다. 이때 태그를 이용하면 인스턴스의 성격에 맞게 분류하여 유용하게 사용할 수 있다. {Name: test-instance}와 같이 이름을 지어 사용하곤 한다.
다음 단계는 보안 그룹의 구성이다. 말 그대로 인스턴스에 대한 트래픽을 제어하는 방화벽 규칙들을 구성한다. 기본 보안 그룹으로 SSH가 설정되어 있고 규칙 추가 버튼을 통해 HTTP, HTTPS 등 기본적인 프로토콜을 추가할 수 있다.
이후 검토 단계에서는 사용자가 지금까지 선택한 조합들을 보여주며, 시작 버튼을 누르면 인스턴스가 생성된다. 인스턴스 생성에는 약 3~5분정도 소요되며, 생성이 완료되면 SSH로 접근할 수 있는 IP주소를 확인할 수 있다.
.pem
확장자를 가진 키페어는 잘 보관하도록 하자.
생성된 인스턴스는 다음과 같이 인스턴스 대시보드에서 확인할 수 있고, 인스턴스 상태를 통해 실행, 중단, 종료 등의 작업을 수행할 수 있다.
인스턴스 ID를 클릭해 인스턴스의 요약정보를 확인할 수 있다.
여기까지 EC2 인스턴스의 생성과정이다.
다음은 EC2 인스턴스에 Putty를 이용해 접속하는 과정을 설명한다.