์๋ ํ์ธ์. CloudNet@ ํ์์ ํ๋ ์ค์ธ Ongja๋ผ๊ณ ํฉ๋๋ค.
์ ํฌ CloudNet@ ํ์ ํด๋ผ์ฐ๋ ๊ด๋ จ ๊ธฐ์ ์ ๋ํด ์ง์์ ํ์ตํ๊ณ ๊ณต์ ํ๋ ์คํฐ๋ ๊ทธ๋ฃน์ ๋๋ค.
๋ค์ํ ํด๋ผ์ฐ๋ ๊ด๋ จ ์จ๋ผ์ธ ์คํฐ๋ ํ๋๊ณผ ์ฑ ์งํ๊ณผ ๊ฐ์ ์ฝํ ์ธ ์ ์์ ํตํด ๋ค์ํ ์ง์ ๊ณต์ ํ๋์ ํ๋ฐํ ์งํํด ์์ต๋๋ค.
์์ผ๋ก๋ ๋ค์ํ ์ฃผ์ ์ ์์ ๊ฐ์ ์ฝํ ์ธ ๋ก ์ฐพ์ ๋ต๊ฒ ์ต๋๋ค. :)
๊ฐ์ธ๋ธ๋ก๊ทธ -> https://ongja.space
ํ๋ธ๋ก๊ทธ -> http://blog.cloudneta.net
Courses
Reviews
- CloudNet@ - Amazon EKS Extended Edition Course
- CloudNet@ - Amazon EKS Basic Course
- CloudNet@ - Amazon EKS Basic Course
- CloudNet@ - AWS Networking Fundamentals
- CloudNet@ - Amazon EKS Basic Course
Posts
Q&A
16๊ฐ 16:59 ๋ถ๋ถ ๋ฌธ์๋๋ฆฝ๋๋ค
์๋ ํ์ธ์. CloudNet@ ํ์ ๋๋ค.EKS ํ๊ฒฝ์์ ํต์ ํ๋ฆ์ ๋ฐ๋ฅธ ์ธ์ ์ฒ๋ฆฌ ์ง๋ฌธ์ ๋ํ ๋ต๋ณ๋๋ฆฝ๋๋ค. ๋จผ์ kubectl node-shell ๋ช ๋ น์ผ๋ก ๋ ธ๋์ ์ ์ํ๋ฉด ์ค์ ์ ๊ทผ ํ๋ฆ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค. ์ฌ์ฉ์ โ Kubernetes API Server โ ๋์ ๋ ธ๋์ Kubelet ์ฆ, ์ฌ์ฉ์๊ฐ ์ง์ ๋ ธ๋๋ก SSH ์ ์ํ๋ ๊ฒ์ด ์๋๋ผAPI Server๊ฐ Kubelet์ ์์ฒญ์ ๋ณด๋ด๊ณ , Kubelet์ด ๋ ธ๋ ์์์ nsenter ๊ธฐ๋ฐ์ ์์ ์ ํ๋ก์ธ์ค๋ฅผ ์คํํ๋ ๋ฐฉ์์ ๋๋ค. ๊ทธ๋์ node-shell์ ์คํํ๋ฉด: API Server โ Kubelet ์ฌ์ด์ ์๋ก์ด ์ฐ๊ฒฐ(์ธ์ )์ด ์๊น -> Kubelet์ด node-shell์ ์ํด โ์์ ์ ํ๋ก์ธ์ค(nsenter)โ๋ฅผ ๋ง๋ค๊ธฐ ๋๋ฌธ์ด ์ฐ๊ฒฐ์ ์ ์งํ๋ ค๊ณ kubelet์ด TCP ์ฐ๊ฒฐ์ ํ๋ ๋ ์ผ -> ์ด ์ฐ๊ฒฐ์ ํตํด node-shell์ ์ ยท์ถ๋ ฅ์ด ์ค๊ฐ๋ค.๋ฐ๋ผ์ ss ๋ช ๋ น์ด์์ ์๋ก์ด ESTABLISHED ์ธ์ ์ด ๋ณด์ -> API Server์ Kubelet์ด node-shell ์ธ์ ์ ์ ์งํ๊ณ ์๋ค๋ ์๋ฏธ ๊ฒฐ๋ก ์ ์ผ๋ก ์ง๋ฌธํ๋ ๊ฒ์ฒ๋ผ: โkubectl node-shell๋ก ์ ์ํ๋ฉด api-server์ ํต์ ํด์ tcp ์ธ์ ์ด ๋ณด์ด๋ ๊ฑด๊ฐ์?โโ ๋ง์ต๋๋ค.node-shell์ ๋ก์ปฌ SSH๊ฐ ์๋๋ผ API Server๋ฅผ ํตํด ํ๋ก์๋๋ exec ์ ์์ด๊ธฐ ๋๋ฌธ์ API Server์ Kubelet ์ฌ์ด์ ์๋ก์ด TCP ์ธ์ ์ด ์์ฑ๋๊ณ , ๊ทธ ์ฐ๊ฒฐ์ด ss ๋ช ๋ น์ผ๋ก ํ์ธ๋๋ ๊ฒ์ ๋๋ค. ๊ฐ์ฌํฉ๋๋ค.
- 0
- 2
- 12
Q&A
BationHost์์ AWS CLI ์ ์ ์คํจ
์๋ ํ์ธ์. CloudNet@ ํ์ ๋๋ค. ํ์ฌ ๋ณ์์ ๊ฐ์ด ๋ค์ด๊ฐ์ง ์๋ ์ด์ ๋ ํด๋น IAM์ ๊ถํ์ด ์๊ฑฐ๋ ์๋ชป๋ ๊ฐ์ ์ ๋ ฅํ ๊ฒฝ์ฐ๋ก ์์๋ฉ๋๋ค. (ํด๋น ๋ณ์๋ค์ awscli๋ฅผ ํตํด ๊ฐ์ ํธ์ถ ํด์ ์ ์ฅํ๋ ๊ตฌ์กฐ์ ๋๋ค.)๋จผ์ Access Key ID์ Secret Access Key๊ฐ ์ ์์ ์ผ๋ก ์ ๋ ฅํ๋์ง ํ์ธํด ๋ณด์๊ณ ๋ฌธ์ ๊ฐ ์๋ค๋ฉด,IAM User์ ๊ถํ์ ๊ฒํ ํด ๋ณด๋ ๊ฒ์ด ์ข๊ฒ ์ต๋๋ค. ๋ด์ฉ ๊ฒํ ํ ํด๊ฒฐ ์๋์๋ฉด ๋ค์ ๋ง์์ฃผ์ธ์. ๊ฐ์ฌํฉ๋๋ค.
- 1
- 2
- 30
Q&A
ch1 external-dns pod ๊ด๋ จ ๋ฒ์ ์ค๋ฅ์ ํด๊ฒฐ ๋ฐฉ๋ฒ ํ ์ถ๊ฐ ์ค๋ฅ ์ฌํญ
์๋ ํ์ธ์. CloudNet@ ํ์ ๋๋ค.์ฐ์ ๊ฐ๊ธฐ๋ก ์ธํด ์ ์ ์ด ์์ด์.. ํด๋น ์ง๋ฌธ ํ์ธ ์์ ์ด ๋ฆ์ด์ก๋ค์.์ํด ๋ง์๋๋ฆฝ๋๋ค. external-dns ๊ด๋ จํด์ ๋ฌธ์ ์ ๊ณผ ํด๊ฒฐ๋ฒ๊น์ง ์ ์ํด ์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค.์ ๋ ํ์คํ ๋ฆฌ๋ฅผ ๋ฐ๋ผ๊ฐ ๋ณด๋ terraform external-dns module ๋ฒ์ ๋ณ๊ฒฝ์ด ๋ถ๊ฐํผํด ๋ณด์ด๋ค์. ์กฐ์น ์ฌํญ์ผ๋ก ๋์ฒด ๋ชจ๋์ ์ฐพ๊ฑฐ๋ ์ต์ ํ ์์ ์ ์ํํ๋ ค๊ณ ํ๋๋ฐ ์๊ฐํด๋ณด๋ external-dns๊ฐ eks add-on์ผ๋ก ํธ์ ๋์์ต๋๋ค.eks์์ add-on์ผ๋ก ์ง์ ๊ด๋ฆฌํ๋ ํ๊ฒฝ์ ์ธ ์ด์๋ ํธํ์ฑ์ ํด์๋ ๊ฒ์ผ๋ก ๊ธฐ๋๋๋ค์. ์ฐธ๊ณ ๋ก external-dns๊ฐ eks add-on์ผ๋ก ๊ณต์ ์ง์ํ ์์ ์ด 2025๋ 3์ 31์ผ๋ถํฐ ์ ๋๋ค.ํ์ฌ ๊ตฌ์ฑ๋ eks k8s ๋ฒ์ ์ธ 1.32์์๋ ์ ์์ ์ผ๋ก ์ง์ํฉ๋๋ค. (์๋)aws eks describe-addon-versions --addon-name external-dns --kubernetes-version 1.32 --query "addons[].addonVersions[].addonVersion" --output table ------------------------ | DescribeAddonVersions| +----------------------+ | v0.19.0-eksbuild.2 | | v0.19.0-eksbuild.1 | | v0.18.0-eksbuild.2 | | v0.18.0-eksbuild.1 | | v0.17.0-eksbuild.2 | | v0.17.0-eksbuild.1 | | v0.16.1-eksbuild.2 | | v0.15.1-eksbuild.1 | +----------------------+ [์กฐ์น ์ฌํญ]1. ๊ธฐ์กด terraform module๋ก external-dns๋ฅผ ์ค์นํ๋ ๋ถ๋ถ์ ์ ๊ฑฐ2. terraform eks module์์ cluster_addons๋ก external-dns ์ค์น... module "eks" { source = "terraform-aws-modules/eks/aws" version = "~>20.0" cluster_name = var.ClusterBaseName cluster_version = var.KubernetesVersion cluster_endpoint_private_access = false cluster_endpoint_public_access = true cluster_addons = { coredns = { most_recent = true } kube-proxy = { most_recent = true } vpc-cni = { most_recent = true } external-dns = { most_recent = true } } ... 3. ๋ณ๊ฒฝ ์ฌํญ์ผ๋ก external-dns ํ๋์ ๋ค์ ์คํ์ด์ค ์์น๊ฐ kube-system์์ external-dns์ผ๋ก ๋ณ๊ฒฝ=> ๋ค์ ์คํ์ด์ค๋ฅผ ๊ธฐ์กด kube-system์ผ๋ก ๋ณ๊ฒฝํ๋ ค ํ์ง๋ง ๋ณ๋์ ์ธ์๊ฐ ์กด์ฌํ์ง ์๋ค์. ๊ทธ๋์ ๊ธฐ๋ณธ ๊ฐ์ผ๋ก ์ ์งํ์ต๋๋ค.(myeks:default) root@myeks-bastion-EC2:~# k get pod -A NAMESPACE NAME READY STATUS RESTARTS AGE external-dns external-dns-577b6488b-46sgn 1/1 Running 0 44m kube-system aws-load-balancer-controller-9774b5bf9-sqm69 1/1 Running 0 44m kube-system aws-load-balancer-controller-9774b5bf9-wkpjl 1/1 Running 0 44m kube-system aws-node-lbtm5 2/2 Running 0 44m kube-system aws-node-q62nr 2/2 Running 0 44m kube-system aws-node-tg5cg 2/2 Running 0 44m kube-system coredns-7bb47d475b-8f55v 1/1 Running 0 44m kube-system coredns-7bb47d475b-ls4q6 1/1 Running 0 44m kube-system kube-proxy-5gmlz 1/1 Running 0 44m kube-system kube-proxy-cv694 1/1 Running 0 44m kube-system kube-proxy-cxgt7 1/1 Running 0 44m 4. ๋ง์์ฃผ์ ๋๋ก ๋ณ๊ฒฝ๋ ์ปจํ ์ด๋ ๋น๋๋ ์ต์ํ๋ ํํ๋ก ๋ณ๋์ ์ ธ์ด ํฌํจํ์ง ์์ต๋๋ค.=> ๊ผญ external-dns๊ฐ ์๋๋ผ ํ๋์ kubectl exec๋ก ์ ๊ทผํ ๋ ์ธ์ ์ ๋ณด๋ฅผ ๋ณด๋ ๊ฒ์ด๋ผ ๋ณ๋์ ํ ์คํธ ํ๋๋ก ํ์ธํ๋๋ก ๋ณ๊ฒฝํ์ต๋๋ค. (EKS Hands-On ๋ฐ์) 5. ํ์ฌ add-on์ ํตํด ๊ตฌ์ฑ๋ external-dns ํ๋์ ๋ก๊ทธ ์ ์๋ฌ๊ฐ ๋ฐ์ํ์ง ์์ต๋๋ค.=> ๋ณด๋ด์ฃผ์ ๋ก๊ทธ๋ ๊ถํ ์ด์๋ก irsa ๊ตฌ์ฑ ์ด์ ๊ฐ์๋ฐ, ์ด๋ค ํ๊ฒฝ ๋๋ฌธ์ธ์ง ์๊ธด ์ด๋ ต๋ค์. ํ์ฌ add-on์ ํตํ ๊ตฌ์ฑ์ ์์์ ๊ถํ์ ์ ์ํด์ ์ ์ ๋์ํฉ๋๋ค. 6. ๋ณ๊ฒฝ ์ฌํญ์ ๋ํ terraform ์ฝ๋๋ git์ ๋ฐ์ํ๊ณ , EKS Hands-On ํ์ด์ง๋ ์ ์ ํ ๋ฌธ๊ตฌ๋ฅผ ์ฝ์ ํ์ต๋๋ค. ์ด์ ์ฌํญ ์ ๋ณด ๋ฐ ํด๊ฒฐ ์ ๊น์ง ์ ์ํด ์ฃผ์์ ๋ค์ ํ ๋ฒ ๊ฐ์ฌํฉ๋๋ค.
- 1
- 2
- 60
Q&A
fluentbit ๊ด๋ จ node ์ ๊ธฐ๋ณธ ๋ก๊ทธ ์ง๋ฌธ
Fluent Bit ๋ก๊ทธ ์์ง ์ค๋ฅ ๊ด๋ จ ๊ฒํ ๋ด์ฉ์ ๊ณต์ ๋๋ฆฝ๋๋ค. ํ์ฌ Fluent Bit์ rsyslog ๊ธฐ๋ฐ์ ๋ก๊ทธ ๊ฒฝ๋ก(/var/log/messages, /var/log/secure, /var/log/dmesg)๋ฅผ ์ ์ ๋ก ๋์ํ๊ณ ์์ด, Amazon Linux 2(AL2) ํ๊ฒฝ๊ณผ๋ง ํธํ๋ฉ๋๋ค.๊ทธ๋ฌ๋ Amazon Linux 2023(AL2023) ๊ธฐ๋ฐ์ ์ต์ EKS ๋ ธ๋๋ systemd ์ค์ฌ์ journald ๋ก๊ทธ ์์คํ ์ ์ฌ์ฉํ๋ฏ๋ก, ๊ธฐ์กด ๊ฒฝ๋ก์ ๋งค์นญ๋์ง ์์ ๋ก๊ทธ ์์ง์ด ์ ์์ ์ผ๋ก ์ด๋ฃจ์ด์ง์ง ์์ต๋๋ค. ์์ ๊ฒํ ํ ์ฌํญ์ ์ ๋ฆฌํ๋ฉด ๋ค์๊ณผ ๊ฐ์ต๋๋ค.1. aws-for-fluent-bit ์ต์ ๋ฒ์ ํ์ธ (AL2023 ํธํ ์ฌ๋ถ)โ ํ์ฌ๊น์ง aws-for-fluent-bit๋ systemd ๋ก๊ทธ๋ฅผ ์ง์ ์ถ์ถํด ์์งํ๋ ๊ธฐ๋ฅ์ ์ง์ํ์ง ์์ต๋๋ค.2. EKS Worker Node AMI ๋ช ์ (AL2 ์ฌ์ฉ ๊ฐ๋ฅ ์ฌ๋ถ)โ ํ์ฌ๋ EKS์์ Amazon Linux 2 AMI๋ฅผ ๋ช ์์ ์ผ๋ก ์ง์ ํ์ฌ ์ฌ์ฉํ๊ธฐ ์ด๋ ต์ต๋๋ค.3. ๋์ฒด ๋ก๊ทธ ์์ง ๋๊ตฌ ๊ฒํ โ ์ฌ๋ฌ ๋์ฒด ๋๊ตฌ๊ฐ ์กด์ฌํ์ง๋ง, AWS ๊ณต์ ๋ฌธ์์์๋ ์ฌ์ ํ Fluent Bit์ ๊ถ์ฅํ๊ธฐ ๋๋ฌธ์ ๋์ผ ๋๊ตฌ๋ฅผ ์ ์งํ๋ ๋ฐฉํฅ์ผ๋ก ํ๋จํ์ต๋๋ค. [์กฐ์น ์ฌํญ] AL2023 ํ๊ฒฝ์์ rsyslog๋ฅผ ์๋ ์ค์นํ์ฌ ๊ธฐ์กด ๋ก๊ทธ ๊ฒฝ๋ก(/var/log/messages, secure, dmesg)๋ฅผ ๋ณต์ํ๋ ์ฐํ ๋ฐฉ์์ ์ ์ฉํ์ต๋๋ค.CloudFormation ํ ํ๋ฆฟ ์์ ์ผ๋ก ๋ ธ๋ ๋ถํ ์ ์๋ ์ค์ ๋๋ฏ๋ก, ๋ณ๋ ์๋ ์์ ์์ด ์ค์ต์ด ๊ฐ๋ฅํฉ๋๋ค. ๋ค๋ง ์ด ์กฐ์น๋ ์์ ๋์์ด๋ฉฐ ๊ทผ๋ณธ์ ์ธ ์กฐ์น๊ฐ ํ์ํฉ๋๋ค.ํฅํ aws-for-fluent-bit์์ journald(Systemd) ๋ก๊ทธ ์์ง ํ๋ฌ๊ทธ์ธ์ ๊ณต์ ์ง์ํ๋ฉด, ๊ทธ์ ๋ง๊ฒ ์ค์ต ๊ตฌ์ฑ์ ๋ณ๊ฒฝํ ์์ ์ ๋๋ค. ์์ธํ ๋ด์ฉ์ EKS Hands-On ํ์ด์ง์์๋ ํ์ธํ์ค ์ ์์ต๋๋ค.https://www.ongja.space/15b4c62d-36c3-801e-a757-d85a33ea1cba#1fe4c62d-36c3-808e-8261-c2a17c59bdf9 Fluent Bit ๋ก๊ทธ ์์ง ์ค๋ฅ ๊ด๋ จ ์ ๋ณด ๊ฐ์ฌ๋๋ฆฝ๋๋ค. ๐โโ
- 1
- 3
- 56
Q&A
fluentbit ๊ด๋ จ node ์ ๊ธฐ๋ณธ ๋ก๊ทธ ์ง๋ฌธ
์๋ ํ์ธ์. CloudNet@ ํ์ ๋๋ค. ์ด๋ฏธ ์ธ์งํ๊ณ ๊ณ์ ๋ถ๋ถ์ด์ง๋ง, Fluent Bit์ ๋ก๊ทธ ์์ง ๊ด๋ จํด ์ค๋ช ๋๋ฆฝ๋๋ค. ํ์ฌ Fluent Bit์ ํธ์คํธ ๋ก๊ทธ ์์ง ๊ฒฝ๋ก๋ ๊ฐ์์์ ์ค๋ช ๋๋ฆฐ ๊ฒ์ฒ๋ผ ์๋ ๊ฒฝ๋ก๋ฅผ ์ฐธ์กฐํ๊ณ ์์ต๋๋ค./var/log/dmesg, secure, messages ๋ฌธ์ ๋ EC2 ์ธ์คํด์ค์ OS๊ฐ Amazon Linux 2(AL2)์์ Amazon Linux 2023(AL2023)์ผ๋ก ๋ณ๊ฒฝ๋๋ฉด์, ๋ก๊ทธ ์ ์ฅ ๊ฒฝ๋ก๊ฐ ๋ฐ๋์๋ค๋ ์ ์ ๋๋ค.๊ทธ๋ก ์ธํด Fluent Bit์ ์ง์ ๋ ๊ฒฝ๋ก์ ์ค์ ๋ก๊ทธ ๊ฒฝ๋ก๊ฐ ์ผ์นํ์ง ์์ ์์ง์ด ์ ์์ ์ผ๋ก ์ด๋ฃจ์ด์ง์ง ์์ต๋๋ค. ์ฆ,Amazon Linux 2(AL2) ํ๊ฒฝ์์๋ ์ ์ ์์ง (OK)Amazon Linux 2023(AL2023) ํ๊ฒฝ์์๋ ์์ง ์คํจ (NOK) EKS Worker Node์ node-AMI-family๋ ๋ณ๋๋ก ์ง์ ํ์ง ์์ผ๋ฉด ๊ธฐ๋ณธ๊ฐ์ผ๋ก AL2๊ฐ ์ ์ฉ๋์ต๋๋ค.์ด ๊ฒฝ์ฐ Fluent Bit๊ณผ์ ์ฐ๋์ ๋ฌธ์ ๊ฐ ์๊ฒ ์ฃ .ํ์ง๋ง ์ต๊ทผ ๊ธฐ๋ณธ๊ฐ์ด AL2023์ผ๋ก ๋ณ๊ฒฝ๋์๋ค์.๊ทธ๋ก ์ธํด Fluent Bit์ ๊ธฐ์กด ๋ก๊ทธ ๊ฒฝ๋ก๊ฐ ๋ ์ด์ ์ ํจํ์ง ์๊ฒ ๋์์ต๋๋ค.๊ฒฐ๊ตญ ์ด๋ก ์ธํด ๋ก๊ทธ ์์ง์ด ์ค๋จ๋๋ ํ์์ด ๋ฐ์ํ๊ณ ์์ต๋๋ค. ์ฐธ๊ณ ๋ก ๋ง์๋๋ฆฌ๋ฉด,ํ์ฌ 4์ฅ์ ์ ์ธํ ๋ชจ๋ ๊ฐ์๋ AL2023 ๊ธฐ๋ฐ์ผ๋ก ์ ๋ฐ์ดํธ๊ฐ ์๋ฃ๋ ์ํ์ ๋๋ค.๋ค๋ง 4์ฅ์ Fluent Bit ๋ก๊ทธ ์์ง ๊ฒฝ๋ก ๋ฌธ์ ๋ก ์ธํด ์์๋ก AL2๋ฅผ ์ ์งํ๊ณ ์์ต๋๋ค.Fluent Bit์ AL2023 ํธํ ๋ฒ์ ์ด ๋์ค๊ธฐ๋ฅผ ๊ธฐ๋ค๋ฆฌ๋ ์ค์ด์๋๋ฐ, ํ์ด๋ฐ์ ์ด์๊ฐ ๋๋ฌ๋ ์ํฉ์ด๋ค์. [๊ฒํ ์ฌํญ]1. aws-for-FluentBit ์ต์ ๋ฒ์ ํ์ธ (AL2023 ํธํ ์ฌ๋ถ)2. EKS Worker Node์ node-AMI-family๋ฅผ ๋ช ์์ ์ผ๋ก AL2๋ก ์ง์ (๊ธฐ๋ณธ๊ฐ X)3. Fluent Bit์ ๋์ฒดํ ์ ์๋ ๋ค๋ฅธ ๋ก๊ทธ ์์ง ๋๊ตฌ ๊ฒํ ๋ด์ฉ์ ๊ฒํ ํ ํ ๋ค์ ์๋ด๋๋ฆฌ๊ฒ ์ต๋๋ค.์ผ๋จ ํด๋น ํํธ๋ ์ ์ ๊ฑด๋๋ฐ๊ณ , ๋ค๋ฅธ ๋ถ๋ถ ๋จผ์ ์งํํด ์ฃผ์๋ฉด ์ข๊ฒ ์ต๋๋ค. ๊ฐ์ฌํฉ๋๋ค.
- 1
- 3
- 56
Q&A
POD์ Security Group์ด ๋ถ์ฐฉ๋์ด์์ ๊ฒฝ์ฐ ํต์ ํ๋ฆ ๋ฌธ์
์๋ ํ์ธ์. CloudNet@ ํ์ ๋๋ค.ELB์์ Pod๋ก ์ ๋ฌ๋๋ ํธ๋ํฝ ํ๋ฆ์ ๋ค์ด๋ ํธ๋ก Pod SG๋ก ์ ๋ฌ๋๋ ๊ฒ์ด ์๋๋ผ, NodeGroup SG๊ฐ ํ ๋น๋ ๋ ธ๋ ENI๋ฅผ ๋ฐ๋์ ๊ฑฐ์ณ์ ์ต์ข ์ ์ผ๋ก Pod SG๊ฐ ์ ์ฉ๋ Pod ENI๋ก ์ ๋ฌ๋๋ ๊ตฌ์กฐ์ ๋๋ค.ELB๊ฐ ์์นํ IP ๋์ญ์ด ๋ ธ๋ ๊ทธ๋ฃน ์๋ธ๋ท ๋ด๋ผ ํ ์ง๋ผ๋, ๋คํธ์ํฌ ํธ๋ํฝ์ ๋จผ์ ํด๋น ๋ ธ๋์ ENI(์ฐ๊ฒฐ๋ NodeGroup SG)๋ฅผ ๊ฒฝ์ ํ์ฌ ์์ปค ๋ ธ๋๋ก ์ ์๋ฉ๋๋ค.์ดํ ENIConfig ์ค์ ์ ๋ฐ๋ผ Pod์ ํ ๋น๋ ๋ณ๋์ ENI(์ด๋ Pod SG ์ ์ฉ)๋ก ํจํท์ด ์ ๋ฌ๋์ด Pod์ ๋๋ฌํฉ๋๋ค.๊ฒฐ๊ตญ, ELB โ NodeGroup SG(๋ ธ๋ ENI) โ Pod SG(๋ณ๋ ENI) ์์ผ๋ก ๋ณด์ ๊ทธ๋ฃน ๊ท์น ์ ์ฑ ์ด ์ฐ์์ ์ผ๋ก ์ ์ฉ๋๋ฉฐ, ์ด ํ๋ฆ์ด EKS ๋ด ํต์ ํ๋ฆ์ ๋๋ค.๊ฐ์ฌํฉ๋๋ค.
- 2
- 3
- 55
Q&A
EKS SG ENI ์ง๋ฌธ
์๋ ํ์ธ์. CloudNet@ ํ์ ๋๋ค.๋ง์ํ์ ๊ฒ์ฒ๋ผ ๋ณด์ ๊ทธ๋ฃน์ ENI(Elastic Network Interface)์ ๋ถ์ฐฉ๋์ด ํธ๋ํฝ ์ ๊ทผ ์ ์ด๋ฅผ ์ํํฉ๋๋ค.ํ๋์ ENI์๋ ์ฌ๋ฌ ๊ฐ์ ๋ณด์ ๊ทธ๋ฃน์ ๋์์ ๋ถ์ผ ์ ์๊ณ , EKS์์ ์์ฑ๋ ๋ ธ๋์๋ ENI๊ฐ ์ฌ๋ฌ ๊ฐ ์กด์ฌํ ์ ์์ต๋๋ค.์ฐธ๊ณ ๋ก EKS ํด๋ฌ์คํฐ ์์ฑ ๋ฐฉ์(eksctl, ๊ด๋ฆฌ ์ฝ์, terraform ๋ฑ)์ด๋ ๊ตฌ์ฑ ๋ฐฉ์์ ๋ฐ๋ผ ๋ณด์ ๊ทธ๋ฃน ๋ฐฐ์น๋ ๋ฌ๋ผ์ง๋๋ค. Cluster shared node security group (์๋ ์ง์ )ํด๋ฌ์คํฐ์ ๋ชจ๋ ๋ ธ๋์ ๊ณตํต์ผ๋ก ๋ถ์ฐฉ๋๋ SG์ ๋๋ค. ์ฃผ ๋ชฉ์ ์ ๋ ธ๋ ๊ฐ ์ํธ ํต์ (Pod โ Pod, ๋ ธ๋ โ ๋ ธ๋)์ ๋ณด์ฅํ๋ ๊ฒ์ ๋๋ค.๊ฐ ๋ ธ๋์ ENI์๋ ์ด ๋ณด์ ๊ทธ๋ฃน์ด ์๋์ผ๋ก ํฌํจ๋ฉ๋๋ค. Node group security group (์ฌ์ฉ์ ์ง์ )eksctl์ด๋ ์ฝ์์์ ๋ ธ๋ ๊ทธ๋ฃน์ ๋ง๋ค ๋ ์ง์ ํ SG์ ๋๋ค.์ธ๋ถ ์ ๊ทผ ์ ์ด, ALB/NLB ์ฐ๊ฒฐ ๊ฐ์ ์ ๋ฌด ๋ชฉ์ ์ ํต์ ์ ์ด์ ํ์ฉ๋ฉ๋๋ค. ์ฆ, ์ง๋ฌธ ์ฃผ์ ๊ฒ์ฒ๋ผ ๋ ธ๋์๋ ์ฌ๋ฌ ๊ฐ์ ENI๊ฐ ๋ถ์ ์ ์๊ณ , ๊ฐ ENI์ ๋ค์์ ๋ณด์ ๊ทธ๋ฃน์ด ํจ๊ป ์ ์ฉ๋์ด ์์ต๋๋ค. ์ถ๊ฐ๋ก, ์์ ํ๋ผ์ด๋น ํด๋ฌ์คํฐ(Fully Private Cluster)๋ผ๋ฉด VPC Endpoint ENI์๋ Cluster Shared Node SG๋ฅผ ๋ถ์ฌ์ ๋ ธ๋์์ ํต์ ์ ์ ์ดํ ์ ์์ต๋๋ค. ๊ฐ์ฌํฉ๋๋ค.
- 0
- 2
- 42
Q&A
๊ฐ์ ์๋ฃ ?
์๋ ํ์ธ์. CloudNet@ ํ์ ๋๋ค.ํด๋น ๋ถ๋ถ ์์์ ํ์ธํด ๋ณด๋ ๋ณ๋์ ๊ทธ๋ฆผ์ด ์๋ ๊ฒ์ ์๋๋๋ค.์ค๋ช ํ๋ฉด์ ๋ง์ฐ์ค ํฌ์ธํธ๊ฐ ์ด๋ํ์ ๋ฟ์ด๋ค์.
- 0
- 2
- 50
Q&A
๋ฆฌ๋ด์ผ ์์
์๋ ํ์ธ์. CloudNet@ ํ์ ๋๋ค.๋ฆฌ๋ด์ผ ์๊ฐ๋ณด๋ค ์์ ์๊ฐ์ด ์์๋๋ค์.์ฐจ์ฃผ(7์) ์ค์ผ๋ก ์ ๋ก๋ ์๋ฃ๋ ๊ฑฐ ๊ฐ์ต๋๋ค.์ํด ๋ง์ ๋๋ ค์ใ
- 1
- 2
- 47
Q&A
terraform plan ์ค๋ฅ
์๋ ํ์ธ์. CloudNet@ ํ์ ๋๋ค.๋ด์ฉ์ ์ดํด๋ณด๋... Helm Provider ๋ฒ์ ์ด ์ฌ๋ผ๊ฐ๋ฉด์ ์๊ธฐ๋ ์ด์๋ก ๋ณด์ด๋ค์. Helm Provider v3.0.0 ๋ฆด๋ฆฌ์ฆ ๋ ธํธ๋ฅผ ๋ณด๋ฉด... ์๋์ ๊ฐ์ ๋ด์ฉ์ด ์์ต๋๋ค.kubernetes block removedInstead, use kubeconfig, config_path, or environment variables [ํด๊ฒฐ์ฑ ]required_providers์ helm provider ๋ฒ์ ๊ณ ์ terraform { required_providers { helm = { source = "hashicorp/helm" version = "~> 2.12.1" } } }ํด๋น ๋ธ๋ก์ ์ถ๊ฐํ๊ณ ์๋ terraform init -upgrade ์ํ terraform init -upgrade ํด๋น ์์ ์ํ ํ ํผ๋๋ฐฑ ์ฃผ์๋ฉด ๊ฐ์ฌํ๊ฒ ์ต๋๋ค.
- 1
- 2
- 250





