๐ Elastic Load Balancer
1. Scalability(ํ์ฅ์ฑ) vs Availability(๊ณ ๊ฐ์ฉ์ฑ)
- Scalability์ Availability๋ ๋ชจ๋ ๋ถ์ฐ ์์คํ
์์ ์ค์ํ ๊ฐ๋
์ด์ง๋ง ์๋ก ๋ค๋ฅธ ๊ฐ๋
์ด๋ค.
- Scalability๋ ์์คํ
์ด ์ปค์ง๊ฑฐ๋ ์์์ง ์ ์๋ ๋ฅ๋ ฅ์ ์๋ฏธํ๋ค. ์ด๋ ์ฌ์ฉ์ ์, ๋ฐ์ดํฐ ์, ์ฒ๋ฆฌ๋ ๋ฑ์ด ์ฆ๊ฐํ ๋ ์์คํ
์ ์ฑ๋ฅ๊ณผ ์ฒ๋ฆฌ ๋ฅ๋ ฅ์ ์ ์งํ๊ฑฐ๋ ํฅ์์ํค๋ ๊ฒ์ ๋งํ๋ค. ์ด๋ฅผ ์ํด์๋ ํ์ฅ์ฑ ์๋ ์์คํ
๋์์ธ๊ณผ ๊ตฌํ์ด ํ์ํ๋ค.
- Availability๋ ์์คํ
์ด ์ ์์ ์ผ๋ก ์๋ํ๊ณ ์ฌ์ฉ ๊ฐ๋ฅํ ์ํ๋ฅผ ์ ์งํ๋ ๋ฅ๋ ฅ์ ์๋ฏธํ๋ค. ์ฆ, ์ฌ์ฉ์๊ฐ ์์ฒญํ๋ ์๋น์ค๋ฅผ ํญ์ ์ด์ฉ ๊ฐ๋ฅํ ์ํ๋ก ์ ์งํ๋ ๊ฒ์ด๋ค. ์ด๋ฅผ ์ํด์๋ ์์คํ
์ ์์ ์ฑ์ ๋์ด๊ณ ์ฅ์ ๋์ ๋ฅ๋ ฅ์ ๊ฐํํ๋ ๊ฒ์ด ์ค์ํ๋ค.
- ๋ฐ๋ผ์, Scalability๋ ์์คํ
์ ์ฑ๋ฅ๊ณผ ์ฒ๋ฆฌ ๋ฅ๋ ฅ์ ์ ์งํ๊ฑฐ๋ ํฅ์์ํค๋ ๋ฅ๋ ฅ์ ์๋ฏธํ๊ณ Availability๋ ์์คํ
์ ์์ ์ฑ๊ณผ ์ฌ์ฉ ๊ฐ๋ฅํ ์ํ๋ฅผ ์ ์งํ๋ ๋ฅ๋ ฅ์ ์๋ฏธํ๋ค.
2. ELB
ELB๋?
- Elastic Load Balancer๋ AWS์์ ์ ๊ณตํ๋ ๋ก๋ ๋ฐธ๋ฐ์ฑ ์๋น์ค๋ก, ๋ค์์ EC2 ์ธ์คํด์ค๋ฅผ ์ฌ์ฉํ์ฌ ํธ๋ํฝ์ ๋ถ์ฐ์ํจ๋ค. ๋ค์ํ ์ ํ์ ๋ก๋ ๋ฐธ๋ฐ์๊ฐ ์๋ค.
๋ก๋ ๋ฐธ๋ฐ์๋ฅผ ์ฐ๋ ์ด์
- ์์ฒญ์ ๋ถ์ฐํ๋ค. EC2์ ๋ก๋ ๋ฐธ๋ฐ์๋ ์ฐ๋์ด ๋๋ค.
- ํ๋์ Acess ํฌ์ธํธ๋ฅผ ์ ๊ณตํ๊ณ , ๋ก๋ ๋ฐธ๋ฐ์๊ฐ ์์์ ๋ถ์ฐํด์ค๋ค. DNS ์๋น์ค๋ฅผ ์ ๊ณตํ๋ Route 53๊ณผ ์ฐ๋์ด ๋๋ค.
- ๊ฐ๊ฐ์ ์ธ์คํด์ค์ ๋ํ ํฌ์ค ์ฒดํฌ๊ฐ ๊ฐ๋ฅํ๋ค.
- ์ฃผ์์ HTTPS๋ฅผ ์ฐ๊ฒฐํ ์ ์๋ค. ACM๊ณผ ์ฐ๋๋์ด HTTP๋ก ๋ณด์์ด ๋์ด ์์ง ์๋ ์น์ฌ์ดํธ์ HTTPS ์ธ์ฆ์ ๋ฌ์ HTTPS๋ก ๋ณ๊ฒฝ์ด ๊ฐ๋ฅํ๋ค.
- ๊ณต๊ฐ ํธ๋ํฝ๊ณผ ๋ด๋ถ ํธ๋ํฝ์ ๋ถ๋ฆฌํด์ ์ฌ์ฉํ ์ ์๋ค.
ELB์ ์ข
๋ฅ
- Application Load Balancer: OSI ๋ชจ๋ธ 7๊ณ์ธต์์ ๋์ํ๋ฉฐ, HTTP/HTTPS ํธ๋ํฝ์ ์ฒ๋ฆฌํ๋ค. ๋ํ, ์ปจํ
์ด๋ํ๋ ์ ํ๋ฆฌ์ผ์ด์
๊ณผ ์ฐ๋ํ์ฌ ์ฌ์ฉํ ์ ์๋ค.
- Network Load Balancer: OSI ๋ชจ๋ธ 4๊ณ์ธต์์ ๋์ํ๋ฉฐ, TCP/UDP ํธ๋ํฝ์ ์ฒ๋ฆฌํ๋ค. ๋์ ์ฒ๋ฆฌ๋์ ํ์๋ก ํ๋ ์ ํ๋ฆฌ์ผ์ด์
์ ์ ํฉํ๋ค.
- Classic Load Balancer: OSI ๋ชจ๋ธ 4~7๊ณ์ธต์์ ๋์ํ๋ฉฐ, HTTP/HTTPS, TCP/UDP ํธ๋ํฝ์ ์ฒ๋ฆฌํ๋ค. ๊ฐ์ฅ ์ค๋๋ ํํ์ ๋ก๋ ๋ฐธ๋ฐ์์ด๋ฉฐ, ๋๋ถ๋ถ์ ๊ฒฝ์ฐ Application Load Balancer๋ Network Load Balancer๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข๋ค.
๊ฐ๊ฐ์ ๋ก๋ ๋ฐธ๋ฐ์๋ ๋ค์ํ ๊ธฐ๋ฅ๊ณผ ๊ตฌ์ฑ์ ์ ๊ณตํ๋ฉฐ, ์ ํ์ ์ผ๋ก ์ฌ์ฉํ ์ ์๋ค. ์ด๋ฌํ ๋ก๋ ๋ฐธ๋ฐ์๋ ๊ณ ๊ฐ์ฉ์ฑ๊ณผ ํ์ฅ์ฑ์ ์ ๊ณตํ๋ฏ๋ก ์ธ์คํด์ค์ ์ฅ์ ์ ๋ถํ ๋ถ์ฐ์ ๋ํ ๋์์ ์ฉ์ดํ๊ฒ ํ๋ค.
3. SSL๊ณผ HTTPS
SSL์ด๋? Secure Sockets Layer
- ์ธํฐ๋ท ์์์ ์ ๋ณด๋ฅผ ์์ ํ๊ฒ ์ ์กํ๊ธฐ ์ํ ํ๋กํ ์ฝ์ด๋ค. SSL์ ํด๋ผ์ด์ธํธ์ ์๋ฒ ์ฌ์ด์ ์์ ํ ์ ์์ ๋ง๋ค์ด์ฃผ๋ฉฐ, ์ ์ก๋๋ ๋ฐ์ดํฐ๋ฅผ ์ํธํํ์ฌ ์ ๋ณด์ ์์ ์ฑ์ ๋ณด์ฅํ๋ค.
TLS๋? Transport Layer Security
- SSL์ ๋ณด์ํ ๊ธฐ์ ๋ก ํ์ฌ๋ ์ฌ์ค SSL์ด ์๋๋ผ TLS ๊ธฐ์ ์ด๋ค.
๐ Relational Database Service
1. RDS๋?
- RDS(Relational Database Service)๋ ๊ด๋ฆฌํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์๋น์ค๋ก, Amazon RDS ์๋น์ค๋ฅผ ํตํด ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์ง์ ์ ํํ๊ณ ํ์ํ ํฌ๊ธฐ ๋ฐ ์ฉ๋์ ์ ํํ์ฌ ์ธํ๋ผ๋ฅผ ์๋์ผ๋ก ํ๋ก๋น์ ๋ํ ์ ์๋ค.
- ๋ฐ๋ผ์ EC2 ์ธ์คํด์ค ๋ด์ ์ง์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ค์นํ๊ณ ๊ตฌ์ฑํ๋ ๋์ RDS ์๋น์ค๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์์ฑ, ๊ด๋ฆฌ ๋ฐ ํ์ฅํ ์ ์๋ค.
- SQL์ ์ฟผ๋ฆฌ์ธ์ด๋ก ์ฌ์ฉํ๋ ๊ด๊ณํDB๋ฅผ ์ํ ์๋น์ค๋ก Postgres, MySQL, MariaDB, Oracle, Microsoft SQL service๊ณผ ๊ฐ์ ์๋น์ค๋ฅผ ์ฌ์ฉํ ์ ์๋ค.
- RDS๋ DB๋ฅผ ์ํ ์ธํ๋ผ๋ฅผ ์๋์ผ๋ก ๊ตฌ์ถ ๋ฐ ์
๋ฐ์ดํธํ๊ณ , ์ง์์ ์ผ๋ก ๋ฐฑ์
๊ณผ ๋ณต๊ตฌ ๊ธฐ๋ฅ์ ์ง์ํ๋ค๋ ์ ์์ EC2 ์์ DB๋ฅผ ๋ง๋๋ ๊ฒ๋ณด๋ค ๋ซ๋ค๊ณ ํ ์ ์๋ค.
- ๋ํ, RDS๋ ๋ชจ๋ํฐ ๋์๋ณด๋, ์ฑ๋ฅ ํฅ์์ ์ํ read replicas, Disaster Recovery๋ฅผ ์ํ multi AZ, ํ/์์ง ํ์ฅ์ฑ ์ง์EBS ๋ฐฑ์
์ ์ง์ํ๋ค.
- ๊ทธ๋ฌ๋ SSH๋ก ์ ์์ ๋ถ๊ฐ๋ฅํ๋ค.
2. RDS ์ง์ ๊ธฐ๋ฅ
1) Storage Auto Scaling
- DB ์ฉ๋์ ํ๊ณ์น๊น์ง ์์ ๋ ์๋์ผ๋ก ์ฉ๋์ ๋๋ ค์ค๋ค.
- ์ฌ์ฉ์ ์ํด Maximum Storage Threshold๋ฅผ ์ง์ ํด์ค์ผ ํ๋ค.
- ์์ธก๋ถ๊ฐ๋ฅํ ํธ๋ํฝ์ด ์์๋ ์ ์ฉํ๋ค.
2) Read Replicas
- RDS์ ์๋ณธ DB๋ฅผ ๋ณต์ ํ read์ฉ ๋ณต์ DB๋ฅผ ๋ง๋ค์ด read๋ฅผ ๋ถ์ฐ์ํฌ ์ ์๋ค.
- read replica๋ ์ค์ง SELECT๋ฌธ๋ง ๊ฐ๋ฅํrh, INSERT, UPDATE, DELETE๋ ๋ถ๊ฐ๋ฅํ๋ค.
3) Multi AZ
- ๋ค๋ฅธ AZ์ RDS๋ฅผ ์ฎ๊ธด๋ค. ๋ฐ๋ผ์ ๊ฐ์ฉ์ฑ์ ๋์ฌ์ฃผ์ง๋ง, Multi AZ์์ read, write๊ฐ ๊ฐ๋ฅํ ๊ฒ์ ์๋๊ธฐ ๋๋ฌธ์ ํ์ฅ์ฑ์ ๋์ฌ์ฃผ์ง ์๋๋ค.
- ์๋์ผ๋ก ์ค์ ํ ํ์๊ฐ ์๋ค.
- read replica๋ multi az๋ก ์ฐ์ผ ์ ์๋ค.