우당탕탕 개발일지

AWS(아마존 웹 서비스) 본문

Network

AWS(아마존 웹 서비스)

kyunge_ev 2022. 11. 25. 22:49

📌 AWS 링크 : aws.amazon.com

 

클라우드 서비스 | 클라우드 컴퓨팅 솔루션| Amazon Web Services

개발자, 데이터 사이언티스트, 솔루션스 아키텍트 또는 AWS에서 구축하는 방법을 배우는 데 관심이 있는 모든 사용자용 무료 온라인 교육 AWS 전문가가 구축한 500개 이상의 무료 디지털 교육 과정

aws.amazon.com

 

아마존 웹서비스는 다른 웹 사이트나 클라이언트측
응용 프로그램에 대해 온라인 서비스를 제공하고 있다.

 

📚 용어정리

EC2 (Elastic Compute Cloud) 

 EC2는 AWS에서 제공하는 클라우드 컴퓨팅 서비스이다.
해당 서비스를 통해 아마존이 각 세계에 구축한 데이터 센서의 서버용 컴퓨터들의 자원을 원격으로 사용할 수 있다.
즉, 아마존으로 부터 한대의 컴퓨터를 임대하는 것이다.
AWS가 제공하는 URL(Public DNS)를 통하여 임대한 컴퓨터에 접근 할 수 있다.

 

리전 

 AWS의 서비스가 구동 될 지역을 이야기한다. AWS는 도시별로 클라우드 센터를 지어
해당 센터에서 구축된 가상머신들을 사용할 수 있다. 이것을 리전이라고 한다.

 

AMI(Amazon Machine Image)

 AMI는 소프트웨어의 구성이 기재된 템플릿이다.
운영체제만 설치 된 컴퓨터를 대여 할 수도 있고, 운영체제와 함께 특정 런타임이 설치 된 컴퓨터를 대여할 수도 있다.
이처럼 사용 용도에 맞게 운영체제와 런타임등이 미리 세팅되어 있는 컴퓨터를 선택하여 대여할 수도 있다.
→ AMI를 토대로 원하는 운영체제, 런타임, RAM 용량, CPU 등 이미 세팅 된 EC2 인스턴스를 생성할 수 있다.

 

키 페어(Key pair) 

 AWS에서 가상 서버에 접근하려면 개인키(private key)와 공개키(public key)로 구성 된 키 페어(Key pair)가 필요하다. 공개키는 AWS에 업로드되어 가상 서버에 삽입되고, 개인키는 자신이 소유하므로 훨씬 더 안전하다.

ex)
- 리눅스 서버에 접근 : SSH 프로토콜 사용 → 로그인 시 pwd 대신 키 페어를 이용하여 인증할 수 있음
- 윈도우 서버에 접근 : 원격 데스크톱 프로토콜(RDP, Remote Desktop Protocol) 사용 → 로그인 시 관리자 비밀 번호를 해동하는 키 페어 필요

 

스팟 인스턴스 요청 

 스팟 인스턴스란 인스턴스를 생성하여 사용 중 다른 이용자가 인스턴스 생성을 할 때 우리가 생성한 인스턴스를 종료하고 가져갈 수 있음 → 금액이 저렴 / 학습 중에는 사용하는게 좋음

 


🌈 실습 1) AWS EC2 Spot Instance 시작하기

1. 인스턴스 시작 클릭

2. 이름 및 태그 추가

3. AMI 선택

4. 인스턴스 유형 선택

5. 키 페어 생성 ( 경로 확인 - 서버 접속 시 필요 )

6. 네트워크 설정

7. 스팟 인스턴스 요청 ( 선택사항 )

8. 인스턴스 시작


🌈 실습 2) 생성한 인스턴스 서버에 Docker 설치 , MySQL(DB) 띄우기

1. ssh ubuntu@[ec2도메인] -i ~/Downloads/[pemkey_name].pem

내가 배포한 Amazon EC2 서버에 SSH로 접속

2. sudo su - 명령어 사용하여 권한부여(관리자 권한)

3. oh my bash 설치(https://ohmybash.nntoan.com/)

git bash 터미널 이용시 화면을 좀 더 보기 좋게 하기 위한 방법(필수x , 옵션)

아래의 코드에서 '$' 는 제외하고 입력

bash -c "$(curl -fsSL https://raw.githubusercontent.com/ohmybash/oh-my-bash/master/tools/install.sh)"

4. Docker 설치

mkdir git
cd git
git clone https://github.com/Kyeongrok/docker_minikube_kubectl_install
cd docker_minikube_kubectl_install
sh docker_install.sh

도커 설치 스크립트가 업로드되어있는 git에서 클론하여 설치함

아니면 설치과정이 너무 복잡함

📢 이 부분은 스크립트를 내 git에 클론해 따로 보관할 예정

5. Docker를 이용해서 mySQL 띄우기(-d 데몬으로)

docker run -p 3306:3306 -e MYSQL\_ROOT\_PASSWORD=password -d mysql

ROOT , password는 필요에 따라 변경할 수 있음

docker ps

docker 가 띄워졌는지 확인

6. 서버 포트 열기

1~5까지만 하면 mySQL 띄울 때 설정한 포트 3306이 서버에 안열려있기 때문에 연동이 안됨

인스턴스 > 보안 > 보안그룹 > 인바운드 규칙 편집

규칙 추가를 클릭하여 3306포트 열어주기

7. mySQL Workbench로 연결

이름, 서버 주소, 포트번호 입력

username 과 password는 도커를 띄울때 설정한걸로 입력

mySQL 디비와 연결 성공