๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ‘ฉ‍๐Ÿ’ป Learn programming

[AWS] ๋ฐฑ์—”๋“œ ๊ตฌ์„ฑํ•ด๋ณด๊ธฐ - EC2

by ๋ฐ๊ตฅ์ž‰ 2022. 4. 26.
๋ฐ˜์‘ํ˜•

๐Ÿฑ ๋ฐฑ์—”๋“œ ๊ตฌ์„ฑํ•ด๋ณด๊ธฐ - EC2

 

1. EC2

โœ… = ์ธ์Šคํ„ด์Šค

โœ… AWS์˜ ๊ฐ€์žฅ ๊ธฐ๋ณธ์ ์ธ ์„œ๋น„์Šค

โœ… ํ•˜๋‚˜์˜ ์„œ๋ฒ„ ์ปดํ“จํ„ฐ๋ผ๊ณ  ๋ณด๊ณ , ์„œ๋ฒ„ ์ปดํ“จํ„ฐ๋ฅผ ํ•˜๋‚˜ ๋นŒ๋ ค์„œ ํ”„๋กœ๊ทธ๋žจ๋“ค์„ ์„ค์น˜ํ•˜๊ณ  ์‚ฌ์šฉํ•˜๋ฉด ๋จ.

 

*๏ธโƒฃ EC2 ์ฐธ๊ณ  ๋ฌธ์„œ

 

https://docs.aws.amazon.com/ec2/?id=docs_gateway

 

docs.aws.amazon.com

 

 

 

2. EC2 ์ƒ์„ฑํ•˜๊ธฐ

 

 

(1) EC2 ์„œ๋น„์Šค -> ์ธ์Šคํ„ด์Šค (์‹คํ–‰ ์ค‘) -> '์ธ์Šคํ„ด์Šค ์‹œ์ž‘' ๋ฒ„ํŠผ ํด๋ฆญ !

 

 

 

(2) Quick Start (๋น ๋ฅธ ์‹œ์ž‘) -> ubuntu ์„ ํƒ

 

 

 

(3) ์ธ์Šคํ„ด์Šค ์œ ํ˜• ์„ ํƒ (t2.micro)

 

 

 

(4) ์ƒˆ ํ‚ค ํŽ˜์–ด ์ƒ์„ฑ -> ํ‚ค ํŽ˜์ด ์ด๋ฆ„ ์ž…๋ ฅ -> ํ‚คํŽ˜์–ด ์ƒ์„ฑ ํด๋ฆญ -> ํ‚คํŽ˜์–ด(.pem ํŒŒ์ผ)๊ฐ€ ๋‹ค์šด๋กœ๋“œ ๋จ.

 

 

 

(5) ์ธ์Šคํ„ด์Šค ์‹œ์ž‘ -> ์™„๋ฃŒ !

 

 

 

3. EC2 ์ ‘์†ํ•˜๊ธฐ

 

(1) IP ํ™•์ธ

 

 

 

(2) ๋ณด์•ˆ ๊ทธ๋ฃน์—์„œ 22๋ฒˆ ํฌํŠธ SSH ํ™•์ธ. 

 

 

 

(3) SSH ๋ฅผ ์ด์šฉํ•˜์—ฌ ์ธ์Šคํ„ด์Šค์— ์ ‘์†

โœ… SSH ์ ‘์† (์œˆ๋„์šฐ 10์€ SSH, ์ดํ•˜ ๋ฒ„์ „์€ git bash ์‚ฌ์šฉ)

โœ… ์ ‘์†ํ•˜๊ธฐ

ssh -i ๋ฐ›์€ํ‚คํŽ˜์–ด๋ฅผ๋Œ์–ด๋‹ค๋†“๊ธฐ ubuntu@AWS์—์ ํžŒ๋‚ด์•„์ดํ”ผ

 

 

 

(4) ์ ‘์† ํ™•์ธ

โœ… yes -> enter

 

 

 

 ๋ฆฌ๋ˆ…์Šค ๋ช…๋ น์–ด 

 

โœ… ls : ๋‚ด ์œ„์น˜์˜ ๋ชจ๋“  ํŒŒ์ผ์„ ๋ณด์—ฌ์คŒ.

โœ… pwd : ๋‚ด ์œ„์น˜ (ํด๋” ๊ฒฝ๋กœ) ๋ณด์—ฌ์คŒ.

โœ… mkdir : ๋‚ด ์œ„์น˜ ์•„๋ž˜์— ํด๋”๋ฅผ ํ•˜๋‚˜ ๋งŒ๋“ฌ.

โœ… cd [๊ฐˆ ๊ณณ] : ๋‚˜๋ฅผ [๊ฐˆ ๊ณณ] ํด๋”๋กœ ์ด๋™ ์‹œํ‚ด

โœ… cd .. : ๋‚˜๋ฅผ ์ƒ์œ„ ํด๋”๋กœ ์ด๋™ ์‹œํ‚ด.

โœ… cp -r [๋ณต์‚ฌํ•  ๊ฒƒ] [๋ถ™์—ฌ๋„ฃ๊ธฐ ํ•  ๊ฒƒ] : ๋ณต์‚ฌ ๋ถ™์—ฌ๋„ฃ๊ธฐ

โœ… rm -rf [์ง€์šธ ๊ฒƒ] : ๊ฐ•์ œ๋กœ ์ง€์šฐ๊ธฐ. ์ด ๋ช…๋ น์–ด๋กœ ์ง€์šฐ๋ฉด ๋ณต๊ตฌ๊ฐ€ ์•ˆ๋˜๋‹ˆ ์กฐ์‹ฌ !!!

โœ… sudo [์‹คํ–‰ ํ•  ๋ช…๋ น์–ด] : ๋ช…๋ น์–ด๋ฅผ ๊ด€๋ฆฌ์ž ๊ถŒํ•œ์œผ๋กœ ์‹คํ–‰.

โœ… sudo su : ๊ถŒ๋ฆฌ๊ฐ€ ๊ถŒํ•œ์œผ๋กœ ๋“ค์–ด๊ฐ. (๋‚˜์˜ฌ ๋•Œ๋Š” exit๋กœ ๋‚˜์˜ด)

 

 

 

4. EC2์— ํŒŒ์ด์ฌ ๋ฐฐํฌํ•˜๊ธฐ

 

(1) ํŒŒ์ด์ฌ ์„ค์ •

 

โœ… python ์ด๋ผ๋Š” ๋ช…๋ น์–ด๋กœ 3 ๋ฒ„์ „ ์ด์ƒ์„ ์‹คํ–‰ํ•˜๋„๋ก ํ•˜๋Š” ๋ช…๋ น์–ด ๋ถ™์—ฌ๋„ฃ๊ธฐ !

sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 10

 

 

 

(2) ๋ฆฌ๋ˆ…์Šค ํŒจํ‚ค์ง€ ์„ค์น˜

โœ… ํ•œ ์ค„ ์”ฉ ๋ณต์‚ฌ ๋ถ™์—ฌ๋„ฃ๊ธฐ ํ•ด์„œ ์„ค์น˜ํ•˜๊ธฐ !

# pip3 ์„ค์น˜
sudo apt-get update
sudo apt-get install -y python3-pip

# ๋ฒ„์ „ ํ™•์ธ
pip3 --version

# pip3 ๋Œ€์‹  pip ๋ผ๊ณ  ์ž…๋ ฅํ•˜๊ธฐ ์œ„ํ•œ ๋ช…๋ น์–ด
# ์•„๋ž˜ ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•˜๋ฉด pip ๋ผ๊ณ  ์ณ๋„ pip3๋ฅผ ์ž‘๋™์‹œํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
sudo update-alternatives --install /usr/bin/pip pip /usr/bin/pip3 1

# ํŒŒ์ด์ฌ ๊ฐœ๋ฐœ์— ํ•„์š”ํ•œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์„ค์น˜
pip install flask boto3 flask-cors

 

 

 

(3) git ์—ฐ๋™

git --version

git clone https://github.com/uphiller/allaboutaws-backend

 

โœ… ํด๋” ํ™•์ธ & ํŒŒ์ด์ฌ ํŒŒ์ผ ์‹คํ–‰

 

โœ… ๋ฐฑ๊ทธ๋ผ์šด๋“œ ์‹คํ–‰

 

โœ… IP๋กœ ์ ‘์†ํ•ด๋ณด๊ธฐ ! => ์—ฐ๊ฒฐ โŒ (5000๋ฒˆ์ด ๋ง‰ํ˜€์žˆ์–ด์„œ)

 

 

(4) ํฌํŠธ ์—ด๊ธฐ

 

โœ… ์ธ์Šคํ„ด์Šค -> ๋ณด์•ˆ -> ๋ณด์•ˆ๊ทธ๋ฃน

โœ… '์ธ๋ฐ”์šด๋“œ ๊ทœ์น™ ํŽธ์ง‘' ํด๋ฆญ

 

โœ… ๊ทœ์น™ ์ถ”๊ฐ€ -> 5000๋ฒˆ ํฌํŠธ ์ถ”๊ฐ€ !

 

 

 

 

(5) ๋ธŒ๋ผ์šฐ์ €์—์„œ ํ™•์ธ

 

๋ฐ˜์‘ํ˜•