KR_AWS - somaz94/DevOps-Engineer GitHub Wiki
DevOps ์์ง๋์ด๋ฅผ ์ํ AWS ํต์ฌ ๊ฐ๋ ์ ๋ฆฌ. ์์ธ ๋ด์ฉ์ ๊ฐ ๋งํฌ๋ฅผ ํด๋ฆญํ์ธ์.
- Assume Role: ์์ ๋ณด์ ์๊ฒฉ ์ฆ๋ช ์ ํตํด ๋ค๋ฅธ ๊ณ์ ๋๋ ๋์ผ ๊ณ์ ๋ด ๋ค๋ฅธ ์ญํ ๊ถํ์ ํ๋
- sts:AssumeRole: IAM ์๊ฒฉ ์ฆ๋ช ๊ธฐ๋ฐ ์ญํ ์์ โ ๊ต์ฐจ ๊ณ์ ์ก์ธ์ค์ ํ์ฉ
- sts:AssumeRoleWithWebIdentity: OIDC/SAML ํ ํฐ ๊ธฐ๋ฐ ์ญํ ์์ โ GitHub Actions, Kubernetes SA ๋ฑ ์ธ๋ถ ID ๊ณต๊ธ์ ์ฐ๋
- ์์ ์๊ฒฉ ์ฆ๋ช : ์ก์ธ์ค ํค + ๋ณด์ ์ก์ธ์ค ํค + ์ธ์ ํ ํฐ์ผ๋ก ๊ตฌ์ฑ, ์ ํจ ๊ธฐ๊ฐ ์ค์ ๊ฐ๋ฅ
-
Ingress Group: ์ฌ๋ฌ Ingress๋ฅผ ํ๋์ ALB๋ก ํตํฉ ๊ด๋ฆฌ (
alb.ingress.kubernetes.io/group.name) - group.order: Ingress ๊ท์น ์ฐ์ ์์ ์ค์ โ ๋ฎ์ ์ซ์๊ฐ ๋จผ์ ์ ์ฉ
- listen-ports: ALB๊ฐ ์์ ํ๋ ํฌํธ ์ง์ (HTTP/HTTPS)
- ssl-redirect: HTTP โ HTTPS ๋ฆฌ๋๋ ์ ํฌํธ ์ค์
-
target-type:
instance(NodePort ๊ฒฝ์ ) ๋๋ip(Pod ์ง์ ๋ผ์ฐํ ) ๋ชจ๋ ์ ํ -
scheme:
internet-facing(๊ณต๊ฐ) ๋๋internal(VPC ๋ด๋ถ) ALB ์ ๊ทผ ์ ํ ์ค์ - inbound-cidrs: ALB ์ ๊ทผ ํ์ฉ IP ๋ฒ์ ์ ํ
- security-groups: ๋ก๋๋ฐธ๋ฐ์์ ์ฐ๊ฒฐํ ๋ณด์ ๊ทธ๋ฃน ์ง์
- Security Group (Stateful): ์ธ์คํด์ค ๋จ์ ๋ณด์ โ ํ์ฉ ๊ท์น๋ง ์ง์, ์์๋ฐ์ด๋ ์๋ต ์๋ ํ์ฉ
- Network ACL (Stateless): ์๋ธ๋ท ๋จ์ ๋ณด์ โ ํ์ฉยท๊ฑฐ๋ถ ๊ท์น ๋ชจ๋ ์ง์, ๋ฒํธ์ ํ๊ฐ
- VPC: ๊ฒฉ๋ฆฌ๋ ๊ฐ์ ๋คํธ์ํฌ โ ์๋ธ๋ทยท๋ผ์ฐํธ ํ ์ด๋ธยท์ธํฐ๋ท ๊ฒ์ดํธ์จ์ด๋ก ๊ตฌ์ฑ
AWS STS์ sts:AssumeRole์ ์ฌ์ฉํ ๊ต์ฐจ ๊ณ์ ์ก์ธ์ค ๋ฐฉ๋ฒ(4๋จ๊ณ: IAM ์ญํ ์์ฑ โ ์ ์ฑ
์ฐ๊ฒฐ โ ์ญํ ์์ โ ์์ ์๊ฒฉ ์ฆ๋ช
์ฌ์ฉ)๊ณผ OIDC/SAML ๊ธฐ๋ฐ sts:AssumeRoleWithWebIdentity์ ์ฐจ์ด๋ฅผ ๋น๊ตํ๋ค.
โ ์์ธ ๋ณด๊ธฐ
์ฌ๋ฌ Ingress๋ฅผ ๋จ์ผ ALB๋ก ํตํฉํ๋ IngressGroup ๊ตฌ์ฑ, ํฌํธ ์์ (listen-ports) ๋ฐ SSL ๋ฆฌ๋๋ ์ ์ค์ , instance/ip ๋ชจ๋ ํธ๋ํฝ ๋ผ์ฐํ ์ด๋ ธํ ์ด์ , ๊ทธ๋ฆฌ๊ณ schemeยทinbound-cidrsยทsecurity-groups๋ฅผ ํ์ฉํ ์ ๊ทผ ์ ์ด ๋ฐฉ๋ฒ์ ์ ๋ฆฌํ๋ค.
โ ์์ธ ๋ณด๊ธฐ
Stateful Security Group(์ธ์คํด์ค ๋จ์ยทํ์ฉ ๊ท์น๋ง)๊ณผ Stateless Network ACL(์๋ธ๋ท ๋จ์ยทํ์ฉยท๊ฑฐ๋ถ ๊ท์นยท๋ฒํธ์ ํ๊ฐ)์ ๋์ ๋ฐฉ์ ์ฐจ์ด์ VPC ๋ด ํธ๋ํฝ ํ๋ฆ(IGW โ Router โ Route Table โ ACL โ Subnet โ SG โ EC2)์ mermaid ๋ค์ด์ด๊ทธ๋จ์ผ๋ก ์ค๋ช ํ๋ค.
โ ์์ธ ๋ณด๊ธฐ