공부/데이터
-
[Kubernetes] 네임스페이스공부/데이터 2023. 3. 5. 11:14
Kubernetes는 컨테이너 오케스트레이션 시스템의 대표적인 예시입니다. 하지만, 대규모 애플리케이션을 운영하다보면, 수 많은 컨테이너와 그들의 리소스들을 한 곳에 두면, 서로 간의 충돌이나 오작동과 같이 다양한 문제가 발생할 수 있습니다. 이러한 문제를 해결하기 위해 Kubernetes는 네임스페이스 기능을 제공합니다. 네임스페이스는 리소스를 논리적으로 분리하고 격리시키는 개념입니다. Kubernetes에서 네임스페이스를 사용하면, 클러스터 내에서 리소스를 분리하고 다른 네임스페이스와 격리시킬 수 있습니다. 이를 통해, 서로 다른 팀이나 프로젝트 간에 리소스를 분리하여 충돌을 방지하고, 보안을 강화할 수 있습니다. 네임스페이스의 가장 큰 특징은 네임스페이스 내에서만 유효하다는 것입니다. 예를 들어, ..
-
[Kubernetes] 오브젝트 이름과 ID공부/데이터 2023. 3. 4. 16:38
각 클러스터 오브젝트는 해당 유형의 리소스에 대한 고유 이름과 UID를 가집니다. 예를 들어, 이름이 myapp-1234인 파드는 동일한 네임스페이스 내에서 하나만 존재할 수 있지만, 이름이 같은 파드와 디플로이먼트는 각각 존재할 수 있습니다. 사용자 정의 속성이 필요한 경우, 레이블과 어노테이션을 사용할 수 있습니다. 이름 /api/v1/pods/some-name은 클라이언트가 오브젝트를 가리키는 데 사용하는 문자열입니다. 한 종류(kind) 내에서는 한 이름이 하나의 오브젝트에만 지정될 수 있지만, 삭제된 오브젝트와 같은 이름을 새로운 오브젝트에 지정할 수 있습니다. 💡 물리적 호스트를 나타내는 노드와 같이 오브젝트가 물리적 엔티티를 나타내는 경우, 노드를 삭제한 후 다시 생성하지 않은 채 동일한 이..
-
[Kubernetes] 쿠버네티스 오브젝트 관리공부/데이터 2023. 3. 4. 16:21
kubectl 커맨드라인 툴은 쿠버네티스 오브젝트를 생성하고 관리하는 다양한 방법을 지원합니다. 이 문서는 여러 가지 접근법에 대한 개요를 제공합니다. 관리 기법 💡 쿠버네티스 오브젝트는 하나의 기법으로만 관리해야 합니다. 다른 기법을 혼용하면 예상치 못한 문제가 발생할 수 있습니다. 명령형 커맨드 kubectl 커맨드를 사용하여 클러스터 내의 활성 오브젝트를 직접 동작시킬 수 있습니다. 이 방법은 일회성 작업을 시작하거나 실행하는 데 추천됩니다. 그러나 이 방법은 활성 오브젝트에 직접적인 영향을 미치기 때문에, 이전 구성에 대한 이력을 제공하지 않습니다. 예를 들어, 아래와 같이 디플로이먼트 오브젝트를 생성하여 nginx 컨테이너의 인스턴스를 구동시킬 수 있습니다. kubectl create deplo..
-
[Kubernetes] 쿠버네티스 오브젝트 이해하기공부/데이터 2023. 3. 4. 15:55
쿠버네티스 오브젝트 이해하기 쿠버네티스는 컨테이너 오케스트레이션 시스템으로, 애플리케이션을 배포, 확장 및 관리하는 데 사용됩니다. 이를 위해 쿠버네티스는 다양한 오브젝트를 사용합니다. 쿠버네티스 오브젝트는 쿠버네티스 시스템의 영속성을 가지는 오브젝트입니다. 이 오브젝트를 이용하여 쿠버네티스는 클러스터의 상태를 표시합니다. 구체적으로는 다음과 같습니다. 어떤 컨테이너화된 애플리케이션이 동작 중인지 (그리고 어느 노드에서 동작 중인지) 애플리케이션이 이용할 수 있는 리소스 애플리케이션이 재구동, 업그레이드, 내고장성 등에 대해 어떻게 동작해야 하는지에 대한 정책 쿠버네티스 오브젝트는 하나의 의도를 담은 레코드입니다. 오브젝트를 생성하면, 쿠버네티스 시스템은 그 오브젝트 생성을 보장하기 위해 지속적으로 작동..
-
[Kubernetes] 쿠버네티스 API공부/데이터 2023. 3. 4. 15:27
쿠버네티스의 핵심은 API 서버입니다. API 서버는 HTTP API를 통해 최종 사용자, 클러스터의 다른 부분 및 외부 컴포넌트가 서로 통신할 수 있도록합니다. 쿠버네티스 API를 사용하면 API 오브젝트 (예 : 파드, 네임스페이스, 컨피그맵 및 이벤트)를 질의 및 조작할 수 있습니다. 즉, 쿠버네티스 API를 사용하면 클러스터 내의 노드, 파드, 서비스, 볼륨 등의 리소스를 관리할 수 있습니다. 뿐만 아니라, 쿠버네티스 API는 클러스터의 상태를 조회하고, 설정을 변경하고, 이벤트를 모니터링할 수 있는 다양한 기능을 제공합니다. 쿠버네티스 API는 RESTful API로 구현되어 있으며 대부분의 작업은 kubectl 또는 kubeadm과 같은 커맨드 라인 도구를 사용하여 수행 가능하지만 REST 호..
-
[Kubernetes] 쿠버네티스 컴포넌트공부/데이터 2023. 3. 1. 23:38
쿠버네티스 컴포넌트 쿠버네티스를 배포하면 클러스터가 생깁니다. 클러스터는 컨테이너화된 애플리케이션을 실행하는 워커 노드의 집합입니다. 워커 노드는 애플리케이션의 구성요소인 파드를 호스트하며, 컨트롤 플레인은 워커 노드와 클러스터 내 파드를 관리합니다. 프로덕션 환경에서는 일반적으로 컨트롤 플레인은 여러 컴퓨터에 걸쳐 실행되며, 클러스터는 여러 노드를 실행하여 내결함성과 고가용성을 제공합니다. 쿠버네티스 클러스터를 구성하는 다양한 컴포넌트 컨트롤 플레인 컴포넌트 💡 컨테이너의 라이프사이클을 정의, 배포, 관리하기 위한 API와 인터페이스들을 노출하는 컨테이너 오케스트레이션 레이어. 컨트롤 플레인 컴포넌트는 클러스터의 스케줄링과 같은 결정을 내리며, 클러스터 이벤트를 감지하고 반응합니다. 예를 들어, 디플로..
-
[Kubernetes] 쿠버네티스란공부/데이터 2023. 3. 1. 22:50
쿠버네티스란 쿠버네티스는 컨테이너화된 워크로드와 서비스를 관리하기 위한 이식성이 있고, 확장가능한 오픈소스 플랫폼입니다. 쿠버네티스는 선언적 구성과 자동화를 모두 용이하게 해줍니다. 쿠버네티스는 k8s라고도 표기합니다. k와 s 사이에 있는 8글자를 나타내는 약식 표기 쿠버네티스가 왜 유용한가 쿠버네티스의 유용함은 배포가 어떻게 변경되었는지를 설명을 하면 쉽게 와닿습니다. 배포 역사 전통적인 배포 초기 조직은 애플리케이션을 물리 서버에서 실행했습니다. 한 물리 서버에서 여러 애플리케이션의 리소스 한계를 정의할 방법이 없었기에, 리소스 할당의 문제가 발생했습니다. 예를 들어 물리 서버 하나에서 여러 애플리케이션을 실행하면 리소스 전부를 차지하는 애플리케이션 인스턴스가 있을 수 있어서 다른 애플리케이션의 성..
-
TF-IDF란?공부/데이터 2022. 8. 14. 18:28
TF-IDF (Term Frequency-Inverse Document Frequency)란 TF-IDF는 TF와 idf의 곱입니다. 2015년 한 조사에 따르면 전자도서관들이 텍스트 기반 추천시스템을 구축할 때 가장 많이쓰는 것이 이 tf-idf라고 하며, 그 비율은 83%에 이른다고 합니다. 검색엔진에서 관련성 순위를 매길때 자주 이용되며, 문서 요약 등에서도 자주 쓰인다고 합니다. 관련성 순위를 계산할 때 쓸수있는 가장 단순한 방법은 각 문서마다 이용자가 입력한 단어들의 tf-idf 값을 계산한 뒤 큰 순서대로 우선순위로 표시하는 것입니다. TF (Term Frenquency) 1개의 문서 안에서 특정 단어의 등장 빈도를 의미 문장을 단어로 나누고 전체 단어수가 얼마나 사용됐는지를 파악해 문서의 종..
-
EDA(Exploratory Data Analysis)란공부/데이터 2022. 7. 2. 23:05
EDA(Exploratory Data Analysis, 탐색적 데이터 분석)는데이터 분석 과정에 대한 개념으로 데이터를 분석하고 결과를 내는 과정에 있어서 지속적으로 해당 데이터에 대한 탐색과 이해를 기본으로 가져야 한다는 것을 의미합니다. EDA를 해야 하는 이유 데이터의 분포 및 값을 검토함으로써 데이터가 표현하는 현상을 더 잘 이해하고 데이터에 대한 잠재적인 문제를 발견할 수 있습니다. 이를 통해, 본격적인 분석에 들어가기에 앞서 데이터의 수집을 결정할 수 있습니다. 또한 다양한 각도에서 살펴보는 과정을 통해 문제 정의 단계에서 미쳐 발생하지 못했을 다양한 패턴을 발견하고 이를 바탕으로 기존의 가설을 수정하거나 새로운 가설을 세울 수 있습니다. EDA 과정 분석의 목적과 여기에 필요한 데이터 및 r..
-
prophet 모델공부/데이터 2022. 7. 2. 21:49
Prophet은 시계열 데이터를 모델링하기 위한 파이썬 또는 R 모듈입니다. 모델링 할 수 있다 라는 내용을 쉽게 설명하면 시계열 데이터 내 순차적 데이터를 모방할 수 있는 블랙박스를 구성할 수 있다라는 의미로 생각할 수 있습니다. 블랙박스는 경우에 따라서 수백, 수천만개의 파라미터를 포함하고 있습니다. 시계열 데이터를 예측(모델링)하는 방법론에는 머신러닝 방법론 그리고 고전적인 기법 ARIMA가 있습니다. Prophet은 머신러닝 기법은 아니며, ARIMA라고 하는 알고리즘 방법론을 응용하고 있습니다. ARIMA를 이용하면 계절마다의 반복성이나 여름철에 증가하는 전기 사용료를 모델링할 수 있습니다. Prophet 은 한층 더 진보적인 방법으로 트렌드와 주기적 특성뿐 아니라 예외적이고 이벤트와 같은 휴가..