✍️ What I Learned/TIL

[TIL] μ˜¨ν”„λ ˆλ―ΈμŠ€(On-premise) vs. ν΄λΌμš°λ“œ(Cloud), AWS μ†Œκ°œ, AWS의 μ£Όμš” μ„œλΉ„μŠ€

Jiwon() 2023. 8. 2. 22:30

πŸ’‘ 20230802 TIL : AWS에 λŒ€ν•΄ κ³΅λΆ€ν•œ λ‚΄μš© 정리

 


1. On-premise vs Cloud computing

좜처 https://www.collidu.com/presentation-on-premise-vs-cloud

1) 🏠 On-premise

μ²˜μŒμ—” promise인쀄..

  • μ˜¨ν”„λ ˆλ―ΈμŠ€(On-premise)λž€ κΈ°μ—…이 직접 λ¬Όλ¦¬μ  곡간에 μ‹€μ œ ν•˜λ“œμ›¨μ–΄ μž₯λΉ„λ₯Ό κ°€μ§€κ³  IT 인프라λ₯Ό κ΅¬μΆ•ν•˜μ—¬ μš΄μ˜ν•˜λŠ” 방식을 λ§ν•œλ‹€.
  • ν•„μš”ν•œ 인프라 μ‹œμŠ€ν…œμ„ κ΅¬μΆ•ν•˜κΈ° μœ„ν•΄ ν•˜λ“œμ›¨μ–΄μ™€ μ†Œν”„νŠΈμ›¨μ–΄λ₯Ό 직접 κ΅¬μž…ν•˜μ—¬, 제곡 μ„œλΉ„μŠ€λ‚˜ μ‹œμŠ€ν…œ 상황에 맞게 ν™˜κ²½μ„ κ΅¬μ„±ν•œλ‹€.
  • μ„œλ²„μ˜ μœ μ§€λ³΄μˆ˜ μ—­μ‹œ ν•΄λ‹Ή 쑰직의 IT 인프라λ₯Ό κ΄€λ¦¬ν•˜λŠ” νŒ€μ΄ 직접 ν•œλ‹€.
  • κ°„ν˜Ή ν•™κ΅λ‚˜ νšŒμ‚¬μ—μ„œ λ΄€μ—ˆλ˜ μ„œλ²„μ‹€ 같은 곳듀을 λ– μ˜¬λ¦¬λ©΄ λœλ‹€.

 

2) ☁️ Cloud computing

  • ν΄λΌμš°λ“œ μ»΄ν“¨νŒ…(Cloud Computing) λ˜λŠ” ν΄λΌμš°λ“œ μ„œλΉ„μŠ€(Cloud Service)λž€ 제3자 μ„œλΉ„μŠ€ κ³΅κΈ‰μžλ‘œλΆ€ν„° 데이터 μ„Όν„° λ¦¬μ†ŒμŠ€λ₯Ό μž„λŒ€ν•˜λŠ” κ²ƒμœΌλ‘œ, 일반적으둜 인터넷을 톡해 μ•‘μ„ΈμŠ€ν•  수 μžˆλŠ” μ™ΈλΆ€ 데이터 μ„Όν„°μ—μ„œ ν˜ΈμŠ€νŒ…λœλ‹€.
  • ν•„μš”ν•œ IT μΈν”„λΌλ§Œ μ„ νƒν•˜κ³  μ„ νƒν•œ 인프라λ₯Ό μ„œλΉ„μŠ€ λ°©μ‹μœΌλ‘œ κ΅¬μž…ν•˜μ—¬ μ‚¬μš©ν•  수 μžˆλ‹€.

좜처 https://m.blog.naver.com/PostView.naver?blogId=modusign&logNo=221020144886&referrerCode=0&searchKeyword=AWS

ν΄λΌμš°λ“œ μ„œλΉ„μŠ€λŠ” 제곡 μžμ›μ— 따라 λ‹€μŒμ˜ 3κ°€μ§€λ‘œ λΆ„λ₯˜ν•  수 μžˆλ‹€.
IaaS, PaaS, SaaS
  • IaaS (Infrastructure as a Service, μ„œλΉ„μŠ€λ‘œμ„œμ˜ 인프라)
    • 가상 μ„œλ²„, 데이터 μŠ€ν† λ¦¬μ§€ 같은 ν•˜λ“œμ›¨μ–΄ 인프라λ₯Ό 인터넷을 톡해 μ œκ³΅ν•˜λŠ” μ„œλΉ„μŠ€
    • IaaSλŠ” κ°€μƒν™”λœ ν•˜λ“œμ›¨μ–΄, μŠ€ν† λ¦¬μ§€, λ„€νŠΈμ›Œν¬, 운영체제 등을 μ œκ³΅ν•˜λ©°, μ‚¬μš©μžλŠ” 이λ₯Ό μ΄μš©ν•΄μ„œ μžμ‹ μ˜ 앱을 μ„œλΉ„μŠ€ν•  수 μžˆλ‹€.
    • IaaSλ₯Ό μ΄μš©ν•˜λŠ” λŒ€ν‘œμ μΈ κΈ°μ—…μ—λŠ” λ„·ν”Œλ¦­μŠ€κ°€ μžˆλ‹€. λ„·ν”Œλ¦­μŠ€λŠ” 자체 데이터센터λ₯Ό κ΅¬μΆ•ν•˜μ§€ μ•Šκ³  AWS의 ν΄λΌμš°λ“œ μ„œλΉ„μŠ€λ₯Ό μ΄μš©ν•œλ‹€.
    • λŒ€ν‘œμ μΈ IaaS μ„œλΉ„μŠ€ : AWS EC2, Microsoft Azure, Google Compute Engine
  • PaaS (Platform as a Service, μ„œλΉ„μŠ€λ‘œμ„œμ˜ ν”Œλž«νΌ)
    • μ†Œν”„νŠΈμ›¨μ–΄λ₯Ό 개발, μ‹€ν–‰, 관리할 λ•Œ ν•„μš”ν•œ ν”Œλž«νΌμ„ 인터넷을 톡해 μ œκ³΅ν•˜λŠ” μ„œλΉ„μŠ€
    • PaaSλŠ” IaaSμ—μ„œ μ œκ³΅ν•˜λŠ” ν•˜λ“œμ›¨μ–΄ 인프라와 미듀웨어λ₯Ό μ΄μš©ν•˜μ—¬ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ˜ 개발, 배포, 운영 등에 ν•„μš”ν•œ ν™˜κ²½μ„ μ œκ³΅ν•œλ‹€.
    • λŒ€ν‘œμ μΈ PaaS μ„œλΉ„μŠ€ : AWS Elastic Beanstalk, Heroku, Google App Engine
  • SaaS (Software as a Service, μ„œλΉ„μŠ€λ‘œμ„œμ˜ μ†Œν”„νŠΈμ›¨μ–΄)
    • μ–΄ν”Œλ¦¬μΌ€μ΄μ…˜μ„ μ›Ήμ—μ„œ μ‚¬μš©ν•  수 μžˆλŠ” μ„œλΉ„μŠ€
    • μ‚¬μš©μžκ°€ μ†Œν”„νŠΈμ›¨μ–΄λ₯Ό μ†Œμœ ν•˜μ§€ μ•Šκ³  인터넷, 즉 μ›Ή λΈŒλΌμš°μ €λ₯Ό 톡해 μ‚¬μš©ν•˜λŠ” μ„œλΉ„μŠ€
    • λŒ€ν‘œμ μΈ SaaS μ„œλΉ„μŠ€ : Google Drive, Microsoft 365, Slack, 넀이버 ν΄λΌμš°λ“œ

 

 


2. μ•„λ§ˆμ‘΄ μ›Ή μ„œλΉ„μŠ€(AWS)λž€?

  • AWSλž€ Amazon Web Services의 μ•½μžλ‘œ, Amazon이 μ œκ³΅ν•˜λŠ” ν΄λΌμš°λ“œ μ»΄ν“¨νŒ… ν”Œλž«νΌ μ„œλΉ„μŠ€μ΄λ‹€.
  • AWSλŠ” μ „ 세계에 λΆ„μ‚°λ˜μ–΄ μžˆλŠ” 데이터 μ„Όν„°μ—μ„œ κ³ κ°λ“€μ—κ²Œ λ‹€μ–‘ν•œ IT 인프라λ₯Ό μ œκ³΅ν•˜λ©°, 고객듀은 ν•„μš”ν•œ 인프라λ₯Ό λΉ λ₯΄κ³  μ‰½κ²Œ κ΅¬μΆ•ν•˜κ³  μ„€μ •, 관리할 수 μžˆλ‹€.

 

1) 리전(Region)

좜처 aws 곡식 ν™ˆνŽ˜μ΄μ§€ (2023. 8 κΈ°μ€€)

  • AWS 리전(Region)은 AWSκ°€ μ „ 세계 κ°μ§€μ—μ„œ μš΄μ˜ν•˜λŠ” 데이터 μ„Όν„°κ°€ μžˆλŠ” 물리적 지역을 μ˜λ―Έν•œλ‹€.
  • AWSμ—μ„œ μ œκ³΅ν•˜λŠ” λ‹€μ–‘ν•œ μ„œλΉ„μŠ€λ“€μ€ 리전을 기반으둜, 리전 λ³„λ‘œ λ‹€λ₯΄κ²Œ μ œκ³΅ν•˜κ³  μžˆμœΌλ―€λ‘œ μ‚¬μš©ν•˜κ³ μž ν•˜λŠ” μ„œλΉ„μŠ€κ°€ νŠΉμ • λ¦¬μ „μ—μ„œ μ œκ³΅λ˜λŠ”μ§€ 체크해야 ν•œλ‹€.
  • 각 리전은 μ—¬λŸ¬ 개의 κ°€μš© μ˜μ—­(Availability Zone, AZ)으둜 κ΅¬μ„±λ˜μ–΄ μžˆλ‹€.

 

 

2) κ°€μš© μ˜μ—­(Availability Zone, AZ)

좜처 https://www.techtarget.com/searchcloudcomputing/tip/Understand-AWS-Regions-vs-Availability-Zones

  • κ°€μš© μ˜μ—­(Availability Zone, AZ)μ΄λž€ 리전 μ•ˆμ— μ‘΄μž¬ν•˜λŠ” 데이터 μ„Όν„°μ˜ 논리적 그룹을 μ˜λ―Έν•œλ‹€.
  • κ°€μš© μ˜μ—­μ€ 독립적인 데이터 μ„Όν„°λ“€λ‘œ κ΅¬μ„±λ˜μ–΄ 있으며, 이 데이터 센터듀은 λ„€νŠΈμ›Œν¬λ₯Ό 톡해 μ„œλ‘œ μ—°κ²°λ˜μ–΄ μžˆλ‹€.

좜처 aws 곡식 ν™ˆνŽ˜μ΄μ§€ (2023. 8 κΈ°μ€€)

  • 2023. 8 ν˜„μž¬ μ•„μ‹œμ•„ νƒœν‰μ–‘ μ§€μ—­μ—λŠ” 10개의 리전이 있으며, μ„œμšΈλ„ κ·Έ 쀑에 ν•˜λ‚˜μ΄λ‹€.
  • μ„œμšΈ λ¦¬μ „μ—λŠ” 4개의 κ°€μš© μ˜μ—­μ΄ μžˆλ‹€.

 

 


3. AWS의 μ£Όμš” μ„œλΉ„μŠ€

πŸ–₯️ μ»΄ν“¨νŒ…

좜처..me... λ‚΄κ°€ κ·Έλ¦Ό.. κ΅Ώλ…ΈνŠΈλ‘œ..

EC2(Elastic Compute Cloud) 

  • AWS의 κ°€μž₯ λŒ€ν‘œμ μΈ μ»΄ν“¨νŒ… μ„œλΉ„μŠ€λ‘œ, λ¦¬λˆ…μŠ€ λ˜λŠ” μœˆλ„μš° 기반의 μ»΄ν“¨νŒ… μžμ›μ„ μΈμŠ€ν„΄μŠ€λΌλŠ” 가상 μ„œλ²„λ‘œ μ œκ³΅ν•œλ‹€.
  • EC2λ₯Ό μ΄μš©ν•˜λ©΄ ν•„μš”ν•œλ§ŒνΌ 가상 μ„œλ²„λ₯Ό μƒμ„±ν•˜κ³  μ‚¬μš©ν•  수 있으며, μ‚¬μš©λŸ‰μ— 따라 μŠ€μΌ€μΌ μ—… λ˜λŠ” μŠ€μΌ€μΌ λ‹€μš΄ ν•  수 μžˆμ–΄ μ‚¬μš©μ΄ κ°„νŽΈν•˜λ‹€.

Elastic Beanstalk

  • μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ„ μ‹ μ†ν•˜κ²Œ λ°°ν¬ν•˜κ³  관리할 수 μžˆλ„λ‘ ν•˜λŠ” μ„œλΉ„μŠ€
  • μ• ν”Œλ¦¬μΌ€μ΄μ…˜ μ½”λ“œλ₯Ό μ—…λ‘œλ“œν•˜λ©΄ μš©λŸ‰ ν”„λ‘œλΉ„μ €λ‹, λ‘œλ“œ λ°ΈλŸ°μ‹±, μžλ™ μ‘°μ •λΆ€ν„° μ‹œμž‘ν•˜μ—¬ μ• ν”Œλ¦¬μΌ€μ΄μ…˜ μƒνƒœ λͺ¨λ‹ˆν„°λ§μ— 이λ₯΄κΈ°κΉŒμ§€ 배포λ₯Ό μžλ™μœΌλ‘œ μ²˜λ¦¬ν•œλ‹€.
  • Go, Java, .NET, Node.js, PHP, Python λ“±μ—μ„œ 개발된 μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ„ μ§€μ›ν•œλ‹€.

 

πŸ—ƒοΈ λ°μ΄ν„°λ² μ΄μŠ€

RDS(Relational Database Service)

  • RDSλŠ” μ΄λ¦„μ—μ„œ μ•Œ 수 μžˆλ“―μ΄, κ΄€κ³„ν˜• λ°μ΄ν„°λ² μ΄μŠ€λ₯Ό μ œκ³΅ν•˜λŠ” μ„œλΉ„μŠ€λ‘œ, μ„ νƒν•œ κ΄€κ³„ν˜• λ°μ΄ν„°λ² μ΄μŠ€ 엔진을 ν΄λΌμš°λ“œλ‚˜ μ˜¨ν”„λ ˆλ―ΈμŠ€μ— λ°°ν¬ν•˜κ³  크기λ₯Ό μ‘°μ •ν•  수 μžˆλ„λ‘ 도와쀀닀.
  • 인프라λ₯Ό ν”„λ‘œλΉ„μ €λ‹ν•˜κ±°λ‚˜ μ†Œν”„νŠΈμ›¨μ–΄λ₯Ό μœ μ§€ 관리할 ν•„μš” 없이 λΉ„νš¨μœ¨μ μ΄κ³  μ‹œκ°„ μ†Œλͺ¨μ μΈ λ°μ΄ν„°λ² μ΄μŠ€ 관리 νƒœμŠ€ν¬λ₯Ό μ œκ±°ν•  수 μžˆλ‹€.

 

πŸ“₯ μŠ€ν† λ¦¬μ§€

S3(Simple Storage Service)

  • 였브젝트 μ„œλΉ„μŠ€ μŠ€ν† λ¦¬μ§€ μ„œλΉ„μŠ€λ‘œ, μ–΄λ””μ„œλ“  μ›ν•˜λŠ” 데이터λ₯Ό 검색할 수 μžˆλ„λ‘ κ΅¬μΆ•ν•œ 객체 μŠ€ν† λ¦¬μ§€λ₯Ό μ œκ³΅ν•œλ‹€.
  • 파일 μ‹œμŠ€ν…œμ΄ μ•„λ‹Œ 였브젝트 μŠ€ν† λ¦¬μ§€ μ„œλΉ„μŠ€λ‘œ λͺ¨λ“  νŒŒμΌμ— API둜 μ ‘κ·Όν•  수 μžˆλ„λ‘ ν•œλ‹€.

EBS(Elastic Block Store)

  • EC2 μΈμŠ€ν„΄μŠ€μ— μ—°κ²°ν•  수 μžˆλŠ” 블둝 μˆ˜μ€€ μŠ€ν† λ¦¬μ§€ λ³Όλ₯¨ μ„œλΉ„μŠ€
  • EBS λ³Όλ₯¨μ€ λ„€νŠΈμ›Œν¬λ₯Ό 톡해 EC2 μΈμŠ€ν„΄μŠ€μ— μ—°κ²°λ˜λ―€λ‘œ 데이터 지속성, μŠ€λƒ…μƒ· 백업에 μš©μ΄ν•˜λ©° λ‹€λ₯Έ μΈμŠ€ν„΄μŠ€μ—μ„œ μ‰½κ²Œ μ‚¬μš©ν•  수 μžˆλ„λ‘ ν•œλ‹€.
  • terminate 된 μΈμŠ€ν„΄μŠ€μ˜ 데이터λ₯Ό μœ μ§€ν•  수 μžˆμ§€λ§Œ, μ‚¬μš© λ²”μœ„κ°€ 리전이 μ•„λ‹Œ AZ λ²”μœ„λ‘œ ν•œμ •λ˜λ―€λ‘œ μœ μ˜ν•΄μ•Ό ν•œλ‹€.

 

πŸ•ΈοΈ λ„€νŠΈμ›Œν‚Ή

VPC(Virtual Private Cloud)

  • 계정별, 즉 λ…Όλ¦¬μ μœΌλ‘œ 격리된 λ„€νŠΈμ›Œν¬ ν΄λΌμš°λ“œ λ¦¬μ†ŒμŠ€ μ„œλΉ„μŠ€μ΄λ‹€.
  • λ¦¬μ†ŒμŠ€ 배치, μ—°κ²° 및 λ³΄μ•ˆμ„ ν¬ν•¨ν•œ 가상 λ„€νŠΈμ›Œν‚Ή ν™˜κ²½μ„ μ œμ–΄ν•  수 μžˆλ‹€.

CloudFront

  • AWSκ°€ μ œκ³΅ν•˜λŠ” κΈ€λ‘œλ²Œ 컨텐츠 전솑 λ„€νŠΈμ›Œν¬(Content Delivery Network, CDN) μ„œλΉ„μŠ€λ₯Ό μ˜λ―Έν•œλ‹€.
  • 개발자 μΉœν™”μ μœΌλ‘œ κ΅¬μΆ•λ˜μ–΄ λΉ λ₯΄κ³  μ•ˆμ „ν•˜κ²Œ 컨텐츠λ₯Ό μ „μ†‘ν•œλ‹€.

Route 53

  • κ°€μš©μ„±κ³Ό ν™•μž₯성이 λ›°μ–΄λ‚œ 도메인 이름 μ‹œμŠ€ν…œ(DNS) μ›Ή μ„œλΉ„μŠ€
  • 도메인 이름을 λ“±λ‘ν•˜κ³ , κ°„λ‹¨ν•œ μ‹œκ°μ  νŠΈλž˜ν”½ 흐름 도ꡬλ₯Ό μ‚¬μš©ν•˜μ—¬ DNS λΌμš°νŒ…μ„ μ‰½κ²Œ μ„€μ •ν•  수 μžˆλ„λ‘ 도와쀀닀.

 

πŸ›‘οΈ λ³΄μ•ˆ

IAM(Identify and Access Management)

  • AWS μ„œλΉ„μŠ€ 및 λ¦¬μ†ŒμŠ€μ— λŒ€ν•œ μ•‘μ„ΈμŠ€ 및 IDλ₯Ό κ΄€λ¦¬μ œμ–΄ ν•˜λŠ” μ„œλΉ„μŠ€
  • IAM을 μ‚¬μš©ν•˜λ©΄ AWSμ—μ„œ μ‚¬μš©μž, μ—­ν•  및 그룹을 생성 및 κ΄€λ¦¬ν•˜μ—¬ AWS μ„œλΉ„μŠ€μ™€ λ¦¬μ†ŒμŠ€μ— λŒ€ν•œ μ•‘μ„ΈμŠ€λ₯Ό μ•ˆμ „ν•˜κ²Œ μ œμ–΄ν•  수 μžˆλ‹€.

 

 


μ°Έκ³  μ‚¬μ΄νŠΈ

μ˜¨ν”„λ ˆλ―ΈμŠ€(On-premise)의 μ •μ˜λŠ” λ¬΄μ—‡μΈκ°€?

μ „μžκ³„μ•½ λ„μž…, ν΄λΌμš°λ“œ or μ˜¨ν”„λ ˆλ―ΈμŠ€

μ•„λ§ˆμ‘΄ μ›Ή μ„œλΉ„μŠ€(AWS, Amazon Web Serivces)λž€? - ν΄λΌμš°λ“œ μ»΄ν“¨νŒ… μ„œλΉ„μŠ€μ˜ μ„ λ‘ μ£Όμž