post-thumbnail

Kubebuilder๋กœ ๋งŒ๋“œ๋Š” ๋‚˜๋งŒ์˜ Kubernetes ์˜คํผ๋ ˆ์ดํ„ฐ

์Šคํ„ฐ๋””์—์„œ Kubernetes ์˜คํผ๋ ˆ์ดํ„ฐ๋ฅผ ๊ณต๋ถ€ํ•˜๋‹ค ๋ณด๋‹ˆ, ๊ฐ€์žฅ ๊ธฐ๋ณธ์ ์ธ ํ˜•ํƒœ๋ผ๋„ ์ง์ ‘ ๋งŒ๋“ค์–ด๋ณด๊ณ  ์‹ถ๋‹ค๋Š” ์ƒ๊ฐ์ด ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค.๊ทธ๋ž˜์„œ ์ด๋ฒˆ ๊ธ€์—์„œ๋Š” Kubebuilder๋ฅผ ์‚ฌ์šฉํ•ด Deployment๊ฐ€ ์ƒ์„ฑ๋  ๋•Œ ์ž๋™์œผ๋กœ Prometheus ์•Œ๋ฆผ ๊ทœ์น™์„ ์ƒ์„ฑํ•˜๋Š” Kubern

5์ผ ์ „
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

PR ์ถฉ๋Œ? GitHub Actions์ด ๋จผ์ € ์•Œ๋ ค๋“œ๋ฆฝ๋‹ˆ๋‹ค

ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ•˜๋‹ค ๋ณด๋ฉด ๋™์‹œ์— ์ž‘์—…ํ•˜๋ฉด์„œ PR์ด ์Œ“์ด๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ์ด๋•Œ main/develop ๋ธŒ๋žœ์น˜์— ์ƒˆ๋กœ์šด ์ปค๋ฐ‹์ด ํ‘ธ์‹œ๋˜๋ฉด, ๊ธฐ์กด์— ์—ด๋ ค ์žˆ๋˜ PR์ด ์ถฉ๋Œ์„ ์ผ์œผํ‚ค๋Š” ์ผ์ด ์ž์ฃผ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.๋ฌธ์ œ๋Š” ์ด๋Ÿฐ ์ถฉ๋Œ์„ ๋งค๋ฒˆ ์ง์ ‘ ํ™•์ธํ•ด์•ผ ํ•œ๋‹ค๋Š” ์ ์ž…๋‹ˆ๋‹ค. PR์ด ์—ฌ๋Ÿฌ ๊ฐœ ์Œ“์ด

5์ผ ์ „
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ์˜คํผ๋ ˆ์ดํ„ฐ ํŒจํ„ด

๋“ค์–ด๊ฐ€๋ฉฐ ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋‹ค ๋ณด๋ฉด CRD(Custom Resource Definition), ์˜คํผ๋ ˆ์ดํ„ฐ(Operator) ๊ฐ™์€ ์šฉ์–ด๋ฅผ ์ž์ฃผ ์ ‘ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ๐Ÿ‘€ ์ด ๊ธ€์—์„œ๋Š” ์ด ๊ฐœ๋…๋“ค์ด ๋ฌด์—‡์ด๊ณ , ์–ด๋–ค ์—ญํ• ์„ ํ•˜๋Š”์ง€ ์ •๋ฆฌํ•ด๋ณด๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ๋จผ์ €, ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค๋Š” ๊ธฐ๋ณธ

6์ผ ์ „
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท

Go ๋ชจ๋“ˆ ์ž‘๋™ ๋ฐฉ์‹

go get ๋ช…๋ น์–ด์„ ์‚ฌ์šฉํ–ˆ๋Š”๋ฐ ์ตœ์‹  ์ฝ”๋“œ๊ฐ€ ๋‚ด๋ ค์˜ค์ง€ ์•Š๋Š” ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ์ฒ˜์Œ์—๋Š” ๋‹น์—ฐํžˆ github.com/~ ํ˜•ํƒœ์˜ ๋ชจ๋“ˆ์ด๋ผ GitHub์—์„œ ์ง์ ‘ ๊ฐ€์ ธ์˜ค๋Š” ์ค„ ์•Œ์•˜์ง€๋งŒ, ์‹ค์ œ๋กœ๋Š” ๋‹ค๋ฅธ ๋ฐฉ์‹์œผ๋กœ ๋™์ž‘ํ•˜๊ณ  ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.๐Ÿ‘€ ์ด ๊ธ€์—์„œ๋Š” Go ๋ชจ๋“ˆ ์‹œ์Šคํ…œ์ด ์–ด๋–ป๊ฒŒ ๋™

2025๋…„ 11์›” 23์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท

Terraform ๋ณ‘๋ ฌ ์‹คํ–‰ ๊ตฌ์กฐ ์•Œ์•„๋ณด๊ธฐ

parallelism ํŒŒ๋ผ๋ฏธํ„ฐTerraform CLI๋Š” --parallelism=N ์˜ต์…˜์„ ํ†ตํ•ด ๋™์‹œ์— ์‹คํ–‰ํ•  ๋ฆฌ์†Œ์Šค์˜ ์ตœ๋Œ€ ๊ฐœ์ˆ˜๋ฅผ ์ œํ•œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ธฐ๋ณธ๊ฐ’์€ 10์ž…๋‹ˆ๋‹ค.๐Ÿ”— ํ…Œ๋ผํผ ๊ณต์‹ ๋ฌธ์„œ ๋ฐ”๋กœ๊ฐ€๊ธฐinternal/terraform/context.go ํ…Œ๋ผํผ ์ฝ”

2025๋…„ 9์›” 13์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

Object Storage์™€ CDN์œผ๋กœ ์ •์  ์›น์‚ฌ์ดํŠธ ๋ฐฐํฌํ•˜๊ธฐ

์ •์  ํŒŒ์ผ์„ ๋ฐฐํฌํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋‹ค์–‘ํ•˜์ง€๋งŒ, ์ด๋ฒˆ ํ”„๋กœ์ ํŠธ์—์„œ๋Š” ๋น„์šฉ ํšจ์œจ์ ์ด๋ฉด์„œ๋„ ํด๋ผ์šฐ๋“œ ํ™˜๊ฒฝ์— ์ตœ์ ํ™”๋œ ๋ฐฉ์‹์„ ์„ ํƒํ–ˆ์Šต๋‹ˆ๋‹ค.KakaoCloud์—์„œ ์ œ๊ณตํ•˜๋Š” Object Storage์™€ CDN ์กฐํ•ฉ์„ ํ™œ์šฉํ•˜๋ฉด, ๋ณ„๋„์˜ ์„œ๋ฒ„ ์—†์ด๋„ React/Vite ๊ฐ™์€ ํ”„๋ก ํŠธ์—”๋“œ ๋นŒ

2025๋…„ 8์›” 17์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

OpenStack Endpoint [CRUD] Functional Test

OpenStack SDK์˜ Identity Endpoint์— ๋Œ€ํ•œ functional test๊ฐ€ ์—†์–ด, ํ…Œ์ŠคํŠธ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•ด๋ณด์•˜์Šต๋‹ˆ๋‹ค ๐Ÿ˜ƒ (with ์˜คํ”ˆ์†Œ์Šค ์ปจํŠธ๋ฆฌ๋ทฐ์…˜!)OpenStack์—์„œ Endpoint๋Š” ๊ฐ ์„œ๋น„์Šค์˜ ์ ‘์† ์ง€์ ์„ ์ •์˜ํ•˜๋Š” ํ•ต์‹ฌ ๊ตฌ์„ฑ ์š”์†Œ์ž…๋‹ˆ๋‹ค.

2025๋…„ 8์›” 15์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

OpenStack Endpoint CRUD ๋™์ž‘ ๊ตฌ์กฐ

OpenStack Endpoint๋Š” ๊ฐ ์„œ๋น„์Šค์˜ ์ ‘์† ์ง€์ ์„ ์ •์˜ํ•˜๋Š” ํ•ต์‹ฌ ์š”์†Œ๋กœ, Keystone์— ๋“ฑ๋ก๋œ ์„œ๋น„์Šค๊ฐ€ "์–ด๋””์—์„œ, ์–ด๋–ค ๋ฐฉ์‹์œผ๋กœ" ์ ‘๊ทผ ๊ฐ€๋Šฅํ•œ์ง€๋ฅผ ์•Œ๋ ค์ฃผ๋Š” ์ฃผ์†Œ ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค.๊ตฌ์„ฑ ์š”์†ŒURL: ์„œ๋น„์Šค์— ์ ‘๊ทผํ•  ์‹ค์ œ ์ฃผ์†ŒInterface: ์ ‘๊ทผ ์œ ํ˜•pub

2025๋…„ 8์›” 10์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท

Spring Boot ์ฟ ํ‚ค ์ธ์ฆ์„ ์œ„ํ•œ Nginx HTTPS ์„ค์ •

Spring ๊ฐœ๋ฐœ ์„œ๋ฒ„์—์„œ ์ธ์ฆ ๋ฐฉ์‹์„ ํ—ค๋” Access Token์—์„œ ์ฟ ํ‚ค ๊ธฐ๋ฐ˜์œผ๋กœ ๋ณ€๊ฒฝํ•˜๋ฉด์„œ HTTPS ์ ์šฉ์ด ํ•„์š”ํ–ˆ์Šต๋‹ˆ๋‹ค. Secure ์†์„ฑ์ด ์žˆ๋Š” ์ฟ ํ‚ค๋Š” HTTPS ํ™˜๊ฒฝ์—์„œ๋งŒ ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์ž๋™ ์ „์†ก๋˜๊ธฐ ๋•Œ๋ฌธ์—, ๊ฐœ๋ฐœ ์„œ๋ฒ„์—๋„ ์ธ์ฆ์„œ ์ ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.์ด๋ฒˆ ๊ธ€์—์„œ๋Š”

2025๋…„ 8์›” 9์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

Barbican

๋“ค์–ด๊ฐ€๋ฉฐ ํด๋ผ์šฐ๋“œ ํ™˜๊ฒฝ์—์„œ๋Š” TLS ์ธ์ฆ์„œ, ์•”ํ˜ธํ™” ํ‚ค, API ํ† ํฐ๊ณผ ๊ฐ™์€ ๋ฏผ๊ฐ ์ •๋ณด๊ฐ€ ํ•„์ˆ˜์ ์œผ๋กœ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ฐ์ดํ„ฐ๋Š” ์•ˆ์ „ํ•˜๊ฒŒ ๋ณด๊ด€ํ•˜๊ณ , ํ•„์š”ํ•  ๋•Œ๋งŒ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ๊ฒƒ์ด ๋ณด์•ˆ์˜ ํ•ต์‹ฌ์ž…๋‹ˆ๋‹ค. Barbican์€ OpenStack ํ™˜๊ฒฝ์—์„œ ์ด๋Ÿฌํ•œ ์—ญํ• 

2025๋…„ 8์›” 9์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

gRPC

gRPC๋Š” Google์ด ๊ฐœ๋ฐœํ•œ ๊ณ ์„ฑ๋Šฅ ์˜คํ”ˆ์†Œ์Šค RPC(Remote Procedure Call) ํ”„๋ ˆ์ž„์›Œํฌ์ž…๋‹ˆ๋‹ค. RPC๋ž€ ์›๊ฒฉ ์„œ๋ฒ„์˜ ํ•จ์ˆ˜๋ฅผ ๋งˆ์น˜ ๋กœ์ปฌ ํ•จ์ˆ˜์ฒ˜๋Ÿผ ํ˜ธ์ถœํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” ํ”„๋ ˆ์ž„์›Œํฌ์ž…๋‹ˆ๋‹ค.ํด๋ผ์ด์–ธํŠธ๋Š” ์›๊ฒฉ ์„œ๋ฒ„์˜ ๋ฉ”์„œ๋“œ๋ฅผ ๋กœ์ปฌ ํ•จ์ˆ˜์ฒ˜๋Ÿผ ํ˜ธ์ถœ์„œ๋ฒ„๋Š” ์‹ค์ œ ๋น„

2025๋…„ 7์›” 29์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท

Protocol Buffers

์‹œ์Šคํ…œ ๊ฐ„ ํ†ต์‹ ์ด ์ค‘์š”ํ•œ ์›น ์„œ๋น„์Šค๋‚˜ ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ํ™˜๊ฒฝ์—์„œ, JSON์€ ๊ฐ€์žฅ ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋Š” ๋ฐ์ดํ„ฐ ํฌ๋งท์ž…๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ Google์˜ Protocol Buffers๋Š” ๋” ๋†’์€ ์„ฑ๋Šฅ์„ ์ œ๊ณตํ•˜๋Š” ๋Œ€์•ˆ์œผ๋กœ ์ ์  ๋” ๋งŽ์ด ์‚ฌ์šฉ๋˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.์ด ๊ธ€์—์„œ๋Š” Protocol Buff

2025๋…„ 7์›” 29์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

Jenkins๋กœ ๋„์ปค ์ด๋ฏธ์ง€ ๋นŒ๋“œ ํŒŒ์ดํ”„๋ผ์ธ ๊ตฌ์„ฑํ•˜๊ธฐ

์ด ๊ธ€์—์„œ๋Š” Jenkins๋ฅผ ํ™œ์šฉํ•ด GitHub์˜ ์ฝ”๋“œ ๋ณ€๊ฒฝ์„ ์ž๋™์œผ๋กœ ๊ฐ์ง€ํ•˜๊ณ , Docker ์ด๋ฏธ์ง€๋ฅผ ๋นŒ๋“œํ•ด Docker Hub์— ํ‘ธ์‹œํ•˜๋Š” ํŒŒ์ดํ”„๋ผ์ธ ๊ตฌ์ถ• ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค ๐Ÿ‘€Jenkins๊ฐ€ GitHub ์ €์žฅ์†Œ์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋„๋ก Personal Access T

2025๋…„ 7์›” 26์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

๋กœ์ปฌ Jenkins์— GitHub Webhook ์—ฐ๊ฒฐํ•˜๊ธฐ

1. ngrok ์„ค์น˜ ๋ฐ ์ธ์ฆ ๐Ÿ”— ngrok ํ™ˆํŽ˜์ด์ง€์—์„œ ๋ฐœ๊ธ‰ํ•œ ํ† ํฐ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. 2. Jenkins ์‹คํ–‰ ํฌํŠธ ํ™•์ธ ๋ฐ ngrok ํ„ฐ๋„ ์—ด๊ธฐ Jenkins๊ฐ€ localhost:8081์—์„œ ์‹คํ–‰ ์ค‘์ด๋ผ๋ฉด ๋‹ค์Œ ๋ช…๋ น์–ด๋กœ ์™ธ๋ถ€ ์ ‘๊ทผ ์ฃผ์†Œ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. ์ƒ์„ฑ๋œ ์ฃผ

2025๋…„ 7์›” 26์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

Jenkins์—์„œ docker: command not found ํŠธ๋Ÿฌ๋ธ”์ŠˆํŒ…

Mac์— Homebrew๋กœ Jenkins๋ฅผ ์„ค์น˜ํ•ด ๋กœ์ปฌ์—์„œ ํŒŒ์ดํ”„๋ผ์ธ์„ ์‹คํ–‰ํ•˜๋˜ ์ค‘, Docker ์ด๋ฏธ์ง€๋ฅผ ๋นŒ๋“œํ•˜๋Š” ๋‹จ๊ณ„์—์„œ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.ํ„ฐ๋ฏธ๋„์—์„œ๋Š” which docker ๋ช…๋ น์–ด๋ฅผ ํ†ตํ•ด /usr/local/bin/docker ๊ฒฝ๋กœ๊ฐ€ ์ •์ƒ์ ์œผ๋กœ ํ™•์ธ

2025๋…„ 7์›” 26์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

Jenkins ์„ค์น˜ํ•˜๊ธฐ

Jenkins๋Š” Docker, WAR ํŒŒ์ผ, Homebrew ๋“ฑ์„ ํ†ตํ•ด ๋‹ค์–‘ํ•œ ๋ฐฉ์‹์œผ๋กœ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ธ€์—์„œ๋Š” macOS ํ™˜๊ฒฝ์—์„œ Homebrew๋ฅผ ์ด์šฉํ•ด Jenkins๋ฅผ ์„ค์น˜ํ•˜๊ณ , ๊ธฐ๋ณธ ํฌํŠธ๋ฅผ ๋ณ€๊ฒฝํ•˜๋Š” ๋ฐฉ๋ฒ•๊นŒ์ง€ ์ •๋ฆฌํ•ฉ๋‹ˆ๋‹ค :)Jenkins๋Š” ์˜คํ”ˆ์†Œ์Šค CI/

2025๋…„ 7์›” 24์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

Terraform Associate (003) (HCTA0-003) ํ•ฉ๊ฒฉ ํ›„๊ธฐ

์ตœ๊ทผ์— HashiCorp Certified: Terraform Associate (HCTA0-003) ์ž๊ฒฉ์ฆ์— ํ•ฉ๊ฒฉํ•ด์„œ, ์ค€๋น„ ๊ณผ์ •๊ณผ ์‹œํ—˜ ํ›„๊ธฐ, ๊ณต๋ถ€ ๋ฐฉ๋ฒ• ๋“ฑ์„ ๊ฐ„๋‹จํžˆ ์ •๋ฆฌํ•ด๋ณด๋ ค ํ•ฉ๋‹ˆ๋‹ค ๐ŸŽ‰์‹œํ—˜ ์œ ํ˜•: ๊ฐ๊ด€์‹์‘์‹œ ๋ฐฉ์‹: ์˜จ๋ผ์ธ์‹œํ—˜ ์‹œ๊ฐ„: 60๋ถ„ (30๋ถ„ ์—ฐ์žฅ ๊ฐ€๋Šฅ!)

2025๋…„ 7์›” 23์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

ํด๋ผ์šฐ๋“œ ํด๋Ÿฝ ํ™œ๋™ ํ›„๊ธฐ

ํด๋ผ์šฐ๋“œ ํด๋Ÿฝ 7๊ธฐ ํ™œ๋™์„ ๋งˆ์น˜๊ณ , ์งง์ง€๋งŒ ์ง„์‹ฌ์„ ๋‹ด์•„ ํšŒ๊ณ ๋ฅผ ๋‚จ๊ฒจ๋ด…๋‹ˆ๋‹ค ๐Ÿฉตโ˜๏ธ๐ŸซงCloud Club์€ ๋ฒค๋”์— ์ข…์†๋˜์ง€ ์•Š๊ณ , ํด๋ผ์šฐ๋“œ ๋„ค์ดํ‹ฐ๋ธŒ ๊ธฐ์ˆ ์„ ํ•จ๊ป˜ ๊ฒฝํ—˜ํ•˜๊ณ  ์„ฑ์žฅํ•˜๋Š” IT ์—ฐํ•ฉ ๋™์•„๋ฆฌ์ž…๋‹ˆ๋‹ค. ํ˜น์‹œ ํด๋ผ์šฐ๋“œ ํด๋Ÿฝ์ด ๋” ๊ถ๊ธˆํ•˜์‹  ๋ถ„๋“ค์€ ๊ณต์‹ ํ™ˆํŽ˜์ด์ง€๋„ ์ฐธ๊ณ ํ•ด ์ฃผ

2025๋…„ 7์›” 11์ผ
ยท
2๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

macOS ์—…๋ฐ์ดํŠธ ์ดํ›„ Docker Desktop์ด ์‹คํ–‰๋˜์ง€ ์•Š์„ ๋•Œ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•

์ตœ๊ทผ macOS๋ฅผ ์—…๋ฐ์ดํŠธํ•œ ์ดํ›„, Docker Desktop์ด ๊ฐ‘์ž๊ธฐ ์‹คํ–‰๋˜์ง€ ์•Š๋Š” ํ˜„์ƒ์„ ๊ฒช์—ˆ์Šต๋‹ˆ๋‹ค.์ฒ˜์Œ์—” ๋„์ปค ๋ฒ„์ „ ๋ฌธ์ œ์ธ ์ค„ ์•Œ์•˜๋Š”๋ฐ, ๊ณต์‹ ์ด์Šˆ๋ฅผ ์ฐพ์•„๋ณด๋‹ˆ macOS ์—…๋ฐ์ดํŠธ ์ดํ›„ ๊ถŒํ•œ ๋ฌธ์ œ ๋˜๋Š” ๋ฐ”์ด๋„ˆ๋ฆฌ ์ถฉ๋Œ๋กœ ์ธํ•ด ๋ฐœ์ƒํ•˜๋Š” ์ด์Šˆ์ธ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.๊ทธ๋ž˜์„œ ์žฌ์„ค์น˜

2025๋…„ 7์›” 11์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

Terraform์œผ๋กœ S3 + CloudFront ์ •์  ์›น์‚ฌ์ดํŠธ ๋ฐฐํฌํ•˜๊ธฐ

๐Ÿ’ก CloudFront๋ž€?CloudFront๋Š” AWS์—์„œ ์ œ๊ณตํ•˜๋Š” ์ „ ์„ธ๊ณ„ CDN(Content Delivery Network) ์„œ๋น„์Šค๋กœ, ์ •์  ๋ฐ ๋™์  ์ฝ˜ํ…์ธ ๋ฅผ ๋น ๋ฅด๊ณ  ์•ˆ์ „ํ•˜๊ฒŒ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ „๋‹ฌํ•ด ์ค๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๊ฐ€ ์ฝ˜ํ…์ธ ๋ฅผ ์š”์ฒญํ•˜๋ฉด ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ์—ฃ์ง€ ๋กœ์ผ€์ด์…˜์—์„œ ์‘๋‹ต

2025๋…„ 7์›” 6์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท