분류 전체보기

·DevOps
개요 학부나 클라우드 교육 과정에서 서버 운영 또는 클라우드 엔지니어 역할을 맡아 팀 프로젝트를 진행하면서 부하분산을 위해 ALB를 사용해보았지만, 단순히 과도한 트래픽을 분산하여 서버 과부하를 막고 시스템의 가용성을 높이기 위한 리소스 정도로 생각하여 사용했을 뿐, 실제 서버 측면에서의 부하와 성능이란 무엇인지에 대해 깊이 생각해본 적은 없었습니다. 그러나 클라우드 엔지니어로서 서버 및 인프라 운영과 관리 역량 또한 중요하다고 생각하여 "24시간 365일 서버/인프라를 지탱하는 기술"이라는 책을 읽던 중, "리눅스 단일 호스트 부하의 진상규명" 챕터에서 리눅스 서버의 부하와 성능, 그리고 튜닝에 대해 배운점이 많아 이를 요약하고 정리하며 깊이있게 이해해보고자 글을 작성하게 되었습니다. 단일 호스트의 ..
·DevOps
개요 Kernel of Linux 정리 - Introduction개요 리눅스의 커널과 파일 시스템에 대한 이해가 아직 많이 부족하다고 생각하여 공부할 책이나 강의를 찾던 중, Kernel of Linux 강의를 알게 되었습니다.  OLC CENTER olc.kr 그러나 현재 OLC CENTER에jsyeo.tistory.com 이전 강의 내용을 정리해보면, System Call이란 유저 모드의 프로세스가 운영체제의 커널이 제공하는 서비스(Kernel function)를 사용하기 위한 인터페이스이며, 구체적으로는 systemc call number와 parameter를 설정한 뒤 trap을 유발하고, kernel system call function이 반환하는 값을 받는 assembly instruction..
·DevOps
개요 리눅스의 커널과 파일 시스템에 대한 이해가 아직 많이 부족하다고 생각하여 공부할 책이나 강의를 찾던 중, Kernel of Linux 강의를 알게 되었습니다.  OLC CENTER olc.kr 그러나 현재 OLC CENTER에 화원가입이 불가능한 것 같아 강의를 직접 수강하지는 못했고, 해당 강의 내용을 정리한 글들을 보며 공부한 후 제가 이해한 내용에 대해 정리해보고자 글을 작성하였습니다. 참고한 강의노트 kernel 관련 jeongzero.oopy.io GitHub - Bookstore3/Linux-Kernel-Lecture-NoteContribute to Bookstore3/Linux-Kernel-Lecture-Note development by creating an account on Git..
·DevOps
OpenStack이란 OpenStack이란 분산된 컴퓨팅, 네트워크, 스토리지 리소스 풀을 관리하고, API나 대시보드를 통해 가상화된 리소스를 On-Demand로 사용할 수 있도록 하는 오픈소스 클라우드 컴퓨팅 플랫폼입니다. 가장 성공한 오픈소스SW 프로젝트 중 하나이며, 각각 다른 역할을 수행하는 여러 개의 서비스(OSS)로 나뉘어 구성되기 때문에 요구사항에 따라 필요한 서비스만을 선택하여 최적의 플랫폼을 구축할 수 있습니다. 리눅스와 가상화, 클라우드에 대해 관심을 갖고 학습하는 과정에서 자연스럽게 오픈스택에 대해 관심이 생기게 되었고, 실제로 클라우드 시스템이 어떤 과정과 원리로 구축되는지 이해하고 그 과정에서 리눅스와 가상화, 네트워크 등에 대한 이해를 높이고자 OpenStack을 이용해 로컬 ..
·DevOps
Pod란 Pod는 쿠버네티스에서 생성하고 관리할 수 있는 배포 가능한 가장 작은 컴퓨팅 단위로, 쿠버네티스 클러스터 노드에서 컨테이너로 실행되는 하나 이상의 OCI 이미지이며 이러한 컨테이너 그룹은 스토리지 및 네트워크를 공유합니다.  다시 말해, Pod는 리눅스 네임스페이스와 cgroup을 격리하여 애플리케이션 별로 일종의 "논리 호스트"를 모델링하고, 추가적으로 하위 격리가 적용된 하나 이상의 애플리케이션 컨테이너가 이러한 논리 호스트에 포함되어 실행됩니다.  즉, Pod는 공유 네임스페이스와 공유 파일시스템 볼륨이 있는 컨테이너들의 집합과 비슷하다고 볼 수 있습니다. Pod의 생성과 실행 과정 먼저 사용자가 kubectl을 사용해 Pod를 생성하면 API Server가 요청을 검증한 후 etcd에 ..
·DevOps
개요 AWS 인프라 구축 프로젝트를 진행할 때, 약 1주일 간 모니터링 시스템 없이 EKS를 운영해야 하는 상황을 겪으면서 모니터링 시스템의 필요성을 체감할 수 있었습니다.  당시 모니터링 시스템 구축을 담당하지 않았고 DataDog을 모니터링 도구로 사용했기 때문에, 많은 회사에서 사용하고 있고 kubernetes의 사실상 표준 모니터링 시스템으로 사용되는 Prometheus와 Grafana를 사용해볼 기회가 없었습니다.  따라서 이번 기회에 Prometheus와 Grafana를 학습하고 이를 사용해 kubeadm으로 로컬 환경에 구축한 클러스터의 모니터링 환경을 구축한 방법을 작성해보려 합니다. Prometheus Prometheus는 SoundCloud에서 개발된 오픈소스 시스템 모니터링 및 알림 ..
·DevOps
개요 GitOps는 Git Repository를 이용해 인프라 및 애플리케이션 구성을 관리하고 프로비저닝 프로세스를 자동화하는 방법을 의미합니다.  구축할 GitOps 워크플로우는 다음과 같습니다. 1. 개발자가 코드를 수정한 후, Application Code를 관리하는 GitHub Repository에 변경 사항을 push합니다.2. GitHub Repository의 main 브랜치에 push event가 발생하면 GitHub Action이 트리거됩니다.3. GitHub Action이 코드를 이미지로 빌드하여 Docker Hub에 push합니다.4. GitHub Action이 K8s manifest를 관리하는 GitHub Repository의 Rollout.yaml 파일의 컨테이너 이미지 태그를 수..
·DevOps
개요 Installing kubeadmThis page shows how to install the kubeadm toolbox. For information on how to create a cluster with kubeadm once you have performed this installation process, see the Creating a cluster with kubeadm page. This installation guide is for Kubernetes v1.31. Ifkubernetes.io 유데미의 Certified Kubernetes Administrator (CKA) with Practice Tests 강의 중, 'Demo - Deployment with Kubeadm' 강의..
jsyeo
'분류 전체보기' 카테고리의 글 목록