Vault HA ๋ฐ Metric ์์ง ์ค์ - CI/CD ์คํฐ๋ 8์ฃผ์ฐจ
- kkumtree
2025-12-07T05:59:10+09:00
CloudNet@์์ ์งํํ๊ณ ์๋ CI/CD Study 8์ฃผ์ฐจ์๋ Vault์ HA(High Availability)์ ๋ํด ๋ค๋ฃจ์์ต๋๋ค. ๊ตฌ์ฑ ๋ฐฉ๋ฒ์ ์ด๋ก ์ ๋ถ๋ถ์ ๋จ์ํ์ผ๋, ์์ํ ๊ตฌ์ฑ ๋ฐฉ๋ฒ๊ณผ ๋ฌ๋ผ์ ์ ๊ฐ ๋์ค์ ์ฐธ๊ณ ํ๋ ค๊ณ ๋ถ์ฐ์ค๋ช ์ ํด๋๋ ค๊ณ ํฉ๋๋ค. ๋๋ถ์ด ๋์๋ณด๋์์ Vault ๊ด๋ จ ๋ฉํธ๋ฆญ์ ๋ณด๊ณ ์ถ์ด์, Datadog๊ณผ ์ฐ๋ํ์ฌ ๊ด์ธกํ์์ต๋๋ค. 0. ์ค์ต ํ๊ฒฝ ์ค๋น ํด๋น ๊ตฌ์ฑ๋ค์ ์๋ GitHub์ ํ์ฌ๋์ด ์์ต๋๋ค. https://github.com/kkumtree/ci-cd-cloudnet-study ์ 8w ํด๋ Helm v4 ์ถ์ ํ ํ ๋ฌ๋ ์๋ ์์ ์ ์์ฑ๋์๊ธฐ์, v3์ ํธํ๋๋ ์ฐจํธ ๋ฒ์ ์ ๋ช ์ํ์ฌ ๋ฐฐํฌํ์ต๋๋ค. kind ๋ฐฐํฌ์ ingress-nginx, ๊ทธ๋ฆฌ๊ณ vault-worker ๊น์ง ๋ฐฐํฌํ๋ฉด, ์๋์ ๊ฐ์ ๊ตฌ์ฑ๋๊ฐ ๋ฉ๋๋ค.
Vault 101 in Kubernetes - CI/CD ์คํฐ๋ 7์ฃผ์ฐจ
- kkumtree
2025-11-30T08:59:34+09:00
CloudNet@์์ ์งํํ๊ณ ์๋ CI/CD Study 7์ฃผ์ฐจ์๋ Vault๋ฅผ ๋ค๋ฃจ์์ต๋๋ค. ์์ธํ ์ค๋ช ์ ํด๋น ๊ณต์ ํ์ด์ง์์ ํด์ฃผ๊ณ ์์ง๋ง, ๊ทธ์ 1password ๊ฐ์ ํจ์ค์๋ ๊ด๋ฆฌ ์๋น์ค๊ฐ ์๋์ ์ ๋์์ด๋ผ๋ฉด Vault๋ ์ธํ๋ผ ๊ด๋ฆฌ์ ๋์์ผ๋ก ์ฌ์ฉ๋๋ ๊ฒ์ผ๋ก ์๊ณ ์๋ ์ ๊ฒ๋ ํฅ๋ฏธ๋ก์ด ์ฃผ์ฐจ์์ต๋๋ค. ์ด๋ฒ ์คํฐ๋์์๋ ๊ณ์ํด์ kind๋ก ๋ก์ปฌ Kubernetes(k8s)๋ฅผ ํ์ฉํ๊ธฐ์, ์ด๋ฒ์๋ ๋น์ทํ๊ฒ ๋ฐฐํฌํด๋ณด๊ฒ ์ต๋๋ค. 0. ์ค์ต ํ๊ฒฝ ์ค๋น - kind ํด๋ฌ์คํฐ ๋ฐฐํฌ ํด๋น ๊ตฌ์ฑ๋ค์ ์๋ GitHub์ ํ์ฌ๋์ด ์์ต๋๋ค. https://github.com/kkumtree/ci-cd-cloudnet-study ์ 7w ํด๋ kind create cluster --name vault --image kindest/node:v1.32.8 --config - <<EOF kind: Cluster apiVersion: kind.
ArgoCD Cluster ๋ฐ Prefix ๊ด๋ฆฌ - CI/CD ์คํฐ๋ 6์ฃผ์ฐจ
- kkumtree
2025-11-22T20:56:43+09:00
CloudNet@์์ ์งํํ๊ณ ์๋ CI/CD Study 6์ฃผ์ฐจ์๋ ArgoCD๋ฅผ ๋ง์ง๋ง์ผ๋ก ๋ค๋ฃจ์์ต๋๋ค. Cluster๋ฅผ ์ถ๊ฐํด๋ณด๊ณ Gitea๋ฅผ ๋ถ์ด๊ธฐ ์ ์, ArgoCD๋ฅผ Prefix๋ก ๋ผ์ฐํ ํ๋ ค๊ณ ํ๋๋ฐ ๋ก๊ทธ์์ํ๊ณ ๋์ ์์น์๋ ๊ฒฝ๋ก๋ก ๋น ์ง๋ ๋ฐ๋์ ์ด๊ฒ์ ๊ฒ ์ดํด๋ณด๊ณ ์์ ์ ํ์ฌ ์ํ๋ ๋๋ก ๊ตฌ๋๋๋๋ก ์ ์ ํ์ต๋๋ค. 0. ์ค์ต ์ค๋น ํด๋น ๊ตฌ์ฑ๋ค์ ์๋ GitHub์ ํ์ฌ๋์ด ์์ต๋๋ค. https://github.com/kkumtree/ci-cd-cloudnet-study ์ 6w ํด๋ ์ด์ ํฌ์คํ Tailscale์ ํ๊ณ , ArgoCD์ ์ ๊ทผํด๋ณด๊ธฐ์ ํ์๋ค๋ฉด, ๋ฆฌ์์ค ์ ๋ฆฌ๋ฅผ ํฉ๋๋ค. kind ๋ฐฐํฌ ์, ํฌํธ ์ ์ ๋ก ์ค๋ฅ๊ฐ ๋ฐ์ํฉ๋๋ค. sudo tailscale serve --tcp 443 off ์ดํ ์ค์ต์ ์ํ ๋ฐฐํฌ๋ฅผ ํฉ๋๋ค.
Tailscale์ ํ๊ณ , ArgoCD์ ์ ๊ทผํด๋ณด๊ธฐ
- kkumtree
2025-11-17T10:23:03+09:00
์ด์ ๊ฒ์๋ฌผ, ArgoCD with Ingress์ ๋๋ฉ์ธ ์ค์ ์ ํ๋ค๊ฐ ๋ฌธ๋, Tailscale์ serve๊ธฐ๋ฅ์ ํ์ฉํ์ฌ Tailscale ๋ด๋ถ ๋คํธ์ํฌ(์ดํ, tailnet)์์๋ง ์ ๊ทผ ๊ฐ๋ฅํ ArgoCD ์๋ฒ๋ฅผ ๊ตฌ์ถํ๋ฉด ๋์ง ์์๊น? ํ์ฌ ๊ตฌ์ฑํด๋ณด์์ต๋๋ค. kind๋ฅผ ์ด์ฉ ์ค์ธ Host์ ์ ์ํ Client๋ค์ Tailscale ์ค์น๋์ด ์์ด์ผํฉ๋๋ค. 1. Tailscale๊ณผ Serve ์ ํต์ ์ธ ์ค์์ง์ค์(Hub-Spoke) VPN์ด ์๋์ ๊ฐ๋ค๋ฉด, Tailscale์ ๊ฒฝ์ฐ, Mesh ๋คํธ์ํฌ์ ํํ๋ฅผ ๊ฐ์ง๋ฉฐ Wireguard๋ฅผ ํ์ฉํฉ๋๋ค. ๊ตฌ๋ถ ์ ํต์ ์ค์์ง์ค์ VPN Tailscale (๋ฉ์ฌ VPN) ๋คํธ์ํฌ ๊ตฌ์กฐ ์ค์ ์๋ฒ๋ฅผ ํตํ ๋ชจ๋ ํธ๋ํฝ ๊ฒฝ์ โ P2P ์ง์ ์ฐ๊ฒฐ, ๋ถ์ฐํ ๋ฉ์ฌ ๋คํธ์ํฌโ ๋ฐ์ดํฐ ๊ฒฝ๋ก ํด๋ผ์ด์ธํธ โ VPN ์๋ฒ โ ๋ชฉ์ ์งโ ํด๋ผ์ด์ธํธ โ ๋ชฉ์ ์ง (์ง์ ์ฐ๊ฒฐ)โ ํ๋กํ ์ฝ OpenVPN(TCP/UDP), IKEv2, L2TP WireGuard(UDP ๊ธฐ๋ฐ) ์ฑ๋ฅ ์ค์ ์๋ฒ ๋ณ๋ชฉ ๋ฐ์, ์ง์ฐ ์ฆ๊ฐโ ์ง์ ์ฐ๊ฒฐ๋ก ์ง์ฐ ์ต์ํ, ๋น ๋ฅธ ์๋ ์ค์ ๋ณต์ก๋ ์๋ฒ ๊ตฌ์ถ, ํฌํธ ํฌ์๋ฉ ํ์โ ๋ก๊ทธ์ธ๋ง์ผ๋ก ์ฆ์ ์ฌ์ฉ ๊ฐ๋ฅโ NAT ํต๊ณผ ์๋ ํฌํธ ํฌ์๋ฉ ํ์โ ์๋ NAT Traversal ์ง์ ํ์ฅ์ฑ ์๋ฒ ์ฉ๋์ ๋ฐ๋ผ ์ ํโ ๊ฐ ๋ ธ๋ ๋ ๋ฆฝ์ , ํ์ฅ ์ฉ์ด ๋ณด์ ์ค์ ์๋ฒ๊ฐ ๋ชจ๋ ํธ๋ํฝ ํ์ธ ๊ฐ๋ฅโ ์ข ๋จ ๊ฐ ์ํธํ, P2P ์ ์กโ Tailscale์ serve์ ๊ฐ์ ๊ฒฝ์ฐ๋, ngrok์ ๊ธฐ๋ณธ ๊ธฐ๋ฅ๊ณผ ์ ์ฌํ funnel๊ณผ ๋ฌ๋ฆฌ
ArgoCD with Ingress - CI/CD ์คํฐ๋ 5์ฃผ์ฐจ
- kkumtree
2025-11-16T17:38:34+09:00
CloudNet@์์ ์งํํ๊ณ ์๋ CI/CD Study 5์ฃผ์ฐจ์๋ ArgoCD๋ฅผ ์ข๋ ๋ค๋ฃจ์์ต๋๋ค. 0. ์ค์ต ์ค๋น ํด๋น ๊ตฌ์ฑ๋ค์ ์๋ GitHub์ ํ์ฌ๋์ด ์์ต๋๋ค. https://github.com/kkumtree/ci-cd-cloudnet-study ์ 5w ํด๋ ์ฐ์ 80/443 ํฌํธ๋ฅผ ์ฌ์ฉํ ์ ์๋์ง ํ์ธํ์ฌ์ผํฉ๋๋ค. ์๋ ๊ฒฝ์ฐ, ๋ค๋ฅธ ํฌํธ๋ฅผ ์ฌ์ฉํด์ผํฉ๋๋ค. ์ค์ ๋ก ํด๋ณด์์ ๊ฒฝ์ฐ tailscale์ด ํฌํธ๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ผ๋ก ์ค์ธํ์ฌ ํด๋น ์๋น์ค๋ฅผ ์ค์งํด๋ณด์์ต๋๋ค. ๋ค๋ง, ๋จ์ํ kind YAML์ ์๋ชป ์์ฑํ ๊ฒ์ผ๋ก ๋ณด์ ๋๋ค. (1) kind ๋ฐ kube-ops-view ์ด๋ฒ์๋ Ingress์ ๋ฐฐํฌ๋ฅผ ํ๊ธฐ ์ํ ๋ฐ์์ ์ผ๋ก Control Node์ ๋ผ๋ฒจ๋ง์ ์งํํฉ๋๋ค. ์ด๋ ๋ค์์ ์ด์ด์ง ingress-nginx ๋ฐฐํฌ ์, nodeSeletor ์กฐ๊ฑด์ผ๋ก ์ฌ์ฉํฉ๋๋ค.