반응형

전체 글 312

[CS 지식8.] 프로세스(Process)와 스레드(Thread)란?

Overview  프로세스와 스레드에 대해서 공부해보려고 한다.  "프로세스와 스레드의 차이점" 기술면접에서 가장 많이 묻는 질문 중 하나이다.프로세스와 스레드는 모두 서로 관련되어 있고 매우 유사하므로 둘 사이의 차이점을 이해하는 데 혼란을 야기한다. 프로세스와 스레드는 독립적인 실행 순서이지만 프로세스가 서로 다른 메모리 공간에서 실행되는 반면 동일한 프로세스의 스레드는 공유 메모리 공간에서 실행된다는 점에서 차이가 있다.​   📅 관련 글2023.01.13 - [CS 지식] - [CS 지식1.] 웹 브라우저의 동작원리2023.02.23 - [CS 지식] - [CS 지식2.] DNS의 동작원리(Domain Name System)2023.03.06 - [CS 지식] - [CS 지식3.] HTTP / ..

CS 지식 2023.12.27

Ansible 활용 - ansible-galaxy에 Role/Collection 업로드

Overview이 글에서는 Ansible Galaxy의 개념과 활용 방법, 그리고 Ansible Role과 Collection의 구조 및 사용법을 실습 예제와 함께 소개한다.Ansible Galaxy는 Ansible 커뮤니티에서 제작한 자동화 스크립트(Role, Collection)를 공유하고 재사용할 수 있는 공개 플랫폼이다.   복잡한 인프라 구성 작업을 보다 효율적이고 모듈화된 방식으로 관리할 수 있게 도와준다. 글의 흐름은 다음과 같다.Ansible 및 Ansible Galaxy의 소개Role과 Collection의 차이점과 디렉터리 구조Role/Collection 생성, 업로드, 삭제 방법Molecule을 통한 테스트 자동화 과정실제 실습을 통한 `ansible_kubectl_krew Role/..

GCP를 활용한 데이터 자동화(MongoDB, CloudSQL, GA, Dune)

Overview이 글에서는 Google Cloud Platform(GCP) 을 활용하여 데이터 파이프라인을 자동화하는 방법을 소개한다. 수작업으로 반복되는 데이터 수집과 정제, 시각화 과정을 GCP의 다양한 서비스들을 조합하여 완전 자동화된 데이터 워크플로우로 전환하는 과정을 실습 중심으로 설명한다. 자동화 대상은 MongoDB, CloudSQL, Google Analytics(GA), Dune 등의 외부 데이터 소스이며, 이를 BigQuery에 적재하고 최종적으로 Google Sheet에 시각화 데이터를 입력하는 과정을 구성한다.  주요 기술 스택은 다음과 같다.BigQuery: 데이터 웨어하우스로서 중심 역할 수행Cloud Functions: 서버리스 컴퓨팅으로 자동화 트리거 처리Cloud Sched..

GCP 2023.12.22

[CS 지식7.] Kubernetes 구성요소와 Pod 생성 방식이란?

OverviewKubernetes는 컨테이너 기반 애플리케이션을 자동으로 배포, 관리, 확장, 복구할 수 있도록 설계된 강력한 오픈소스 플랫폼이다.Docker와 같은 컨테이너 기술이 개별 애플리케이션의 실행과 패키징을 담당한다면, Kubernetes는 이러한 컨테이너들을 운영 환경에서 안정적으로 오케스트레이션하는 역할을 맡는다. Kubernetes는 Control Plane과 Node 컴포넌트로 나뉘며, 이 두 영역은 협력하여 사용자의 의도대로 애플리케이션이 클러스터 내에서 잘 배포되고 유지되도록 돕는다.또한, kubectl apply 명령을 통해 실제 Pod가 어떻게 생성되고 어떤 흐름을 통해 스케줄링되고 실행되는지를 이해하면, Kubernetes의 전체 아키텍처와 내부 동작 원리를 명확히 파악할 수 ..

CS 지식 2023.12.18

DOIK 1주차 - 도전과제1(Deploying Cassandra with a StatefulSet) + 도전과제4(kui)

Overview 1주차 도전 과제는 `Deploying Cassandra with a StatefulSet` 과  `kui 설치` 를 진행해 보았다.https://kubernetes.io/docs/tutorials/stateful-application/cassandra/       Cassandra란?Apache Cassandra는 많은 상용 서버에서 매우 많은 양의 구조화된 데이터를 관리하도록 설계된 무료 오픈 소스 분산 NoSQL 데이터베이스 시스템으로, 단일 장애 지점 없이 고가용성을 제공한다.​        Deploying Cassandra with a StatefulSetKubernetes에서 Apache Cassandra를 배포해보려고 한다. 데이터베이스인 Cassandra는 데이터 내구성을..

DOIK(Database Operator In Kubernetes) 1주차

Overview이번주는 CloudNet@ 스터디에서 진행하시는 DOIK(Database Operator In Kubernetes) 스터디 1주차이다.        EKS 원클릭 배포# YAML 파일 다운로드curl -O https://s3.ap-northeast-2.amazonaws.com/cloudformation.cloudneta.net/EKS/eks-oneclick.yaml# CloudFormation 스택 배포예시) aws cloudformation deploy --template-file eks-oneclick.yaml --stack-name myeks --parameter-overrides KeyName=somazkey SgIngressSshCidr=$(curl -s ipinfo.io/ip)/..

Flux란? / Flux + Kustomize

Overview이번 포스팅에서는 GitOps 도구 중 하나인 Flux에 대해 소개하고, Flux + Kustomize를 통합하여 Kubernetes 리소스를 어떻게 자동으로 관리하고 배포할 수 있는지를 실습과 함께 다뤄보겠다. 기존에는 ArgoCD를 중심으로 GitOps를 구성한 경험이 있다면, Flux는 또 다른 방식의 GitOps 흐름을 경험해볼 수 있는 좋은 선택이다. 특히 CLI 기반의 심플한 설치와 설정, 그리고 Kustomize와의 강력한 통합 덕분에 YAML 중심의 인프라 운영에 매우 적합하다. 이번 실습에서는 Nginx 리소스를 base, overlay 구조로 구성하고, 이를 Flux를 통해 Git에서 감지하여 자동으로 Kubernetes에 반영하는 과정까지 확인한다.  Git 저장소에 커..

T101(Terraform 101 Study) 6주차

Overview이번 주는 CloudNet@에서 진행 중인 Terraform 101 Study(T101) 6주차로, 실습 범위는 Terraform을 단순한 로컬 도구가 아닌, 팀 협업을 위한 Terraform Cloud(TFC) 중심으로 확장하는 과정이었다. 특히 TFC + GitHub 연동을 통해 실질적인 CI/CD 기반 IaC 운영 환경 구성을 경험하였고, 테라폼의 상태 파일을 안전하게 원격에서 관리하고, UI 기반 실행 및 승인 흐름까지 따라가보는 시간이 되었다.  이번 주 핵심 실습 주제Terraform Cloud(TFC) 기반 백엔드 설정 및 원격 실행Variable Set을 활용한 민감 정보 관리 및 UI 기반 변수 선언Execution Mode 차이점(Local vs Remote) 이해 및 활..

2. Kustomize + ArgoCD ApplicationSet

Overview  지난 포스팅에서는 Kustomize를 활용해 Kubernetes 리소스를 효율적으로 관리하는 방법을 정리했었다.2023.10.12 - [Container Orchestration/Kubernetes] - 1. Kustomize란?이번 시간에는 Kustomize를 ArgoCD와 함께 연동해 GitOps 기반의 자동 배포 환경을 구성해보려고 한다.ArgoCD는 Git 저장소에 선언된 매니페스트를 기준으로 쿠버네티스 클러스터 상태를 자동으로 동기화해주는 도구다. 여기에 Kustomize를 결합하면, 환경별 YAML 오버레이를 손쉽게 관리하면서도, GitOps 방식으로 배포를 자동화할 수 있다. 이번 실습에서는 ApplicationSet 리소스를 사용해 dev, qa, prod 환경에 대해 자..

1. Kustomize란?

Overview오늘은 Kubernetes 환경에서 매니페스트를 보다 구조적이고 유연하게 관리할 수 있는 도구인 Kustomize에 대해 알아겠다.기존에는 여러 환경(dev, qa, prod 등)에 맞춰 매니페스트를 복사하거나 수작업으로 관리하는 경우가 많았지만,Kustomize는 중복을 줄이고, 환경별 패치만 분리하여 구성할 수 있게 해주는 강력한 솔루션이다. 특히 base와 overlay 개념을 활용해 공통 설정은 재사용하고, 변경이 필요한 값만 덮어쓸 수 있어팀 단위의 운영환경 관리나 GitOps 환경 구성 시 매우 유용하다.  오늘 실습에서는 nginx 예제를 중심으로 Kustomize의 기본 구조, kustomization.yaml의 역할,환경별 빌드 및 배포 방식 등을 직접 다뤄보며 핵심 흐름을..

반응형