CloudNet@

    [3주차 - Jenkins CI/ArgoCD + K8S] CI/CD 스터디 (24.12.15)

    [3주차 - Jenkins CI/ArgoCD + K8S] CI/CD 스터디 (24.12.15)

    들어가며안녕하세요 여러분, 이번 포스팅은 CloudNet@ 커뮤니티에서 주최하는 CI/CD 스터디 3주 차 주제인 "Jenkins CI/ArgoCD + K8S"에 대해서 정리한 내용입니다. 실습환경 구성 이번 주차 스터디에서는 mac OS 기반 docker 환경에서 레포지토리인 Gogs, CI/CD 파이프라인 도구인 Jenkins, 그리고 kind 기반 kubernetes 클러스터를 구성하여 실습을 진행했습니다.실습 컨테이너 설정# 작업 디렉토리 생성 후 이동mkdir cicd-labscd cicd-labs# cat docker-compose.yamlservices: jenkins: container_name: jenkins image: jenkins/jenkins restart: ..

    [2주차 - Github Action] CI/CD 스터디 (24.12.08)

    [2주차 - Github Action] CI/CD 스터디 (24.12.08)

    들어가며안녕하세요 여러분,요즘 길거리에 캐럴이랑 트리가 많이 보여요! 연말 느낌이 물씬 나네요.한 해를 마무리하면서, 스터디도 열심히 하고 있는 Devlos입니다. 이번 포스팅은 CloudNet@ 커뮤니티에서 주최하는 CI/CD 스터디 2주 차 주제인 "Github Action"에 대해서 정리한 내용입니다. 아참! 지난주의 성과는.. 제가 올해 목표였던 kubestronaut가 되었습니다! (조만간 해당 내용에 대한 포스팅도 추가할 예정입니다.)Github Action 개념Github Action은 빌드, 테스트 및 배포 파이프라인을 자동화할 수 있는 CI/CD 플랫폼입니다.공식 설명서 - 링크 GitHub Actions 설명서 - GitHub DocsGitHub Actions를 사용하여 리포지토리에서..

    [1주차] CI/CD 스터디 (24.12.01)

    [1주차] CI/CD 스터디 (24.12.01)

    들어가며안녕하세요 여러분 벌써 12월이네요!한 해 마무리되어 가면서 조금 더 학습 성취를 이루고자 가시다 님의 스터디에 참여했답니다 :,) 이번 포스팅은 CloudNet@ 커뮤니티에서 주최하는 CI/CD 스터디 1주 차 주제인 "Jenkins CI/CD + Docker"에 대해서 정리한 내용입니다. 실습환경 구축실습 환경은 Mac OS 기준 docker와 vscode 위에서 진행하였습니다.Docker Desktop (brew install --cask docker)VSCODE (Docker 플러그인 확장) 1. 컨테이너를 활용한 애플리케이션 개발1. 컴파일 없는 애플리케이션을 컨테이너로 배포# 코드 작성mkdir 1.1 && cd 1.1echo "print ('Hello Docker')" > hello..

    [9주차 - AWS EKS:  VPC CNI] KANS 스터디 (24.10.27)

    [9주차 - AWS EKS: VPC CNI] KANS 스터디 (24.10.27)

    들어가며이번 포스팅은 CloudNet@ 커뮤니티에서 주최하는 KANS 스터디 9주 차 주제인 "AWS EKS : VPC CNI"에 대해서 정리한 내용입니다.  실습환경 설치실습환경은 VPC 1개(퍼블릭 서브넷 3개, 프라이빗 서브넷 3개), EKS 클러스터(Control Plane), 관리형 노드 그룹(EC2 3대), Add-on으로 구성되어 있습니다.# YAML 파일 다운로드curl -O https://s3.ap-northeast-2.amazonaws.com/cloudformation.cloudneta.net/kans/eks-oneclick.yaml# CloudFormation 스택 배포aws cloudformation deploy --template-file eks-oneclick.yaml --sta..

    [8주차 - Cilium CNI] KANS 스터디 (24.10.20)

    [8주차 - Cilium CNI] KANS 스터디 (24.10.20)

    들어가며이번 포스팅은 CloudNet@ 커뮤니티에서 주최하는 KANS 스터디 8주 차 주제인 "Cilium CNI"에 대해서 정리한 내용입니다. 실습환경 구성이번 주차 실습은 지난 스터디와 마찬가지로 VPC 1개(퍼블릭 서브넷 2개), Kubernetes 클러스터 구성용 EC2 인스턴스 3대 (Ubuntu 22.04 LTS, t3.xlarge - vCPU 4 , Mem 16) , testpc 1대 (t3.small)로 구성됩니다.  # YAML 파일 다운로드curl -O https://s3.ap-northeast-2.amazonaws.com/cloudformation.cloudneta.net/kans/kans-8w.yaml# CloudFormation 스택 배포# aws cloudformation dep..

    [7주차 - Service Mesh(Istio)] KANS 스터디 (24.10.13)

    [7주차 - Service Mesh(Istio)] KANS 스터디 (24.10.13)

    들어가며이번 포스팅은 CloudNet@ 커뮤니티에서 주최하는 KANS 스터디 7주 차 주제인 "Service Mesh: Istio-Mode(Sidecar, Ambient)"에 대해서 정리한 내용입니다. 실습환경 구성이번 주차 실습은 VPC 1개(퍼블릭 서브넷 2개), Kubernetes 클러스터 구성용 EC2 인스턴스 3대 (Ubuntu 22.04 LTS, t3.xlarge - vCPU 4 , Mem 16) , 외부 PC 통신 및 envoy 실습용 testpc 1대 (t3.small)로 구성됩니다.  curl -O https://s3.ap-northeast-2.amazonaws.com/cloudformation.cloudneta.net/kans/kans-7w.yaml# CloudFormation 스택 배..

    [6주차 - Ingress & Gateway API] KANS 스터디 (24.10.06)

    [6주차 - Ingress & Gateway API] KANS 스터디 (24.10.06)

    들어가며이번 포스팅은 CloudNet@ 커뮤니티에서 주최하는 KANS 스터디 6주 차 주제인 "Ingress & Gateway API"에 대해서 정리한 내용입니다.* Ingress 실습에서 사용하는 k3s(1.30.5 version)는 기본으로 flannel CNI(Container Network Interface)를 사용하는 경량화된 쿠버네티스입니다.Kubernetes - IngressIngress는 클러스터 외부에서 HTTP(s) 통신 요청을 받아서 처리해주는 Layer 7 계층 동작을 합니다. 인그레스는 경로(path) 기반 또는 호스트 기반 라우팅을 통해 HTTP(s) 요청 트래픽을 부하분산하여 내부의 파드로 전달하는 역할을 합니다. 또한 Canary 배포를 자체적으로 제공하여 유연한 업데이트 전..

    [5주차 - Service : LoadBalancer] KANS 스터디 (24.09.29)

    [5주차 - Service : LoadBalancer] KANS 스터디 (24.09.29)

    들어가며이번 포스팅은 CloudNet@ 커뮤니티에서 주최하는 KANS 스터디 5주 차 주제인 "Service-LoadBalancer Type"에 대해서 정리한 내용입니다.  k8s Service - LoadBalancer TypeLoadBalancer Type의 서비스는 클러스터 외부로 서비스를 노출시키기 위해 사용합니다. 주로 클라우드 환경에서 사용되며, 클라우드 제공업체들의 로드 밸런서 기능을 활용하여 외부 트래픽을 클러스터내의 특정 서비스로 라우팅하는 형태로 사용합니다. Loadbalancer는 클라우드 제공업체의 네이티브 로드 밸런서를 사용하므로 AWS와 같은 클라우드 환경에서 잘 동작합니다. 그렇기 때문에 온프레미스 환경에서는 소프트웨어 로드밸런서 또는 물리 로드밸런서와 같은 솔루션을 사용해아합..

    [4주차 - Service : ClusterIP, NodePort] KANS 스터디 (24.09.22)

    [4주차 - Service : ClusterIP, NodePort] KANS 스터디 (24.09.22)

    들어가며이번 포스팅은 CloudNet@ 커뮤니티에서 주최하는 KANS 스터디 4주 차 주제인 "Service"에 대해서 정리한 내용입니다. 본문에서 설명드리겠지만, Service는 4가지 유형이 있습니다.이번 주차에서는 그중에서 제일 기초인 ClusterIP와 NodePort에 대해서 스터디를 진행하였습니다.  실습 환경 K8S v1.31.0 , CNI(Kindnet, Direct Routing mode) , IPTABLES proxy mode- 노드(실제로는 컨테이너) 네트워크 대역 : 172.18.0.0/16- 파드 사용 네트워크 대역 : 10.10.0.0/16 ⇒ 각각 10.10.1.0/24, 10.10.2.0/24, 10.10.3.0/24, 10.10.4.0/24- 서비스 사용 네트워크 대역 : ..

    [3주차(2/2) - k8s Calico CNI mode & 운영] KANS 스터디 (24.09.08)

    [3주차(2/2) - k8s Calico CNI mode & 운영] KANS 스터디 (24.09.08)

    들어가며이번 포스팅은 CloudNet@ 커뮤니티에서 주최하는 KANS 스터디 3주 차 주제인 "Calico CNI"에 대해서 정리한 내용입니다. (스터디 내용이 많아 "k8s Calico CNI(1)"와 "k8s Calico CNI mode & 운영(2)"으로 포스팅을 나누어 작성합니다.)Calico Network ModeCalico의 network mode는 다음과 같이 4가지 타입이 있습니다. 이전 실습에서 확인한 모드는 IPIP 모드이고, 이 외에도 3개의 모드가 더 있습니다. IPIP 모드는 tunl과 IPIP 패킷 해석을 해야 하는 과정으로 인해 오버헤드가 발생하기 때문에 Direct 모드보다 퍼포먼스가 적습니다.VXLAN 모드는 IPIP와 다르게 UDP 기반으로 터널링 통신을 한다는 점이 다릅..

    [3주차(1/2) - k8s Calico CNI] KANS 스터디 (24.09.08)

    [3주차(1/2) - k8s Calico CNI] KANS 스터디 (24.09.08)

    들어가며이번 포스팅은 CloudNet@ 커뮤니티에서 주최하는 KANS 스터디 3주 차 주제인 "Calico CNI"에 대해서 정리한 내용입니다. (스터디 내용이 많아 "k8s Calico CNI(1)"와 "k8s Calico CNI mode & 운영(2)"으로 포스팅을 나누어 작성합니다.)Calico란?Calico는 Kubernetes 워크로드와  Kubernetes가 아닌 오픈스택 또는 레거시 워크로드에서 원활하고 안전하게 통신할 수 있도록 하는 네트워킹 및 보안 솔루션입니다. Calico 실습환경 구축 AWS에서 10.x 대역과 20.x대역에 대한 라우터를 내부적으로 처리하는 구성입니다.(서울리전에 테스트 중인 시스템이 있어, ap-northeast-3 [오사카]로 변경하여 진행했습니다.)aws cl..

    [2주차(2/2) - Flannel CNI] KANS 스터디 (24.09.01)

    [2주차(2/2) - Flannel CNI] KANS 스터디 (24.09.01)

    들어가며 이번 포스팅은 CloudNet@ 커뮤니티에서 주최하는 KANS 스터디 2주 차 주제인 "K8S Flannel CNI & PAUSE"에 대해서 정리한 내용입니다. (스터디 내용이 많아 "K8S Pause container(1)"와 "K8S Flannel CNI(2)"로 포스팅을 나누어 작성합니다.) [2주차(1/2) - K8S Pause container] KANS 스터디 (24.09.01)들어가며 이번 포스팅은 CloudNet@ 커뮤니티에서 주최하는 KANS 스터디 2주 차 주제인 "K8S Flannel CNI & PAUSE"에 대해서 정리한 내용입니다. (스터디 내용이 많아 "K8S Pause container(1)"와 "K8S Flannel CNI(2)devlos.tistory.com  CN..

    [2주차(1/2) - K8S Pause container] KANS 스터디 (24.09.01)

    [2주차(1/2) - K8S Pause container] KANS 스터디 (24.09.01)

    들어가며 이번 포스팅은 CloudNet@ 커뮤니티에서 주최하는 KANS 스터디 2주 차 주제인 "K8S Flannel CNI & PAUSE"에 대해서 정리한 내용입니다. (스터디 내용이 많아 "K8S Pause container(1)"와 "K8S Flannel CNI(2)"로 포스팅을 나누어 작성합니다.)  쿠버네티스 딥다이브Docker의 컨테이너 실행 관련 계층 구조 주요 컴포넌트를 정리하자면 다음과 같습니다. Docker Client: 사용자는 Docker 클라이언트를 통해 Docker와 상호작용하며, Docker 데몬과 Socket/API를 통해 통신합니다.Docker daemon: Docker daemon(dockerd)은 Docker API 요청을 처리하고 이미지, 컨테이너, 네트워크, 볼륨과 ..

    [1주차(1/2) - 도커 컨테이너 격리] KANS 스터디 (24.08.25)

    [1주차(1/2) - 도커 컨테이너 격리] KANS 스터디 (24.08.25)

    들어가며이번 포스팅은 CloudNet@ 커뮤니티에서 주최하는 KANS 스터디 1주 차 주제인 "컨테이너 격리 & 네트워크 및 보안"에 대해서 정리한 내용입니다. (스터디 내용이 많아 "도커 컨테이너 격리"와 컨테이너 네트워크 & IPTables로 포스팅을 나누어 작성합니다.) 실습환경 구성#가시다님의 실습환경 세팅 정보curl -O https://s3.ap-northeast-2.amazonaws.com/cloudformation.cloudneta.net/kans/kans-1w.yamlaws cloudformation deploy --template-file kans-1w.yaml --stack-name mylab --parameter-overrides KeyName=devlos SgIngressSshCi..

    [8주차 - OpenTofu ] T101 4기 스터디 (24.07.28)

    [8주차 - OpenTofu ] T101 4기 스터디 (24.07.28)

    FINAL 들어가며이번 스터디에서는 Terraform을 오픈소스 형태로 사용할 수 있는 OpenTofu에 대해 학습했습니다.IaC의 핵심 언어인 Terraform이 BUSL 형태로 변경되어서, 고민하고 있던 차에 스터디에서 새로운 해결책을 발견한 것 같아 기뻤습니다.  OpenTofu란?작년 8월 Terrfarom 라이선스가 MPL(Mozilla Public License)에서 BUSL(Business Source License)로 변경되며, 오픈소스 버전인 OpenTofu가 개발되었습니다. OpenTofu에서 HashiCorp가 2023년 8월 10일 Terraform의 라이선스를 오픈 소스 라이선스(MPL)에서 비오픈 소스 라이선스인 Business Source License(BUSL)로 전환한 것에..

    [7주차 - 테라폼으로 AWS EKS 배포 ] T101 4기 스터디 (24.07.21)

    [7주차 - 테라폼으로 AWS EKS 배포 ] T101 4기 스터디 (24.07.21)

    들어가며이번 스터디에서는 Terraform을 통해 AWS EKS를 배포하는 방법에 대해 공부했습니다.  이전 AWES 스터디에서는 EKS에 대해 깊게 학습했지만, Terraform과 각각 스터디를 진행하여 구축하기가 쉽지 않았습니다.하지만 두 가지 기술 모두 향후 회사에서 유용하게 사용될 기술이라,  스터디를 통해 조금이라도 더 이해해 보고 사용하자는 취지로 집중하여 스터디에 임했습니다. 역시.. 유용한 Best Practice들을 많이 체험할 수 있었습니다.  Amazon EKS Blueprints for Terraform이 프로젝트는 Terraform으로 구현한 EKS 클러스터 패턴 컬렉션을 통해 개발자들이 빠르게 콘셉트를 이해할 수 있도록 도와 고객이 Amazon EKS를 쉽게 도입할 수 있게 하는..

    [6주차 - Well-Architected 방식으로 워크로드를 안전하게 마이그레이션 및 현대화하기 Workshop ] T101 4기 스터디 (24.07.14)

    [6주차 - Well-Architected 방식으로 워크로드를 안전하게 마이그레이션 및 현대화하기 Workshop ] T101 4기 스터디 (24.07.14)

    들어가며이번 스터디는 HashiCorp 사의 엔지니어이자, T101 3기 스터디 리딩을 해주신 유형욱 님께서 진행하는 특별 세션이었습니다. AWS Workshop Event를 통해 진행되었으며, 사전에 참여자들의 정보를 통해 직접 한 땀 한 땀 실습을 기획하고 배포를 해주셨습니다.  ... Shout out, 형욱 님! 지난 스터디에서 TFC를 통해 이것저것 해보았기 때문에, 복기(?) 차원에서 들어봐야겠다고 생각했는데 신세계를 맛본 기분이었습니다. Terraform을 이용하여 거버넌스 관리까지 가능하다는 것을 느끼며, IaC 기술의 필요성을 다시 한번 절실히 깨닫게 되었습니다. 형욱 님께서 빠르게 워크숍을 진행할 수 있도록, 여러 과정을 자동화해 주셔서 많은 관점에 대한 실습을 빠르게 진행하며 콘셉트를..

    [5주차 - 모듈 & Runner] T101 4기 스터디 (24.07.07)

    [5주차 - 모듈 & Runner] T101 4기 스터디 (24.07.07)

    들어가며* 본 스터디의 자료는 아래의 책을 기반으로 합니다.테라폼으로 시작하는 IaC | 김민수, 김재준, 이규석, 이유종 | 링크 테라폼으로 시작하는 IaC | 김민수 - 교보문고테라폼으로 시작하는 IaC | 현업에서 요구하는 진짜 IaC 사용법 테라폼으로 배우는 인프라 운영의 모든 것IaC는 효율적인 데브옵스와 클라우드 자동화 구축을 위해 꼭 필요한 기술로 각광받고 있product.kyobobook.co.kr 이번 주차에서는 테라폼 모듈과 Runner에 대해 학습했습니다. 지난 스터디와 다르게 Runner 파트에서는 Atlantis라는 도구를 이용하여 GitOps처럼 comment를 통해 repository에 저장된 테라폼 코드를 기반으로 프로비저닝 하는 법을 배웠는데 너무 신기했습니다. 여러 명과 ..

    [4주차 - Provider & State] T101 4기 스터디 (24.06.30)

    [4주차 - Provider & State] T101 4기 스터디 (24.06.30)

    들어가며* 본 스터디의 자료는 아래의 책을 기반으로 합니다.테라폼으로 시작하는 IaC | 김민수, 김재준, 이규석, 이유종 | 링크 테라폼으로 시작하는 IaC | 김민수 - 교보문고테라폼으로 시작하는 IaC | 현업에서 요구하는 진짜 IaC 사용법 테라폼으로 배우는 인프라 운영의 모든 것IaC는 효율적인 데브옵스와 클라우드 자동화 구축을 위해 꼭 필요한 기술로 각광받고 있product.kyobobook.co.kr  이번 주차에는 프로바이더와, 테라폼 스테이트 관리 기법, 테라폼 백엔드, 그리고 워크스페이스 관리 방법에 대해서 학습했습니다. 블로그를 작성하면서 사내에서 스터디를 같이 하시는 분들과 과제 진도 이야기도 하고, 테라폼 적용에 대해서 편하게 이야기하는 시간을 가졌었습니다. 아무래도 작년에는 혼자..

    [3주차 - 기본사용#3] T101 4기 스터디 (24.06.23)

    [3주차 - 기본사용#3] T101 4기 스터디 (24.06.23)

    들어가며* 본 스터디의 자료는 아래의 책을 기반으로 합니다.테라폼으로 시작하는 IaC | 김민수, 김재준, 이규석, 이유종 | 링크 테라폼으로 시작하는 IaC | 김민수 - 교보문고테라폼으로 시작하는 IaC | 현업에서 요구하는 진짜 IaC 사용법 테라폼으로 배우는 인프라 운영의 모든 것IaC는 효율적인 데브옵스와 클라우드 자동화 구축을 위해 꼭 필요한 기술로 각광받고 있product.kyobobook.co.kr 이번 주차에서는 테라폼 기본 사용법 3번째 스터디에서 다룬 반복문, 조건문, 함수, 프로비저너, null_resource와 terraform_data에 대해 배운 내용을 정리합니다.  반복문 for_each반복문 for_each는 선언된 key값 개수만큼 리소스를 생성하는 것으로 count와 비..