ํ์ฉ๋๋ ๋ฆฌ์์ค ๊ตฌ์ฑ์ ์ ์ฉํ๊ณ ์ํํ ๊ตฌ์ฑ์ ๋ฐฉ์งํ๋ ์ ์ฑ ์ ์ฝ์กฐ๊ฑด์ ์ ์ํ๋ ๊ฒ์ด ์ข์ต๋๋ค. ์ด ์ฒญ์ฌ์ง์ ํ์ดํ๋ผ์ธ์์ ์กฐ์ง ์ ์ฑ ์ ์ฝ์กฐ๊ฑด๊ณผ ์ฝ๋ํ ์ธํ๋ผ(IaC) ๊ฒ์ฆ์ ์กฐํฉํ์ฌ ์ฌ์ฉํฉ๋๋ค. ์ด๋ฌํ ์ ์ด๋ ์ ์ฑ ๊ฐ์ด๋๋ผ์ธ์ ์ถฉ์กฑํ์ง ์๋ ๋ฆฌ์์ค ์์ฑ์ ๋ฐฉ์งํฉ๋๋ค. ์ํฌ๋ก๋์ ์ค๊ณ ๋ฐ ๋น๋ ์ด๊ธฐ์ ์ด๋ฌํ ์ ์ด๋ฅผ ์ ์ฉํ๋ฉด ์ดํ์ ํด๊ฒฐ ์์ ์ ํผํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
์กฐ์ง ์ ์ฑ ์ ์ฝ์กฐ๊ฑด
์กฐ์ง ์ ์ฑ ์๋น์ค๋ ์ถฉ๋ถํ ๊ถํ์ด ์๋ IAM ์ญํ ์ ๊ฐ์ง ์ฌ์ฉ์๋ Google Cloud ์กฐ์ง์์ ํน์ ๋ฆฌ์์ค ๊ตฌ์ฑ์ ๋ง๋ค ์ ์๋๋ก ์ ์ฝ์กฐ๊ฑด์ ์ ์ฉํฉ๋๋ค.
์ฒญ์ฌ์ง์ ์กฐ์ง ๋ ธ๋์์ ์ ์ฑ ์ ์ ์ฉํ์ฌ ์กฐ์ง ๋ด ๋ชจ๋ ํด๋ ๋ฐ ํ๋ก์ ํธ์์ ์ด๋ฌํ ์ ์ด๊ฐ ์์๋๋๋ก ํฉ๋๋ค. ์ด ์ ์ฑ ๋ฒ๋ค์ ์ ์ฑ ์ ๋ํ ์์ธ๋ฅผ ์๋์ ์ผ๋ก ํ์ฉํ์ง ์๋ ํ VM์ ๊ณต๊ฐ ์ธํฐ๋ท์ ๋ ธ์ถํ๊ฑฐ๋ ์คํ ๋ฆฌ์ง ๋ฒํท์ ๋ํ ๊ณต๊ฐ ์ก์ธ์ค ๊ถํ์ ๋ถ์ฌํ๋ ๋ฑ์ ํน์ ํ ๊ณ ์ํ ๊ตฌ์ฑ์ ๋ฐฉ์งํ๋๋ก ์ค๊ณ๋์์ต๋๋ค.
๋ค์ ํ์์๋ ์ฒญ์ฌ์ง์ ๊ตฌํ๋ ์กฐ์ง ์ ์ฑ ์ ์ฝ์กฐ๊ฑด์ ๋ณด์ฌ์ค๋๋ค.
์กฐ์ง ์ ์ฑ ์ ์ฝ์กฐ๊ฑด | ์ค๋ช |
---|---|
| Compute Engine VM์ ์ค์ฒฉ๋ ๊ฐ์ํ๊ฐ ์๋ชป ๊ตฌ์ฑ๋ ๊ฒฝ์ฐ VM์ ๋ชจ๋ํฐ๋ง ๋ฐ ๊ธฐํ ๋ณด์ ๋๊ตฌ๋ฅผ ํผํ ์ ์์ต๋๋ค. ์ด ์ ์ฝ์กฐ๊ฑด์ ์ค์ฒฉ๋ ๊ฐ์ํ๋ฅผ ๋ง๋ค ์ ์๋๋ก ๋ฐฉ์งํฉ๋๋ค. |
|
|
| ์ธ๋ถ IPv6 ์๋ธ๋ท์ด ์๋ชป ๊ตฌ์ฑ๋ ๊ฒฝ์ฐ ์น์ธ๋์ง ์์ ์ธํฐ๋ท ์ก์ธ์ค์ ๋ ธ์ถ๋ ์ ์์ต๋๋ค. ์ด ์ ์ฝ์กฐ๊ฑด์ ์ธ๋ถ IPv6 ์๋ธ๋ท์ ๋ง๋ค ์ ์๋๋ก ๋ฐฉ์งํฉ๋๋ค. |
| ๋ฉํ๋ฐ์ดํฐ์์ SSH ํค๋ฅผ ์ค์ ํ๋ ๊ธฐ๋ณธ ๋์์ ํค๊ฐ ๋ ธ์ถ๋ ๊ฒฝ์ฐ VM์ ๋ํ ์น์ธ๋์ง ์์ ์๊ฒฉ ์ก์ธ์ค๋ฅผ ํ์ฉํ ์ ์์ต๋๋ค. ์ด ์ ์ฝ์กฐ๊ฑด์ ๋ฉํ๋ฐ์ดํฐ ๊ธฐ๋ฐ SSH ํค ๋์ OS ๋ก๊ทธ์ธ์ ์ฌ์ฉ์ ์ ์ฉํฉ๋๋ค. |
|
์ธ๋ถ IP ์ฃผ์์ VM ํ๋กํ ์ฝ ์ ๋ฌ์ด ์๋ชป ๊ตฌ์ฑ๋ ๊ฒฝ์ฐ ์น์ธ๋์ง ์์ ์ธํฐ๋ท ์ด๊ทธ๋ ์ค๋ก ์ด์ด์ง ์ ์์ต๋๋ค. ์ด ์ ์ฝ์กฐ๊ฑด์ ๋ด๋ถ ์ฃผ์์๋ง VM ํ๋กํ ์ฝ ์ ๋ฌ์ ํ์ฉํฉ๋๋ค. |
|
๊ณต์ VPC ํธ์คํธ ํ๋ก์ ํธ๋ฅผ ์ญ์ ํ๋ฉด ๋คํธ์ํน ๋ฆฌ์์ค๋ฅผ ์ฌ์ฉํ๋ ๋ชจ๋ ์๋น์ค ํ๋ก์ ํธ์ ๋ฐฉํด๊ฐ ๋ ์ ์์ต๋๋ค. ์ด ์ ์ฝ์กฐ๊ฑด์ ์ด๋ฌํ ํ๋ก์ ํธ์ ํ๋ก์ ํธ ์ ์ทจ๊ถ ์ญ์ ๋ฅผ ๋ง์ ๊ณต์ VPC ํธ์คํธ ํ๋ก์ ํธ์ ์ฐ๋ฐ์ ๋๋ ์ ์์ ์ญ์ ๋ฅผ ๋ฐฉ์งํฉ๋๋ค. |
|
์ ์ญ(ํ๋ก์ ํธ ์ ์ฒด) ๋ด๋ถ DNS์ ๋ํ ๊ธฐ์กด ์ค์ ์ ์๋น์ค ๊ฐ์ฉ์ฑ์ ์ ํ์ํค๋ฏ๋ก ๊ถ์ฅ๋์ง ์์ต๋๋ค. ์ด ์ ์ฝ์กฐ๊ฑด์ ๊ธฐ์กด ์ค์ ์ ์ฌ์ฉํ ์ ์๋๋ก ๋ฐฉ์งํฉ๋๋ค. |
| ๊ธฐ๋ณธ VPC ๋คํธ์ํฌ์ ๊ณผ๋ํ ๊ถํ์ ๊ธฐ๋ณธ VPC ๋ฐฉํ๋ฒฝ ๊ท์น์ด Compute Engine API๋ฅผ ์ฌ์ฉ ์ค์ ํ๋ ๋ชจ๋ ์๋ก์ด ํ๋ก์ ํธ์ ์์ฑ๋ฉ๋๋ค. ์ด ์ ์ฝ์กฐ๊ฑด์ ๊ธฐ๋ณธ ๋คํธ์ํฌ ๋ฐ ๊ธฐ๋ณธ VPC ๋ฐฉํ๋ฒฝ ๊ท์น ๋ง๋ค๊ธฐ๋ฅผ ๊ฑด๋๋๋๋ค. |
| ๊ธฐ๋ณธ์ ์ผ๋ก VM์ ์น์ธ๋์ง ์์ ์ธํฐ๋ท ์ก์ธ์ค๋ก ์ด์ด์ง ์ ์๋ ์ธ๋ถ IPv4 ์ฃผ์๋ก ์์ฑ๋ฉ๋๋ค. ์ด ์ ์ฝ์กฐ๊ฑด์ VM์ด ์ฌ์ฉํ ์ ์๋ ์ธ๋ถ IP ์ฃผ์์ ํ์ฉ ๋ชฉ๋ก์ ๋น์ด ์๋๋ก ๊ตฌ์ฑํ๊ณ ๋ค๋ฅธ ๋ชจ๋ ์ฃผ์๋ฅผ ๊ฑฐ๋ถํฉ๋๋ค. |
|
๊ธฐ๋ณธ์ ์ผ๋ก ๋๋ฉ์ธ์ ๋ํ ์๋ฆผ์ ๋ค๋ฅธ ๋๋ฉ์ธ์ผ๋ก ์ ์กํ๋๋ก ํ์ ์ฐ๋ฝ์ฒ๋ฅผ ๊ตฌ์ฑํ ์ ์์ต๋๋ค. ์ด ์ ์ฝ์กฐ๊ฑด์ ์น์ธ๋ ๋๋ฉ์ธ์ ์ด๋ฉ์ผ ์ฃผ์๋ง ํ์ ์ฐ๋ฝ์ฒ์ ์์ ์๋ก ์ค์ ํ ์ ์๋๋ก ์ ์ฉํฉ๋๋ค. |
| ๊ธฐ๋ณธ์ ์ผ๋ก ๋น๊ด๋ฆฌ ๊ณ์ , ์ธ๋ถ ์กฐ์ง์ ์ํ๋ ๊ณ์ ์ ํฌํจํ์ฌ ๋ชจ๋ Google ๊ณ์ ์ ํ์ฉ ์ ์ฑ ์ ๋ถ์ฌํ ์ ์์ต๋๋ค. ์ด ์ ์ฝ์กฐ๊ฑด์ ์กฐ์ง์ ํ์ฉ ์ ์ฑ ์ ์์ฒด ๋๋ฉ์ธ์ ๊ด๋ฆฌ ๊ณ์ ์๋ง ๋ถ์ฌํ ์ ์๊ฒ ํฉ๋๋ค. ์ ํ์ ์ผ๋ก ์ถ๊ฐ ๋๋ฉ์ธ์ ํ์ฉํ ์ ์์ต๋๋ค. |
|
๊ธฐ๋ณธ์ ์ผ๋ก ๊ธฐ๋ณธ ์๋น์ค ๊ณ์ ์๋ ์๋์ผ๋ก ๊ณผ๋ํ ๊ถํ ์ญํ ์ด ๋ถ์ฌ๋ฉ๋๋ค. ์ด ์ ์ฝ์กฐ๊ฑด์ ๊ธฐ๋ณธ ์๋น์ค ๊ณ์ ์ ๋ํ ์๋ IAM ์ญํ ๋ถ์ฌ๋ฅผ ๋ฐฉ์งํฉ๋๋ค. |
|
์๋น์ค ๊ณ์ ํค๋ ์ํ ์์ค์ด ๋์ ์๊ตฌ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด์ด๋ฉฐ ๋๋ถ๋ถ์ ๊ฒฝ์ฐ ์๋น์ค ๊ณ์ ํค๋ณด๋ค ์์ ํ ๋์์ ์ฌ์ฉํ ์ ์์ต๋๋ค. ์ด ์ ์ฝ์กฐ๊ฑด์ ์๋น์ค ๊ณ์ ํค๋ฅผ ๋ง๋ค ์ ์๋๋ก ๋ฐฉ์งํฉ๋๋ค. |
|
์๋น์ค ๊ณ์ ํค ์๋ฃ๋ฅผ ์ ๋ก๋ํ๋ฉด ํค ์๋ฃ๊ฐ ๋ ธ์ถ๋ ๊ฒฝ์ฐ ์ํ์ด ์ฆ๊ฐํ ์ ์์ต๋๋ค. ์ด ์ ์ฝ์กฐ๊ฑด์ ์๋น์ค ๊ณ์ ํค ์ ๋ก๋๋ฅผ ๋ฐฉ์งํฉ๋๋ค. |
|
์ธ์คํด์ค๊ฐ Cloud SQL ์ธ์ฆ ํ๋ก์ ์์ด ์น์ธ๋ ๋คํธ์ํฌ๋ฅผ ์ฌ์ฉํ๋๋ก ๊ตฌ์ฑ๋ ๊ฒฝ์ฐ Cloud SQL ์ธ์คํด์ค๊ฐ ์ธ์ฆ๋์ง ์์ ์ธํฐ๋ท ์ก์ธ์ค์ ๋ ธ์ถ๋ ์ ์์ต๋๋ค. ์ด ์ ์ฑ ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ก์ธ์ค๋ฅผ ์ํ ์น์ธ๋ ๋คํธ์ํฌ ๊ตฌ์ฑ์ ๋ฐฉ์งํ๊ณ ๋์ Cloud SQL ์ธ์ฆ ํ๋ก์๋ฅผ ๊ฐ์ ๋ก ์ฌ์ฉํฉ๋๋ค. |
| Cloud SQL ์ธ์คํด์ค๋ ์ธ์คํด์ค๊ฐ ๊ณต๊ฐ IP ์ฃผ์๋ก ์์ฑ๋ ๊ฒฝ์ฐ ์ธ์ฆ๋์ง ์์ ์ธํฐ๋ท ์ก์ธ์ค์ ๋ ธ์ถ๋ ์ ์์ต๋๋ค. ์ด ์ ์ฝ์กฐ๊ฑด์ Cloud SQL ์ธ์คํด์ค์์ ๊ณต๊ฐ IP ์ฃผ์๋ฅผ ๋ฐฉ์งํฉ๋๋ค. |
| ๊ธฐ๋ณธ์ ์ผ๋ก Cloud Storage์ ๊ฐ์ฒด๋ IAM ๋์ ๊ธฐ์กด ์ก์ธ์ค ์ ์ด ๋ชฉ๋ก(ACL)์ ํตํด ์ก์ธ์คํ ์ ์์ด ์๋ชป ๊ตฌ์ฑ๋ ๊ฒฝ์ฐ ์ก์ธ์ค ์ ์ด๊ฐ ์ผ๊ด๋์ง ์๊ณ ์ค์๋ก ๋
ธ์ถ๋ ์ ์์ต๋๋ค. ๊ธฐ์กด ACL ์ก์ธ์ค๋ |
|
Cloud Storage ๋ฒํท์ด ์๋ชป ๊ตฌ์ฑ๋ ๊ฒฝ์ฐ ์ธ์ฆ๋์ง ์์ ์ธํฐ๋ท ์ก์ธ์ค์ ๋
ธ์ถ๋ ์ ์์ต๋๋ค. ์ด ์ ์ฝ์กฐ๊ฑด์ |
์ด๋ฌํ ์ ์ฑ
์ ๋๋ถ๋ถ์ ๊ณ ๊ฐ๊ณผ ๋๋ถ๋ถ์ ์๋๋ฆฌ์ค์ ๊ถ์ฅ๋๋ ์์์ ์ด์ง๋ง ํน์ ์ํฌ๋ก๋ ์ ํ์ ์์ฉํ๋๋ก ์กฐ์ง ์ ์ฑ
์ ์ฝ์กฐ๊ฑด์ ์์ ํด์ผ ํ ๋๋ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด Cloud Storage ๋ฒํท์ Cloud CDN์ ๋ฐฑ์๋๋ก ์ฌ์ฉํ์ฌ ๊ณต๊ฐ ๋ฆฌ์์ค๋ฅผ ํธ์คํ
ํ๋ ์ํฌ๋ก๋๋ฅผ storage.publicAccessPrevention
์ผ๋ก ์ฐจ๋จํ๊ฑฐ๋ ์ธ์ฆ์ด ํ์ ์๋ ๊ณต๊ฐ์ฉ Cloud Run ์ฑ์ iam.allowedPolicyMemberDomains
๋ก ์ฐจ๋จํฉ๋๋ค. ์ด ๊ฒฝ์ฐ ์ ํ๋ ์์ธ๋ฅผ ํ์ฉํ๋๋ก ํด๋ ๋๋ ํ๋ก์ ํธ ์์ค์์ ์กฐ์ง ์ ์ฑ
์ ์์ ํ์ธ์.
์ ์ฑ
์์ธ ๋๋ ์ ์ฉ์ ๋ถ์ฌํ๋ ํ๊ทธ๋ฅผ ์ ์ํ ๋ค์ ํ๋ก์ ํธ ๋ฐ ํด๋์ ํ๊ทธ๋ฅผ ์ ์ฉํ์ฌ ์กฐ์ง ์ ์ฑ
์ ์ ์ฝ์กฐ๊ฑด์ ์กฐ๊ฑด๋ถ๋ก ์ถ๊ฐํ ์๋ ์์ต๋๋ค.
์ถ๊ฐ ์ ์ฝ์กฐ๊ฑด์ ์ฌ์ฉ ๊ฐ๋ฅํ ์ ์ฝ์กฐ๊ฑด ๋ฐ ์ปค์คํ ์ ์ฝ์กฐ๊ฑด์ ์ฐธ์กฐํ์ธ์.
์ฝ๋ํ ์ธํ๋ผ์ ๋ฐฐํฌ ์ ๊ฒ์ฆ
์ด ์ฒญ์ฌ์ง์์๋ GitOps ์ ๊ทผ ๋ฐฉ์์ ์ฌ์ฉํ์ฌ ์ธํ๋ผ๋ฅผ ๊ด๋ฆฌํฉ๋๋ค. ์ฆ, ๋ฒ์ ์ด ์ ์ด๋๋ ์ฝ๋ํ ์ธํ๋ผ ์ ์ด(IaC)๋ฅผ ํตํด ๋ชจ๋ ์ธํ๋ผ ๋ณ๊ฒฝ์ฌํญ์ด ๊ตฌํ๋๋ฉฐ ๋ฐฐํฌ ์ ์ ๊ฒ์ฆ๋ ์ ์์ต๋๋ค.
์ฒญ์ฌ์ง์ ์ ์ฉ๋ ์ ์ฑ ์ ํ์ดํ๋ผ์ธ์์ ๋ฐฐํฌํ ์ ์๋ ํ์ฉ๋๋ ๋ฆฌ์์ค ๊ตฌ์ฑ์ ์ ์ํฉ๋๋ค. GitHub ์ ์ฅ์์ ์ ์ถ๋ ์ฝ๋๊ฐ ์ ์ฑ ์ ๊ฒ์ ํต๊ณผํ์ง ๋ชปํ๋ฉด ๋ฆฌ์์ค๊ฐ ๋ฐฐํฌ๋์ง ์์ต๋๋ค.
ํ์ดํ๋ผ์ธ ์ฌ์ฉ ๋ฐฉ๋ฒ ๋ฐ CI/CD ์๋ํ๋ฅผ ํตํ ์ ์ด ์ ์ฉ ๋ฐฉ๋ฒ์ ๋ฐฐํฌ ๋ฐฉ๋ฒ๋ก ์ ์ฐธ์กฐํ์ธ์.
๋ค์ ๋จ๊ณ
- ๋ฐฐํฌ ๋ฐฉ๋ฒ๋ก (์ด ์๋ฆฌ์ฆ์ ๋ค์ ๋ฌธ์) ์ฝ์ด๋ณด๊ธฐ