DevOps_04_김재환
2023. 4. 19. 19:53ㆍ부트캠프/DevOps (TIL)
EC2는 Amazon Web Services(AWS)의 인프라 서비스 중 하나로, Elastic Compute Cloud의 약자입니다. EC2는 가상 컴퓨터 인스턴스를 제공 EC2 인스턴스는 운영 체제, 스토리지, 네트워크 인터페이스 등을 포함한 완전한 컴퓨팅 환경입니다.
3 Tier Architecture에서 server을 구성하기 위해 EC2 instance을 생성하고 연결하고자 합니다.
AWS 메뉴에서 EC2 서비스를 검색하고 접속하여 인스턴스 시작 버튼을 클릭하여 인스턴스 생성을 시작할 수 있습니다.
EC2의 이름을 설정하고 용도에 맞게 AMI를 선택합니다. 이번 실습에 Ubuntu을 설정해야하기에 Ubuntu을 설정합니다.
설정할 때 프리 티어 사용 가능 태그를 확인하여 과금이 되지 않도록 유의합니다.
생성하는 인스턴스의 CPU, RAM, 용량에 대한 선택이 가능합니다. 실습 과정에서는 프리 티어 사용 가능 태그를 확인하여 과금되지 않는 유형을 선택합니다.
생성되는 인스턴스를 원격으로 제어하기 위해서는 SSH 연결을 통한 원격접속이 필요합니다. 원격접속을 위해서 필요한 Key를 생성하거나 기존에 생성해놓은 Key을 가져옵니다.
SSH 프로토콜은 서로 다른 PC가 인터넷과 같은 Public Network를 통해 통신을 할 때 보안상 안전하게 통신을 하기 위한 통신 규약입니다. 주고받는 데이터를 암호화해서 해당 키 페어를 가지지 않은 사람은 통신되는 데이터를 알아볼 수 없기 때문에 보안상 안전한 통신 방법입니다.
인스턴스 생성 마지막 단계에서 다운로드 한 파일은 SSH 통신을 위한 키 페어 중 프라이빗 키가 기록된 파일입니다. .pem 확장자를 가지고 있습니다. 해당 키 페어 파일은 EC2 인스턴스에 연결을 할 때 사용하는 암호가 담긴 파일입니다. 따라서 pem 파일은 관리에 유의해야 합니다.
필자는 VM /home/.ssh 디렉토리에 넣어놨습니다.
인스턴스 생성이 성공하면 해당 화면이 뜨며 빨간 테두리 안에 있는 문자는 인스턴스 ID로 생성된 인스턴스를 구분할 수 있는 식별자입니다.
우측 하단의 인스턴스 보기 버튼을 클릭하여 생성한 인스턴스를 확인해 봅시다.
인스턴스 목록 중 Name에 마우스를 가져다대면 원하는 Name으로 편집이 가능합니다.
인스턴스 만들기까지 완료를 했습니다. 지금 앞에 놓인 PC와 다르게 인스턴스는 직접 조작할 수 없습니다. 어떻게 인스턴스를 제어할 수 있을까요?
생성한 인스턴스에 원격접속하여 원격으로 인스턴스를 제어할 수 있습니다. 인스턴스에 원격접속을 하기 위해서 필요한 것이 인스턴스를 생성할 때 다운로드한 키 페어 파일(.pem)입니다. 이제 SSH 연결을 통해서 인스턴스에 접속해 보겠습니다.
인스턴스 ID을 누르면 위의 이미지 화면이 보입니다. 연결 버튼을 눌러 ssh을 연결해봅시다.
ssh 클라이언트 탭에서 ssh연결을 위한 일련의 과정이 나와있습니다. 순서대로 진행해주면 되며, 여기서chmod 400 kjh.pem은 ssh 접속을 위한 ssh pem 키 파일의 권한이 누구나 연결할 수 있게 되면 인스턴스는 보안의 이유로 연결을 거부하기 때문에 나(소유자)만 접속할 수 있도록 권한을 수정해 줍니다. 자세한 내용은 아래와 같습니다.
권한을 설정 했다면 이제 ssh에 연결할 수 있게됩니다.
위의 화면은 ec2에 로그인 성공했다는 출력물입니다.
ssh 연결하기 위한 명령어로 어떤 의미인지 알려주는 예입니다.
연결에 성공했다면 터미널 이 가상 pc에서 접속한 모습으로 보여집니다.
왼쪽은 생성한 EC2에 ssh로 접속한 터미널 오른쪽은 로컬 터미널
다음에는 보안그룹 설정에 대해 알아보겠습니다.
23_ Study( 3 Tier Architecture S3 버킷 생성 및 정적 웹 사이트 호스팅, 정책 설정 ) (0) | 2023.04.20 |
---|---|
23_Study( 3 Tier Architecture 보안그룹 ) (0) | 2023.04.19 |
22_Study(JSON) (0) | 2023.04.19 |
21_Study(Node.js 웹 앱의 컨테이너화) (0) | 2023.04.12 |
21_Study(Docker Daemon) (0) | 2023.04.12 |