λ°°ν¬λ₯Ό μν ν΄λΌμ°λ μλΉμ€
μ£ΌκΈ°μ μΈ μ μ§ κ΄λ¦¬κ° νμνκ³ κ³΅κ°μ νκ³λΌλ λ¬Έμ μ μ΄ μλ κΈ°μ‘΄ μλ²μ λ°©μμ λ¨μ μ 보μνκΈ° μν΄, μλ²μ μμκ³Ό κ³΅κ° λ° λ€νΈμν¬ νκ²½μ μ 곡ν΄μ£Όλ μλΉμ€μ΄λ€.
νμν λ λ§λ€ μ»΄ν¨ν λ₯λ ₯μ μ μ°νκ² μ‘°μ ν μ μκ³ , μ¬μ©ν λ§νΌμ μκΈλ§ μ§λΆνλ©°, μ»΄ν¨ν°μ μ€λ μ·μ μ΄μ©ν΄ λ€λ₯Έ μ»΄ν¨ν°λ‘ μ¦μ μ΄μ£Όκ° κ°λ₯νλ€λ μ₯μ μ΄ μλ€.
λ¨, μ΄μ νκ²½ μμ²΄κ° ν΄λΌμ°λ μλΉμ€μ μ’ μλμ΄ μλΉμ€μ μν₯μ λ―ΈμΉλ€λ λ¨μ μ΄ μλ€.(ex. μλ§μ‘΄ μΉ μλΉμ€μ μ₯μ λ‘ νΉμ μλΉμ€μ μλ²κ° μ§μ°λλ μν©)
ν΄λΌμ°λλ λͺ¨λ κ²μ μλΉμ€ννλ κ²μ λͺ©νλ‘ νλ©°, λνμ μΈ ν΄λΌμ°λ μλΉμ€μ ννλ μλμ κ°λ€.
Saas(Software as a Service) : ν΄λΌμ°λ μ 곡μκ° λΉμ₯ μ¬μ© κ°λ₯ν μννΈμ¨μ΄λ₯Ό μ 곡νλ κ²½μ°(λ€νΈμν¬, νλμ¨μ΄, μ΄μ체μ , νλ«νΌ/λ°μ΄ν°λ² μ΄μ€, μ΄ν리μΌμ΄μ )
PaaS(Platform as a Service) : ν΄λΌμ°λ μ 곡μκ° λ°μ΄ν°λ² μ΄μ€, κ°λ° νλ«νΌκΉμ§ μ 곡νλ κ²½μ°(λ€νΈμν¬, νλμ¨μ΄, μ΄μ체μ , νλ«νΌ/λ°μ΄ν°λ² μ΄μ€)
IaaS(Infrastructure as a Service) : ν΄λΌμ°λ μ 곡μκ° κ°μ μ»΄ν¨ν°κΉμ§ μ 곡νλ κ²½μ°(λ€νΈμν¬, νλμ¨μ΄)
μ¦, ν΄λΌμ°λ μ 곡μλ‘λΆν° μΌλ§λ§νΌμ μλΉμ€λ₯Ό μ 곡λ°λλμ λ°λΌ μλΉμ€μ ννκ° κ΅¬λΆλλ€.(AWS = IaaSμ κ°κΉμ)
Deploy(λ°°ν¬)λ κ°λ°ν μλΉμ€λ₯Ό μ¬μ©μκ° μ΄μ©κ°λ₯νκ² νλ κ³Όμ μΌλ‘, κΈ°λ³Έμ μΌλ‘ κ°λ°ν μλΉμ€λ₯Ό μλμ κ°μ΄ 4λ¨κ³λ₯Ό κ±°μ³μ λ°°ν¬νλ€.
Development | Integration | Staging | Production |
---|---|---|---|
Local μ»΄ν¨ν° νκ²½μμ κ°λ° λ° ν μ€νΈ) | κ° μ»΄ν¨ν°(νκ²½)μμ κ°λ°λ λΆλΆμ μ·¨ν©. | Production λ¨κ³μ κ°μ₯ μ μ¬ν νκ²½μμ ν μ€νΈ | μ΄μ μ κ°λ° νκ²½κ³Όλ ꡬλΆνμ¬ μ¬μ©μκ° μ μν μ μλ Production νκ²½μμ μ½λ ꡬλ λ° μλΉμ€ μ 곡 |
ν μ€νΈ μ, μ€μ λ°μ΄ν°x -> λλ―Έ λ°μ΄ν°(Sample Data) μ΄μ© | μ½λ κ° Conflictκ° μλ μ§ νμΈνλ κ³Όμ | μ€μ λ°μ΄ν°λ₯Ό 볡μ¬νμ¬ λ€μν νκ²½μμ ν μ€νΈ | μ€μ λ°μ΄ν° μ΄μ© |
λ³κ²½μ¬ν μμ΄λ λ¬Έμ x | μμ±ν μ½λκ° λ€λ₯Έ μ½λμ λ¬Έμ λ₯Ό λ°μμν€μ§ μλ μ§ νμΈ | λͺ¨λ κ΄κ³μ(λ§μΌν , λμμΈν..)κ° μμνλ κ²°κ³ΌμΈ μ§ νμΈ | μ€μ λ‘ μλΉμ€ μ 곡 |
λͺ¨λ ꡬμ±μμ΄ κ°μμ νκ²½μμ μ§ν | |||
μ¬λ¬ λͺ μ΄ μμ νλ νλ‘μ νΈμ κ²½μ°, node λ²μ μ΄λ μΈμ¦ μ 보, λ°μ΄ν°λ² μ΄μ€μ μ κ·ΌνκΈ° μν΄ μ¬μ©νλ μλ ν¬μΈνΈ λ±μ΄ κ°μ λ€λ₯΄λ―λ‘, λ°°ν¬λ₯Ό νκΈ°μν΄μλ νκ²½μ μ°¨μ΄λ₯Ό μ΄ν΄νκ³ νκ²½ μ€μ μ μ½λμ λΆλ¦¬νλ κ²μ΄ μ€μνλ€.
ꡬ체μ μΌλ‘, μμ±ν μ½λλ₯Ό λ€λ₯Έ νκ²½μμ μ μ μλν μ μκ² νλ €λ©΄ μ€μ μ νκ²½ λ³μ(env)μ μ μ₯ν΄μΌ νλ€.(μ½λ λ³κ²½ μμ΄ λ°°ν¬ λ λ§λ€ μ½κ² λ³κ²½ κ°λ₯)
λν, μ½λ μμ λͺ¨λ κ³³μ μ λ κ²½λ‘ λμ μλ κ²½λ‘λ₯Ό μ¬μ©ν΄μΌνλ©°, dockerμ κ°μ κ°λ° νκ²½ μ체λ₯Ό ν΅μΌ μν€λ μ루μ
μ μ¬μ©νλ€.
AWSμμ μ 곡νλ ν΄λΌμ°λ μ»΄ν¨ν μλΉμ€λ‘, AWSμμ μ격μΌλ‘ μ μ΄ν μ μλ κ°μμ μ»΄ν¨ν°λ₯Ό ν λ λΉλ¦¬λ κ²κ³Ό κ°κΈ°λλ¬Έμ μ»΄ν¨ν°λ‘ ν μ μλ λͺ¨λ μΌμ ν μ μλ€.
κ°μ₯ κΈ°λ³Έμ μΌλ‘, μΉμλ²λ₯Ό μ€μΉνκ³ μ΄λ₯Ό ν΅ν΄ μ¬μ©μκ° μΉ λΈλΌμ°μ λ₯Ό ν΅ν΄ μμ²νλ μλΉλ₯Ό μ 곡ν μ μλ€.
ꡬμ±νλ λ° νμν μκ°μ΄ μ§§κ³ , AMIλ₯Ό ν΅ν΄μ μ©λμ λ°λΌ λ€μν μ΄μ체μ μ λν μ νμ΄ κ°λ₯νλ©° λΏλ§μλλΌ CPU, RAM, μ©λ λν μ½κ² ꡬμ±ν μ μλ€λ μ₯μ μ΄ μλ€.
μννΈμ¨μ΄ ꡬμ±μ΄ κΈ°μ¬λ ν νλ¦ΏμΌλ‘, μ΄μ체μ (μλμ°, μ°λΆν¬, 리λ μ€)λ§ κΉλ €μλ ν νλ¦Ώμ μ νν μλ μκ³ , νΉμ λ°νμμ΄ μ€μΉλμ΄ μλ ν νλ¦Ώμ΄ μ 곡λλ κ²½μ°λ μλ€.(μ°λΆν¬ + node.js / μλμ° + JVM λ±)
μ©λμ λ§μΆ° μ΄μ체μ , λ°νμ λ€μ΄ ꡬμ±λ Settingμ μ νν μ μμΌλ©°, μ νν AMIλ₯Ό ν λλ‘ Instanceκ° κ΅¬μ±λλ€.(μ§μ AMIλ₯Ό ꡬμ±νλ κ²λ κ°λ₯)
AWSμμ μ 곡νλ κ΄κ³ν λ°μ΄ν°λ² μ΄μ€ μλΉμ€λ‘, μ¬μ©μλ μ΄κΈ° μ€μ μ μ μΈνκ³ μ μ₯λ λ°μ΄ν°λ₯Ό κ΄λ¦¬νκΈ°λ§ νλ©΄λκ³ , λ°μ΄ν°λ² μ΄μ€ μ μ§ λ³΄μμ κ΄λ ¨λ μΌλ€μ RDSμμ μ μ μΌλ‘ μλ κ΄λ¦¬ ν΄μ£ΌκΈ° λλ¬Έμ νΈλ¦¬νκ² μ¬μ©ν μ μλ€.
λν, λ€μν λ°μ΄ν°λ² μ΄μ€ μμ§ μ νμ§λ₯Ό μ 곡νλ€.(ORACLE, Amazon Aurora, SQL server, MySQL, MariaDB ...)
AWSμμ μ 곡νλ ν΄λΌμ°λ μ€ν λ¦¬μ§ μλΉμ€μ΄λ€.
Standard Class | Glacier Class |
---|---|
λ°μ΄ν° λ³΄κ΄ λΉμ© λΉμ | λ°μ΄ν° 보κ΄λΉμ© μ λ ΄ |
λ°μ΄ν° μμΈμ€ μλ λΉ λ¦ | λ°μ΄ν° μμΈμ€ μλ λλ¦Ό |
λ²μ©μ λͺ©μ | μ₯κΈ°μ μΈ λ³΄κ΄ λͺ©μ |
μ΄ μΈμλ Standard-IA, One Zone-IA, S3 Glacier Deep Archive λ± λ€μν μ€ν λ¦¬μ§ ν΄λμ€κ° μ‘΄μ¬νλ€.
β λ²ν·?
β κ°μ²΄?
S3μμ μ μ₯μμ λ°μ΄ν°λ₯Ό μ μ₯ν λ ν€-κ° νμ΄ νμμΌλ‘ λ°μ΄ν°λ₯Ό μ μ₯νκΈ° λλ¬Έμ λ²ν·μ λ΄κΈ°λ νμΌμ κ°μ²΄λΌκ³ λΆλ₯Έλ€.
νμΌμ κ°μλ μ€μ λ°μ΄ν°(μ΅λ 5TB)λ₯Ό μ μ₯ν μ μμΌλ©° μλ³μ μν μ νλ νμΌμ ν€(κ³ μ μ±)λ₯Ό μ΄μ©ν΄ μνλ κ°μ²΄λ₯Ό κ²μν μ μλ€.
κ°μ²΄λ νμΌκ³Ό λ©νλ°μ΄ν°λ‘ ꡬμ±λλ€.(μμ±μΌ, ν¬κΈ°, μ ν)
λͺ¨λ κ°μ²΄λ κ³ μ ν URL μ£Όμλ₯Ό κ°μ§κ³ μμΌλ©°, URL μ£Όκ³ λ₯Ό ν΅ν΄ μ κ·Όμ΄ κ°λ₯νλ€.
URL μ£Όμ νμ :http://[λ²ν·μ μ΄λ¦].S3.amazonaws.com/[κ°μ²΄μ ν€]
ν΄λΌμ΄μΈνΈλ₯Ό μ μ νμΌλ‘ λΉλνμ¬ λ°°ν¬νλ€. λ°λΌμ, S3λ₯Ό μ΄μ©ν΄ λ°°ν¬νλ€.
β λΉλ?
λΆνμν λ°μ΄ν° μ κ±° ν, ν΅ν©/μμΆνμ¬ λ°°ν¬νκΈ° μ΅μ νλ μνλ₯Ό λ§λλ κ²μΌλ‘, λ°μ΄ν°μ μ©λμ΄ μ€μ΄λ€κ³ μΉ μ¬μ΄νΈ λ‘λ© μλκ° λΉ¨λΌμ§λ€.
λν, μ¬μ©μλ€μ΄ λ λΉ λ₯΄κ² νμΌμ λ°μ μ μλλ‘, CDN μλΉμ€μΈ CloudFrontλ₯Ό ν΅ν΄μ Client Applicationμ μ 곡νλ€.
β CloudFront?
κ°μ§μ λ°μ΄ν° μΌν°μ λ°μ΄ν°λ₯Ό λΆμ°μμΌμ μ μ₯ν΄ λλ€κ° κ°κΉμ΄ μ§μμμ λ°μ΄ν°λ₯Ό μ£Όλ λ°©μμ CDN μλΉμ€
EC2 μλΉμ€λ₯Ό ν΅ν΄ μλ²λ₯Ό ꡬμ±νκ³ μ 곡νλ€.
λν, RDSλ₯Ό μ΄μ©νμ¬ EC2λ₯Ό ν΅ν΄ λ°°ν¬λ Server Applicationμ λ°μ΄ν°λ₯Ό μ μ₯, μ 곡νλ λ°μ΄ν°λ² μ΄μ€λ₯Ό λ°°ν¬ν μ μλ€.
λ°°ν¬ν μλΉμ€λ₯Ό μ§§κ³ μ§κ΄μ μΈ λλ©μΈ μ£Όμλ₯Ό ν΅ν΄ μ κ·ΌνκΈ° μν΄ Route 53 μλΉμ€λ₯Ό μ΄μ©νλ€.
Reference: μ½λμ€ν μ΄μΈ