IT

    [AWS] IRSA 란? (IAM Roles for Service Accounts)

    Intro AWS에는 IAM(Identity and Access Management)이라는 강력한(?) RABAC기반 접근관리 서비스가 있습니다. 이 IAM의 Role(역할)을 통해서 리소스와 리소스간 접근 관리도 할 수 있고, User(사용자)에게 적절한 접근 정책을 줘서 유저의 접근 관리도 할 두 있습니다. 일반적으로 EC2에 IAM Role을 할당하여 EC2 위에서 동작하는 application이 AWS SDK를 사용하거나 AWS CLI를 사용할때 EC2에 부여된 IAM Role의 권한으로 S3나 Secretmanager와 같은 리소스에 접근할 수 있도록 사용할수 있죠. 그러면 EKS Cluster안에서 동작하는 kubernetes Pod에는 어떻게 IAM Role을 줄 수 있을까요? 오늘 이야기할..

    [DevOps] helm template 다루기

    Intro kubernetes를 운영하는 엔지니어들은 helm 사용이 필수불가피 합니다. 일부 helm template을 커스터마이징하여 사용하게되는 경우도 빈번하게 됩니다. 따라서 helm template을 잘 다룰 수 있어야하겠죠. hlem은 리소스파일들을 템플릿화하기위해 go template을 사용합니다. 오늘은 go template으로 구성되어있는 helm에서 가장 많이 사용하는 문법에 대해 정리해보도록 하겠습니다. 공백(whitespace) 제거 {{- : 줄바꿈 포함한 왼쪽 공백 모두 제거 -}} : 줄바꿈 포함한 오른쪽 공백 모두 제거 whitespace 제거 구문 사용하지 않은 렌더링 예시 myvalue: "Hello World" drink: {{ .Values.favorite.drink ..

    [DevOps] cilium ipam cidr 변경하기 (feat. AWS EKS)

    intro AWS EKS는 기본적으로 VPC CNI를 사용하도록 되어있습니다. 하지만 이는 VPC의 IP가 할당된다는 치명적인 단점이 있죠. 물론 우회해서 별도의 IP대역을 붙힐 수도 있겠지만 우리에게는 아주 강력한 CNI 솔루션 cilium이 있습니다. 오늘은 cilium ipam cidr 변경하는 방법에 대해 알아 보도록 하겠습니다. IPAM 이란? 우선 IPAM은 IP Address Management의 약자로 IP를 할당하고 관리해주는 기능을 말합니다. cilium이 ip를 할당하는 방법에는 여러가지 타입이 있습니다. default 모드인 cluster-pool 모드를 보도록 하겠습니다. https://docs.cilium.io/en/stable/concepts/networking/ipam/#ad..

    [DevOps] Cilium 이란?

    Cilium은 무엇인가? cillim이란? Cilium을 간단히 설명하면 BPF (Berkeley Packet Filter) 를 기반으로 Pod Network를 구축하는 CNI Plugin입니다. 좀더 자세하게 공식문서에서는 Cilium을 아래와 같이 설명하고 있습니다. Cilium은 Linux 컨테이너 관리 플랫폼을(Docker, Kubernetes) 사용하여 배포된 애플리케이션 서비스 간 네트워크 연결을 보호하는 오픈 소스 소프트웨어입니다. Cilium의 기반에는 eBPF라는 Linux 커널 기술이 사용되었습니다. 이를 통해 Linux 자체에 강력한 보안 가시성(Security visibility)과 제어 로직을 동적으로 입력할 수 있습니다. eBPF는 Linux 커널 내에서 실행되기 때문에 애플리케..